Scrum 基础
Scrum被认为是敏捷软件开发的核心框架。原因在于Scrum被设计成一个简单但有效的方法,软件开发团队用之可在短时间内创建高质量的产品。它结合了迭代和增量操作以规避传统瀑布方法的一些问题。
迭代方法是完成项目过程通过不断重复地分析和调整项目。通过每个迭代,团队使产品更接近要构建的可工作软件。迭代流程引入一个简单框架或方法来不断调整设计产品。
增量方法通过一系列小的改动来逐步增加改善产品功能。
迭代和增量软件开发使每个发布周期都有产品功能增加和升级。每个迭代结束时都有完成的可工作的软件增量。短迭代周期一般为1——4周。
Scrum聚焦于开发新的复杂软件。团队自己负责如何实现目标,在迭代内完成可工作软件的开发。Scrum通过价值观、实践、原则等来交付可工作产品使客户满意。Scrum是以精益思想和经验主义为基础的。
Scrum由Takeuchi和Nonaka在1986年发表的论文首先提出,文中他们比较了橄榄球运动和产品开发。Jeff Sutherland和Ken Schwaber在1993年开始应用前论文中的概念并结合自己的思考和在软件开发中实践,并于1995年对外发布了Scrum。自那以后,他们已经多次更新和改善了Scrum框架的内容。
Scrum源自软件开发,现在已经广泛应用于软件之外的领域了,如教育、政府、扶贫等。
公司转型应用Scrum的一些原因:
提高了组织管理不断变化的优先事项的能力
在项目或冲刺流程中具有更高的可见性
业务和信息技术领域之间更容易对齐
以高质量更快地向市场交付产品
Scrum是一个轻量级的易于理解但难以精通的敏捷框架。Scrum框架允许团队可以添加实施流程,技术,方法到框架中。Scrum方法是以现有实践为中心,但通过管理、工作环境以及员工的工作行为使每个实践的有效性组成为一个系统。
Scrum支柱
Scrum基于观察和实验来产生理想产品,通过基于经验主义的流程:透明、检视、调整来实现。透明、检视、调整称为三大支柱。
透明,为了做好决策,开发者需要流程透明。这样帮助团队理解彼此正在做什么,每个成员通过共同语言分享流程中正在发生什么。
透明在Scrum中可以通过产品待办列表、任务板、燃尽图、每日Scrum、冲刺评审、完成的定义、回顾等来实现。
检视,为防止软件开发过程中出问题,持续应用检视以获得更好的成果。用户必须确保他们检查工件和冲刺期间完成的产品。团队基于目标检视工件和产品差异,从客户收集反馈,PO审视产品增量。
调整,当软件开发过程中出现转折点,团队应当快速调整以满足新需求。调整是敏捷流程的一部分。团队要始终寻找团队可以改善和调整的做法。每日站会、迭代评审、迭代回顾都是团队自我审视和提高调整的机会。
Scrum的关键价值观
Scrum的五大价值观:承诺、勇气、聚焦、开放、尊重。
承诺,团队建立一种相互信任相互依赖的关系完成他们在流程中的角色。
勇气,意味着团队成员在过程中做正确的事来保持一致性。团队成员为了创建高质量产品能够展开艰难对话。
聚焦,团队成员有能力聚焦在团队目标上,尤其在困难的时候。
开放,团队为了自我改善能够开诚布公地讨论工具、流程、做事方法、互动等各方面情况。
尊重,团队成员彼此互相尊重。
Scrum 基础
Scrum指南分解了流程,包括了Scrum事件,团队,价值观,理论等等。本节主要讲述时间盒、产品待办列表、冲刺、冲刺目标。
Scrum流程不仅仅让团队聚焦于按时完成交付,也要聚焦于质量内建。团队一起评估任何影响产品进度质量的问题或障碍。团队设定目标解决问题。成员了解各自的工作,不断地应用透明、检视、调整反馈环来自我改进和交付。
时间盒
时间盒用来限制Scrum活动的最大时间长度,通过限制时间来帮助排序和决策。开发常常为每个迭代选择一个固定的时间长度,这样一个项目就可以分解成多个一定数量的迭代来完成。Scrum中迭代长度不超过30天,为1-4周。每个迭代又分成规划、实现、评审、回顾等不同的阶段。每个迭代可以看成一个小项目。
每个活动都是时间盒,假如迭代长度为4周,迭代计划不超过8小时,迭代评审不超过4小时,迭代回顾不超过3小时,每日站会不超过15分钟;迭代长度变短,相应的活动时间也变短。
时间盒让团队每天更容易聚焦于团队目标。使用时间盒的背后原因是心理学表明时间线会激励人们努力按时完成目标。时间盒给的压力以防止工作拖延。时间盒方法某种程度跟番茄工作法很相似。
冲刺
如果说Scrum是敏捷的核心,那么冲刺是Scrum的核心。冲刺就是迭代,是开发产品的每个重复的时间段,时间长度小于一个月。
冲刺目标是开发团队在一个迭代中要达成的交付目标。冲刺目标来自于要开发的产品待办列表。
冲刺由冲刺计划、每日Scrum、开发工作、冲刺评审、冲刺回顾组成。前一个冲刺结束下一个冲刺立即开始,直到项目结束。
冲刺让团队通过检视调整流程以更容易预测项目成果。通常复杂项目倾向于采用更短冲刺时长,这样实验学习的反馈循环更短,更早看到成果,降低风险、损失更小更容易调整。如果情况变化导致冲刺目标无效,冲刺可以取消。只有PO有权决定是否取消冲刺。
冲刺被取消的话,已完成的待办列表会进入评审流程,未完成的待办列表放回产品待办列表。
产品待办列表
产品待办列表是Scrum的工件,它是要完成的满足软件需求的一个有序清单。由PO负责排序和管理,保证其价值最大化。
产品待办列表需要满足产品目标的需求,产品目标是产品待办列表的承诺,团队采取可衡量的步骤,以实现未来期望的产品状态。
要点
Scrum是敏捷软件开发的核心框架
Scrum理论依赖于经验控制流程:透明、检视、调整
Scrm五大价值观:承诺、勇气、聚焦、开放、尊重
Scrum框架中所有活动都是有时限的,冲刺是基于规划、实施、评审、回顾
冲刺设置为一个月或更短时间的时间表,并且具有特定的冲刺目标。
团队使用时间盒来拆解时间量以完成一个项目
使用产品待办列表的缺点是有序列表并不一定意味着您最终会得到高质量的产品。
PSM1样题
Scrum is a process and a technique.
a. True
b. False
What is Scrum Based on? (Choose all that apply.)
a. System
b. Rules
c. Events
d. Artifacts
The three pillars of Scrum are Transparency, Inspection, and Added Value.
a. True
b. False
Sprints can be canceled if:
a. The Scrum Team cannot handle the work.
b. It becomes apparent that everything will not be completed by the end of the Sprint.
c. The Product Owner had a new idea.
d. The Sprint Goals become obsolete.
Which of the following are the main key values of Scrum? (Choose all that apply.)
a. Commitment is a key value of Scrum, and it signifies the togetherness within a team.
b. Agility is a key value in Scrum, and it refers to doing what is right to maintain integrity in the software development process.
c. Focus is a key value of Scrum, and it is a skill that each team member needs.
d. Honesty is a key value of Scrum, and it deals with being humble among team members.
Select the correct duration based on the Timebox process.
a. Sprint Planning takes 1 hour.
b. Daily Scrum should not exceed 15 minutes.
c. Sprint Review requires 2 hours or more.
d. Sprint Retrospective takes 2 hours.
What occurs when a Sprint is canceled? (Choose all that apply.)
a. Any and all finished and “Done” Product Backlog items are reviewed.
b. If part of the work is potentially releasable, the Scrum Owner will accept.
c. More Product Backlog items are used in the Sprint Backlog to replace the obsolete ones.
d. The incomplete Product Backlog items are re-adjusted and placed in the Product Backlog again.
Which of the four is responsible for managing the Product Backlog?
a. The Stakeholders
b. The Developers
c. The Scrum Master
d. The Product Owner
Product Backlog contains only functional requirements for the software.
a. True
b. False
The work done by the Developers must originally come from the Product Backlog.
a. True
b. False