`
peterwei
  • 浏览: 247888 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Scrum学习小记

阅读更多
这几天看了《硝烟中的Scrum和XP》,感觉不错,做下备忘。

一. 什么是Scrum
Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发。包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括同项目经理类似的Scrum主管角色负责维护过程和任务,产品负责人代表利益所有者,开发团队包括了所有开发人员。

二. Scrum名词
Backlog: 可以预知的所有任务, 包括功能性的和非功能性的所有任务。

Sprint:一次跌代开发的时间周期,一般最多以30天为一个周期.在这段时间内,开发团队需要完成一个制定的backlog,并且最终成果是一个增量的,可以交付的产品。

Sprint backlog:一个sprint周期内所需要完成的任务。

Scrum Master: 负责监督整个Scrum进程,修订计划的一个团队成员。

time-box: 一个用于开会时间段。比如每个daily scrum meeting的time-box为15分钟。

Sprint planning meeting: 在启动每个sprint前召开。一般为一天时间(8小时)。该会议需要制定的任务是:产品Owner和团队成员将backlog分解成小的功能模块,  决定在即将进行的sprint里需要完成多少小功能模块,确定好这个Product Backlog的任务优先级。另外,该会议还需详细地讨论如何能够按照需求完成这些小功能模块。制定的这些模块的工作量以小时计算。
Daily Scrum meeting:开发团队成员召开,一般为15分钟。每个开发成员需要向Scrum Master汇报三个项目:今天完成了什么?是否遇到了障碍?即将要做什么?通过该会议,团队成员可以相互了解项目进度。
Sprint review meeting:在每个Sprint结束后,这个Team将这个Sprint的工作成果演示给Product Owner和其他相关的人员。一般该会议为4小时。
Sprint retrospective meeting:对刚结束的Sprint进行总结。会议的参与人员为团队开发的内部人员。一般该会议为3小时。

三. Scrum角色和职责
产品负责人 – 定义开发目标,需要实现的feature和优先级
Scrum Master – 保证团队高效而不受打扰地工作,优化工作条件、过程
团队 – 自组织地完成项目开发,使用一切可行手段保证进度和质量






四. Scrum过程
前期:产品负责人整理业务需求,形成Product Backlog库
执行:以Sprint为单位迭代式地完成Sprint Backlog。每个Sprint以Sprint Planning开始,通过每日例会跟踪进度和issue。Sprint结束时交付可运行的产品
后期:每个Sprint完成后,通过Sprint回顾发现问题和改进点,制定下个Sprint要引入的新的实践






五. Scrum的精髓
Scrum是一个“检查并适应”的框架,在三个角色(产品负责人/Scrum Master/团队)、三种仪式(Sprint计划/Sprint回顾/每日例会)和三种制品(产品Backlog/Sprint Backlog/燃尽图)的基础上,你可以根据公司或者项目的情况,因地制宜引入任何有利于缩短开发周期、提高产品质量的实践
六. 实施过程
实施Scrum—Sprint前
产品负责人(PM)收集整理产品需求,形成产品Backlog
产品Backlog按照统一格式定义,比较重要属性有:名称、重要性、估算时间、简单描述、如何演示等,详细的需求细节可以在其他需求文档中定义
产品负责人可以通过任何渠道、方式获取和确认需求

实施Scrum—Sprint
产品负责人、Scrum Master和团队成员(包括QA)召开Sprint会议,Scrum Master主持会议
Sprint会议上详细沟通产品负责人选定的重要性高的产品Backlog细节,确保团队对需求的理解无误
团队就对需求的理解将Backlog拆分成任务,并给出每个Backlog的估算时间
产品负责人和团队根据Sprint内可用的人天和Backlog的时间估算,选定需要排入本次Sprint的Backlog
Scrum Master和团队分派任务,制定Sprint计划
一个Sprint的周期是两周到四周;一次Sprint会议时间大约一个下午
整理一面任务墙,将Sprint内的Backlog和任务按照未开始、进行中、已完成等状态进行归类;同时展示Sprint的燃尽图
Scrum Master每日早上固定时间组织团队的每日例会,确认每个成员前一天完成的工作、当天要进行的工作、工作中碰到的issue,并更新任务墙
任何需求变更都进行实时评估,超过规划人天的Backlog视情况进行拆分或者推迟其他重要性低的Backlog
任何完成的Backlog都需要演示给产品负责人和QA后才能提交测试

实施Scrum—Sprint后
Scrum Master召集、组织Sprint回顾会议
回顾会议以头脑风暴的方式Review Sprint过程和结果,发现和列举存在的问题
与会人员投票决定需要在下个Sprint中解决的1-3个问题, 探讨解决方案,确定实践方式

七. Scrum精神
团队目标重于岗位职责
团队工作优于独立作战
高效沟通强于标准化的文档
高能动性的、自组织的团队胜于角色划分清晰的流水线
务实的解决问题的方法好于经典理论
快速实践,快速反馈,持续优化

八. 软件开发的目标
在资源一定的情况下,尽可能快地完成高质量的软件开发


九. 附:《敏捷宣言》
我们通过身体力行和帮助他人来揭示更好的软件开发方式。经由这项工作,我们形成了如下价值观:

个体与交互 重于 过程和工具
可用的软件 重于 完备的文档
客户协作 重于 合同谈判
响应变化 重于 遵循计划


在每对比对中,后者并非全无价值,但我们更看重前者。

十. 附:《敏捷宣言》的12准则
我们的最高目标是,通过尽早和持续地交付有价值的软件来满足客户。
欢迎对需求提出变更——即使是在项目开发后期。要善于利用需求变更,帮助客户获得竞争优势。
要不断交付可用的软件,周期从几周到几个月不等,且越短越好。
项目过程中,业务人员与开发人员必须在一起工作。
要善于激励项目人员,给他们以所需要的环境和支持,并相信他们能够完成任务。
无论是团队内还是团队间,最有效的沟通方法是面对面的交谈。
可用的软件是衡量进度的主要指标。
敏捷过程提倡可持续的开发。项目方、开发人员和用户应该能够保持恒久稳定的进展速度。
对技术的精益求精以及对设计的不断完善将提升敏捷性。
要做到简洁,即尽最大可能减少不必要的工作。这是一门艺术。
最佳的架构、需求和设计出自于自组织的团队。
团队要定期反省如何能够做到更有效,并相应地调整团队的行为。
十一. 参考资料
参考文档:《硝烟中的Scrum和XP》及导读PPT
相关地址:http://www.infoq.com/cn/minibooks/scrum-xp-from-the-trenches
  • 大小: 40.4 KB
  • 大小: 77.9 KB
  • 大小: 77.9 KB
3
0
分享到:
评论
1 楼 beowulf1985 2011-03-30  
此书甚好!

相关推荐

    Scrum 学习心得

    本人写的SCRUM的学习心得,呵呵 希望对有需要的朋友一点分享

    Scrum学习ppt

    1、Scrum是很好的IT项目管理方式方法; 2、本ppt是很好的scrum学习课件。

    Scrum精要Scrum精要

    Scrum精要Scrum精要Scrum精要Scrum精要Scrum精要Scrum精要Scrum精要Scrum精要Scrum精要

    Scrum敏捷软件开发

    中文名: Scrum敏捷软件开发 原名: Succeeding with Agile: Software Development Using Scrum 作者: Mike Cohn 资源格式: PDF 版本: 英文文字版 出版社: Addison-Wesley Professional书号: 978-0321579362发行时间: ...

    Scrum软件开发学习资料.rar

    分享一些关于Scrum软件开发的学习资料。Scrum是迭代式增量软件开发过程,通常用于敏捷软件开发。Scrum包括了一系列实践和预定义角色的过程骨架。

    2020-Scrum指南.pdf

    Scrum 的定义 Scrum 是一个轻量的框架,它通过提供针对复杂问题的自适应解决方案来帮助人们、团队和组织 创造价值。 简而言之,Scrum 需要 Scrum Master 营造一个环境,从而: 1. 一名 Product Owner 将解决复杂...

    scrum及常见问题

    scrum及常见问题 ,scrum及常见问题处理解决办法等等

    scrum介绍(中文版)

    Scrum是一个敏捷开发框架,是一个增量的、迭代的开发过程.。在这个框架中,整个开发周期 包括若干个小的跌代周期,每个小的的跌代周期称为一个Sprint,每个Sprint的建议长度2到4周。 在Scrum中,使用产品Backlog来...

    THE SCRUM PRIMER: An Introduction to Agile Project Management with Scrum

    There are many concise descriptions of Scrum available online, and this primer aims to provide the next level of detail on the practices. It is not intended as the final step in a Scrum education; ...

    SCRUM Professional Scrum Master II题.docx

    SCRUM Professional Scrum Master II题.docx

    Scrum过程实践小记

    严格来说,不能算是真正的scrum实践,但实践敏捷的过程本身也是一种“敏捷方法”,所以就算是“敏捷实践之敏捷开发方法-scrum过程”吧。1.Scrum团队(5-7个人的小项目组)。 2.Backlog:急待完成的一系列任务,包括...

    Scrum指南2020版(PDF, 英文版 + 简体中文版 + 繁体中文版)

    Scrum 是一个轻量的框架,它通过提供针对复杂问题的自适应解决方案来帮助人们、团队和组织 创造价值。 简而言之,Scrum 需要 Scrum Master 营造一个环境,从而: 1. 一名 Product Owner 将解决复杂问题所需的工作...

    SCRUM guide

    INTRODUCTION TO SCRUM SCRUM THEORY SCRUM CONTENT

    Scrum workship

    Scrum 讲座讲解如何应用scrum的流程, Scrum 讲座讲解如何应用scrum的流程

    5分钟了解Scrum

    5分钟了解Scrum 只需一点点时间了解scrum

    Scrum敏捷项目管理

    Scrum敏捷项目管理Scrum敏捷项目管理Scrum敏捷项目管理Scrum敏捷项目管理Scrum敏捷项目管理Scrum敏捷项目管理Scrum敏捷项目管理Scrum敏捷项目管理Scrum敏捷项目管理

    英文原版-The Art of Scrum How Scrum Masters Bind Dev Teams and Unleash Agility 1st Edition

    This book covers the nuts and bolts of scrum—its framework, roles, team structures, ceremonies, and artifacts—from the scrum master’s perspective.The Art of Scrum details the scum master’s ...

    Scrum.Novice.to.Ninja.0994346913

    Why should you use Scrum in your web projects? Simply put, it'll enable your team to get more done in less time. Scrum is the most popular agile project management methodology used in web projects ...

    scrum初识整体理解

    scrum的初识,了解scrum的关键组成人员与环节,了解scrum的执行流程。

Global site tag (gtag.js) - Google Analytics