
敏捷开发Scrum简要理解
发布于: 2025-2-17
更新于: 2025-2-17
未收录
文章字数: 1730
阅读时间: 4 分钟
阅读量:
敏捷开发Scrum
B站视频 敏捷开发介绍
传统瀑布流开发
- 传统的瀑布流开发通常需要很长的时间来进行规划,然后研发,产品测试,最终发布,整体流程例如Plan→Build→Test→Review→Deploy,但是整个周期非常的长,当做好某个部分的时候,产品也许就不在适合当前的市场环境。
- 且瀑布流开发是非常线性的,如果你在Plan中出现了一些问题,或者没有完全理解Plan中的某个部分,而去进行Build,那么在完成Build后,在Test中就会出错,负责Test的人会去拷问Build的人,Build的人找到问题又回去找Plan的人,然后重新进行Plan,在进行Build,在Test。甚至在Deploy中发现问题最终还要回到Plan中,然后重新整个流程。这严重影响开发的时间。
敏捷开发Scrum
- Scrum将整个开发项目分成的一个一个小的Sprint部分,每个部分都有例如以下流程:Plan→Build→Test→Review。我们最初部分是开发一个最小的可行项目,即确保项目的主要功能能够实现,然后在后面的部分里,每次都添加一些功能,直到最后出现可发布的完整的版本。敏捷开发的每个部分大概只会持续1~3周,所以相较于传统瀑布流开发,敏捷开发能减少开发周期,在不同的开发部分能及时适应市场变化,进行特殊调整。
Scrum中主要有三个重要角色
- 产品经理
- 主要负责确定产品的特性,分析项目的需求,找出项目的亮点,
- 项目经理
- 是整个项目的主要负责人,负责帮助团队尽可能地完成工作,组织日常会议,和保障其他工作。
- 开发成员
- 包括但不限开发人员,测试人员以及其他帮助开发的成员,主要负责产品的研发
三种可视化文档
- Product Backlog产品需求列表
- 产品经理从众多的用户故事中筛选出优先项,并把它们列入产品开发列表中,需求列表会随着每次的Sprint迭代和更改
- 用户故事:是一种表达产品需求的语言格式 [作为一名___用户,我需要____功能,所以能够____]
- 产品经理通过用户故事来了解需求的细节,为团队合理的指定任务的优先级
- Sprint Backlog代办事项
- 最优先的用户故事将进入Sprint代办事项,剩下的继续评估优先级,交到下次的Sprint中
- Burndown Chart燃尽图
- 用以展示整个Sprint代办列表的进度,当燃尽图曲线接近于0时,也就意味着这次Sprint即将完工
三种不同的会议
- Sprint计划会议
- 是所有成员都要进行的会议,用于讨论用户故事并估算任务量
- Daily Scrum每日例会
- 整个团队简述工作进度,并且讨论是否有任务需要搁置或是加派人手
- Sprint Review 回顾会议
- 当每个Sprint接近尾声时,我们要进行回顾会议,这是整个研发团队会向产品经理演示开发好的功能,然后整个团队讨论是否需要改进的地方
敏捷开发的大致流程
- 产品经理把那些需要上线的产品特性做成产品需求列表。然后由产品经理选出最优项,准备交给整个团队讨论。
- 召开Sprint规划会议,所有成员讨论用户故事优先项,并且决定下次Sprint要研发的需求项
- 根据Sprint规划会议指定Sprint待办事项,会议结束后,所有成员都要对每个用户故事有深刻的理解
- 研发团队要在1~3周的时间内开发完成Sprint中的需求,在Sprint期间,每日例会用来交流他们做完了什么,正在做什么,以及遇到的问题
- 在Sprint结束时会举行Sprint回顾会议,由研发团队会向产品经理演示开发好的功能,然后整个团队讨论是否需要改进的地方
敏捷开发的评论
- 敏捷开发的轻松、高效是建立在优秀的技术实践、正确的敏捷价值观、团队成员非常熟悉项目的基础上才能实现,实际上许多人经常遇到做一半发现需求的部分场景遗漏,代码质量差,实现方式不合理,加上工作量以“人/天”为单位,当天认领的任务又必须当天做完,“敏捷开发”只剩下无休止地加班和几个会议。
- 有明确的规划和目标 把功能定下来不停敏捷迭代没问题 但是有些敏捷就是需求不清楚 也不知道干啥 但每周必须实现东西 美其名曰先做出来看看。
- 敏捷要有与之相配的人,从项目经理 产品经理 开发 测试甚至运维都要是有能力匹配的,有任何一个角色无问题,其他人要么干等加班 要么身兼多职的leader力挽狂澜,否则还不如规规矩矩瀑布式算了。
- 当你一直跟着一个不专业的人的时候,时间久了,你就会不专业