当前位置:文档之家› 基于SCRUM的研发管理流程

基于SCRUM的研发管理流程

21
团队能力
Product backlog 业务约束 条件
现有产品
技术
Sprint计划会议
Sprint 计划会议
Sprint计划会议1:做什么
• 分析和评估 product backlog • 确定sprint目标 • 排定优先级
Sprint计划(设计) • 从产品backlog(用户故事或特
一个Sprint周期内需求不发生变更
计划Sprint周期的长度要依赖于你能在多长时间内 保证在Sprint期间需求不发生变更
Change
时间盒迭代(timeboxing)
时间盒迭代(timeboxing/timeboxed iterations)的核心思 想:在预算时间内对完不成的功能进行删减或者延迟,而不 是拖延预算的时间。
— 产品负责人和小组成员相互认可这 Sprint 目标和既定产品 Backlog
会议结果
— 为 Sprint 计划会议2的进行准备好既定产品 Backlog
24
Sprint计划会议2
在 Sprint 计划会议 2 中,团队将既定产品 Backlog 中的 每一项细化成多个任务。每个任务完成的时间限定在一天内
会议准备
— 邀请与会者:产品负责人、Scrum Master、团队所有成员 — 已按优先级排列产品 Backlog 中各项问题 — 已评估 Backlog 中的各项问题 — 把产品 Backlog 公开给会议中的每个人,保证其可被获取 — 预期团队中有哪些人已明确会缺席(如度假) — 保证房间环境适合小组讨论 — 每个人都可以获取上次 Sprint 评审会议和 Sprint 回顾会议的结果 — Sprint 时间表已经安排 — (可选)为既定 Backlog 准备图钉板:一个至少 2x2 米的图钉板、卡片和贴纸、荧
Sprint计划会议2:团队研究在Sprint内如何构建产品增量, 用时4小时。
—团队先以设计展开工作,设计过程中,团队确定任务,这些任务就是将 Product Backlog转化成可用软件的具体工作。任务需要被分解,以便在一天 之内完成。这个任务列表就是Sprint Backlog。团队通过自组织,并且是自 己认领的方式分担任务,任务认领可以在Sprint计划会议上进行,或也可以 Sprint中及时(Just-in-time)确定。
单的答应去完成。它是建立在目标之 上的来自内心的接受和应许,这里 只有“做”和“不做”,没有“让我试试”
专注(Focus):像邮件和不相关的会议就是很常见的一些分散注意力
的事情,我们需要做得是不转移注意力,把精力全部集中在承诺的事务上
公开(Openness):保持一直让任何有兴趣的人员都可以在墙上、
够的勇气来对大家说“不”,比如不能承诺时,对纳入sprint的故事说“ 不”等
4
Scrum理论的三大支柱
Scrum是以经验过程控制理论为依据,采用迭代、增量的方法 来提高产品开发的可预见性并控制风险。Scrum的三大支柱支 撑起每个经验过程控制的实现。
第一大支柱是高透明性(Transparency)
Scrum Framework
Roles
•Product owner
•Scrum Master
•Team
仪式
•Sprint 计划 •Sprint 评审 •Sprint 回顾 •每日scrum例会
Artifacts
•Product backlog •Sprint backlog •Burndown charts
5
Scrum特点
Scrum规定了一个非常简单的开发流程。
Scrum是现有设计流程的总结。
Scrum以团队为基础,是一种在需求迅速变化情况下迭代地、增量地开发 系统和产品的方法。
Scrum是一个控制由利益和需求冲突导致的混乱的流程。
Scrum是改善交流并最优化合作的方式。
Scrum是一种检测产品开发和生产过程中障碍并将其去除的方式。
• 腾讯 • 阿里巴巴 • 华为 • 盛大 • 淘宝 • Facebook • Twitter • Time Warner • others
Scrum 核心过程
Scrum on a page
12
Sprints(冲刺)
Sprint的本意是指冲刺,在Scrum中,一个Sprint就是一个迭 代,Scrum 项目通过一系列的sprints来推进,Sprints类似 于极限编程的迭代。
如果在迭代进行中,开发团队发现进度落后,无法完成全部 的迭代开发任务和计划的需求功能时,敏捷方法通常允许或 要求开发团队与客户协商,减少开发任务或需求(可以放入 下一次迭代中),以保证在既定的时间点提交高质量的成果 (尽管这个成果可能不完整)。
参考:
为什么时间盒迭代提倡删减需求任务?
EssUP迭代核心——时间盒 Time boxing
Scrum是最大化生产率的一种方法。
Scrum适用于单一的项目到整个组织。Scrum可以控制并组织多个具有相关 性的产品开发以及拥有超过千名开发者和执行者的项目实施过程。
Scrum能让每个参与者都对自己所做的工作以及自己做出的贡献感到骄傲 ,并让他们发挥到最佳水平。
6
敏捷联盟宣言
敏捷实践原则
2
Scrum 目标
Manage Complexity, Unpredictability and Change through Visibility, Inspection and Adaptation
通过高透明性、检验和适应性来管理复杂性、不可预测性和变化
Scrum 核心价值观
承诺(Commitment):承诺不只是把一项工作分配给团队,也不是简
Sprint长度通常2-4周,它是一个时间箱,在项目进行过程中 不允许延长或缩短Sprint长度。
稳定的周期会带来更好的节奏
Sprint由Sprint计划会议、开发工作(需求分析、设计、开发 、测试、质量控制等)、每日站会、Sprint评审会议和Sprint 回顾会议等活动组成。
Sprint一个紧跟一个进行,之间没有任何时间间隔。
—高透明度确保管理结果的人看得到那些影响结果的过程方面。这些过 程方面不仅要透明,而且那些被观察到的方面也必须被充分了解。
第二大支柱是检验(Inspection)
—开发过程中的各方面必须做到经常性的检验,以确保及时发现过程中 的重大偏差。
第三大支柱是适应(Adaptation)
—如果检查员经检验发现过程中的一个或多个方面不满足可接受标准, 并且最终产品是不合格的,那么检查员就必须对过程进行调整。调整 工作必须尽快实施以减少进一步的偏差。
15
Scrum Framework
角色(Roles)
•产品负责人 •Scrum教练 •团队
仪式(Ceremonies)
•Sprint 计划 •Sprint 评审 •Sprint 回顾 •每日scrum例会
产出工件(Artifacts)
•Product backlog •Sprint backlog
1. 我们最优先要做的是通过尽早的、持续的交付有价值的软 件来使客户满意。
2. 即使到了开发的后期,也欢迎改变需求。敏捷过程利用变 化来为客户创造竞争优势。
3. 经常性的交付可以工作的软件,交付的间隔可以从几个星 期到几个月,交付的时间间隔越短越好。
4. 在整个项目开发期间,业务人员和开发人员必须天天都在 一起工作。
认同Scrum价值观和遵守其游戏规则 组织每天的Daily Scrum会议 帮助Scrum Team规划Sprint计划 清除障碍 确保团队功能完备富有效率 促进所有角色和职能的紧密协作 替团队抵御外部干扰
Scrum团队
一般5-9人 跨部门:程序员,测试员,界面设计人员等等 团队自我组织:理想情况下,团队成员是平等的,不分头衔 一个sprint中保持成员稳定 负责将Product Backlog转化成Sprint中的工作项目 所有团队成员协调,合作完成Sprint中每一个规定的工作 所有团队成员和Scrum Master负责每一个Sprint的成功
基于SCRUM的研发管理流程
Scrum 是什么?
SCRUM是一种敏捷开发的模型,是一个迭代性、增量性的流程,适用于任何 的产品开发以及工作管理。Scrum 将软件开发团队比拟成橄榄球队,有明确 的最高目标,熟悉开发流程中所需具备的最佳典范与技术,具有高度自主权 ,紧密地沟通合作,以高度弹性解决各种挑战,确保每天、每个阶段都朝向 目标有明确的推进。
派其工作量为 2 个Story Point。以这个最小用例的工作量标准,分配 Backlog 中其 他问题的 Story Point — 如果 Backlog 中的一些问题尚未被评估:根据其他问题工作量,评估这些问题的 Story Point 量 — 如果产品 Backlog 中的各项还没能合理地按优先级排序:产品负责人对产品 Backlog 中的各项按优先级排序
wiki页面或者仪表盘工具上获知项目当前状况,能够了解多少功能已经完 成,哪些正在做,每次迭代和发布的目标是什么
尊重(Respect):每个团队成员都必须被尊重的看待,大家一起指定
工作规范(working agreements)
勇气(Courage):为了接受并负责任的交付产品,团队成员必须有足
性)中创建sprint backlog (任 务)
• 估计sprint backlog 故事点(人
天)
Sprint 目标
Sprint backlog
Sprint计划会议1
产品负责人和团队一起,在先前评估的成果基础上,定出 Sprint 目标 和既定产品Backlog。
目标
— 定出 Sprint 目标和既定产品 Backlog
光笔 — (可选)用作计划纸牌的卡片
Sprint计划会议1
相关主题