目录
Scrum是一个框架,Scrum其实就是一种团队管理工作的方式,其将工作分解为较小的工作单元,并在周期性固定的时间段内持续地交付工作单元
比如一个月内发布产品的小版本
二、Scrum框架的结构(3种角色,5种事件,3种工件)
1、3种角色
产品负责人(Product Owner):产品负责人是产品最终用户的代表,负责确定产品的方向和愿景,定义产品发布的计划、内容和优先级。产品负责人要不断地与开发团队沟通,保证团队在做业务角度来说最正确的事情。产品负责人是产品待办列表的唯一负责人。
Scrum教练(Scrum Master):Scrum教练负责确保团队合理的运作Scrum,帮助团队移除实施中的障碍。
开发团队(Development Team):一个自组织的跨技能的小团队,承担实际开发工作,负责在周期性的迭代中不断的交付有价值的工作。开发团队通过集体共同交付脚趾,而不是通过个体。
2、5种事件
Sprint:Sprint本身也是一种事件,其包含下面4种事件。
迭代计划会议(Sprint Planning Meeting):在每个迭代之初,产品负责人和开发团队共同来计划在迭代周期内要完成的工作。产品负责人负责向团队讲解要完成的工作,开发团队负责对工作进行估计。
每日站立会议(Daily Standup Meeting):每天,产品负责人和开发团队都要进行一个短暂的沟通。在会议期间,每个团队成员都要回答3个问题:“我昨天做了什么?”,“我今天准备做什么?”,“我遇到了什么问题?”。
迭代评审会议(Sprint Review Meeting):在迭代周期结束时,开发团队向产品负责人及所有干系人进行演示,并接受反馈。
迭代回顾会议(Sprint Retrospective Meeting):Scrum团队在迭代结束之后会进行一次迭代回顾会议,通过这次会议对迭代的过程进行总结,以促使团队自我持续改进。
3、3种工件
产品待办列表(Product Backlog):这是一个产品负责人想要交付的产品功能列表。产品负责人负责维护该列表,并且将列表项按照交付优先级进行排序。
冲刺待办列表(Sprint Backlog):这是一个迭代计划会议的输出、包含开发团队在在迭代周期内所要完成的工作列表。
产品增量(Product Increment):每个迭代周期都需要交付高质量的产品增量。产品增量必须满足Scrum团队对完成标准(Definition of Done)的定义。
1、Scrum基于经验主义,经验主义主张知识源于经验,而决策基于已知的事物。
2、Scrum采用迭代增量式的方法来优化可预测性和管理风险。
3、经验型流程的三大支柱是透明性(Transparency)、检视(Inspection)、调整(Adaptation)。透明性指的是流程中的关键环节必须为那些对产出负责的人可见;检视指的是Scrum的使用者必须经常检视Scrum的工件和完成Sprint目标的进度,以发现不必要的偏差;调整指的是检视者如果发现流程中的一个或多个方面背离了可接受的标准,并且将会导致产品不合格时,就必须对流程本身或者流程化的内容进行调整。
4、Scrum框架是一个反馈的框架。Daily Standup Meeting是一个每日的反馈,Sprint Review Meeting是一个对产品的反馈,Sprint Retrospective Meeting是对我们工作方法、工作流程方面的一个反馈。
1、Sprint周期的开始
从product backlog中选取一些条目,放入到Sprint Planning。在Sprint Planning中,首先开Sprint Planning Meeting,会议主要确定“这些条目怎么做?”以及“如何去实现这些条目?”两个问题。在会议结束会有当前Sprint的目标、Sprint Backlog两个输出。
2、Sprint周期的进行
在Sprint周期中每天都会进行Daily Scrum,每个人都需要总结“昨天我做了什么?”、“今天我准备做什么?”、“遇到了什么问题?”。
3、Sprint周期的结束
当Sprint周期结束,得到了Product Increment,接着进行Sprint Review。主要对产品进行反馈。在Sprint Review之后,Scrum团队会进行一次Sprint Retrospective Meeting(迭代回顾会议),通过这次会议对迭代的过程进行总结,以促使团队自我持续改进。
公开(Openness):团队通过自己的方式共同完成工作,每个成员都对进展和问题了如指掌
勇气(Courage):我们不是一个人在战斗,有了整个团队的支持,我们有了更大的勇气来进行挑战
承诺(Commitment):我们对团队承担的工作有了更大的掌控,更加坚定了对成功的承诺
尊重(Respect):团队中的每个人都有其特定的背景和经验,互相尊重,谦虚学习
专注(Focus):我们将全部精力和技能都聚焦在所承诺的工作上,团队同心协力来促使更快的交付
参考:
https://www.scrumcn.com/agile/scrum-knowledge-library/%E4%BB%80%E4%B9%88%E6%98%AFscrum.html
https://www.cnblogs.com/gaochundong/p/what_is_scrum.html
付有价值的工作。开发团队通过集体共同交付脚趾,而不是通过个体。