目录
什么是Scrum
Scrum是迭代式增量软件开发过程(是一种流程、计划、模式,用于有效率地开发软件),通常用于敏捷软件开发。Scrum包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括同项目经理类似的Scrum主管角色负责维护过程和任务,产品负责人代表利益所有者,开发团队包括了所有开发人员。虽然Scrum是为管理软件开发项目而开发的,它同样可以用于运行软件维护团队,或者作为计划管理方法。
优点
传统的线性开发的瀑布模型在开发过程中一旦需求发生变化就需要重新从第一步的需求分析开始,这样很容易导致开发周期过长,如图:
而用Scrum开发时,整个项目会被分解成若干个小部分,首先围绕最小化可行性产品特性进行产品规划,然后把最小化可行性产品开发出来,接下来测试,评审,直至发布,循环这个过程,最后便得到一个可发布的产品,这个过程被称作迭代,通常需要一到三周左右,每个迭代都可以得到一个可发布的产品。不断重复这个过程增量式发布。,
Scrum角色
- 产品经理
- Scrum Master
- 开发团队
产品经理(Product Owner)
负责产品特性,同时会提出产品亮点:,负责维护产品订单的人,代表利益相关者的利益。
Scrum Master
为Scrum过程负责的人,确保scrum的正确使用并使得Scrum的收益最大化,帮助团队尽可能完成工作,组织日常会议并保障其他工作。
开发团队 (Team)
由负责自我管理开发产品的人组成的跨职能开发团队,包括开发人员,测试人员,文案,以及其他帮助研发的人。开发团队人员经常跨职能工作,比如有时开发人员在做测试,测试人员在写文案,文案去拿外卖 :) 。
Scrum可视化文档
- 产品需求列表( Product Backlog):产品经理会根据用户价值从众多用户故事中进行优先级排序,并把它们并入到产品需求列表中去,需求列表会随着每次的迭代不断更新变化。
- 冲刺订单(Sprint Backlog) :要在冲刺中完成的任务的清单,由用户故事构成。
- 燃尽图(Burndown Chart):用以展示整个Sprint代办列表的进度,当燃尽图曲线趋近0时就意为着Sprint快要完工
用户故事 (User Stories):是一种表达产品需求的语言格式,产品经理通过用户故事来了解需求细节,为Scrum团队指定任务优先级,语言格式为:
Scrum 会议
- 计划会(Sprint Planning Meeting) :在每个冲刺之初,由产品负责人讲解需求,并由开发团队进行估算的计划会议。
- 每日立会( Daily Standup Meeting):团队每天进行沟通的内部短会,用于讨论工作进度和所遇到的问题,因一般只有15分钟且站立进行而得名。
- 评审会(Review Meeting) :在冲刺结束前给产品负责人演示并接受评价的会议。
注:有的还有反思会/回顾会( Retrospective Meeting):在冲刺结束后召开的关于自我持续改进的会议。
Scrum工作流程
第一阶段
产品经理把那些需要上线的产品特性做成产品需求列表(Backlog),从中排列出优先级,准备交由与团队一起讨论。
第二阶段
研发团队,产品经理,Scrum Master讨论用户故事优先项,并且决定下次Sprint要研发的需求项。
第三阶段
根据Sprint规划会议制定Sprint需求列表,这个Sprint需求列表就是经过团队讨论后的用户故事,用于下次的Sprint。会议结束后产品经理和研发团队必须对每个用户故事有深刻的理解。
第四阶段
研发团队需要在一到三周里完成Sprint列表里的需求。
第五阶段
举行评审会(Review Meeting) ,在冲刺结束前给产品负责人演示并接受评价的会议,同时反思下一步工作中需要改进的地方
参考:
- https://www.bilibili.com/video/av21945150/?spm_id_from=333.788.videocard.0
- https://baike.sogou.com/v7721370.htm?fromTitle=scrum
- https://www.bilibili.com/video/av35215548
- https://blog.youkuaiyun.com/jackjyy/article/details/80740076