<硝烟中的Scrum和XP>

C1:前言
最近接触了个新词儿叫做PMP(Project Management Professional),于是乎追本溯源,追着追着就到了Scrum这边。似乎俺前几周参加个DevOps Meetup,似乎还跟Scrum/Agile有点联系,就认真的找了本书仔细研读起来。

下文是<硝烟中的Scrum和XP-我们如何实施Scrum>的一些摘要。

C2:我们怎么编写Product backlog





Track(类别),Component(组件),Requstor(请求者),Bug Track ID
backlog停留在业务层面:给数据库添加索引->提供查询速度

C3:如何准备Sprint计划

确保product backlog都有importance的打分。

C4:我们怎么制定sprint计划

Output:
sprint goal,
team member,
sprint backlog,
sprint demo data,
everyday scrum meeting.

为什么产品负责人(Product Owner)必须参加
为什么不能在质量上让步
无休止的sprint计划会议.....NO
Sprint计划会议日程
13:00-13:30 po对sprint目标进行总体介绍,介绍产品backlog。确定演示的时间和地点。
13:30-15:00 团队估算时间,必要的情况下拆分backlog条目,PO必要时修改重要性评分理清每个条目的含义。所有重要性高的backlog条目都要填写如何演示。
15:00-16:00 团队选择要放入sprint的故事,计算生产率,用作核查工作安排的基础。
16:00-17:00 为每日scrum会议安排固定的时间和地点。
确定sprint长度:3周
确定sprint目标:我们为什么要进行这个sprint,为什么不直接放假算了。
决定sprint要包含的故事
拷贝product backlog至sprint backlog。估算的生产率
PO如何对sprint放哪些故事产生影响
1.重设impor 2.缩小范围 3.拆分优先级
团队决定把哪些故事放在sprint里面
用本能反映来估算+用生产率计算来估算
我们为何使用索引卡
定义“完成”:故事上加一个字段
使用计划扑克做时间估算:几轮
明确故事内容
把故事拆分成更小的故事:User Mgmnt->Add/Edit User, Query User
把故事拆分成任务QueryUser->Clarify Req, write test case, design UI…..
定下每日例会的时间地点: 9am
最后界限在哪里:
1.sprint目标和演示日期。2.经团队许可,添加到当前sprint的story。3. Sprint中每个故事的估算值。4.sprint每个故事如何演示。5.生产率和资源计算 6.明确每日例会的时间地点。7.把故事拆分成任务。
技术故事
Bug跟踪系统 vs. 产品backlog
Sprint计划会议终于结束了

C5:我们怎样让别人了解我们的sprint

C6:我们怎样编写Sprint backlog

Sprint backlog的形式



C7:如何布置房间

C8:我们怎样进行每日例会

我们怎样更新任务板
每个人描述已经做的事情和今天要做的事情,移动对应的任务帖。
处理迟到的家伙
处理“我不知道今天干什么”的情况

C9:我们怎样进行Sprint演示

坚持所有的工作都结束于演示
Sprint演示检查列表
确保清晰阐述了sprint目标
不要花太多时间演示,不要做演讲
节奏要快,关注于业务,不管技术细节,不要演示bug和微不足道的特性。
处理无法演示的工作:提供报告

C10:我们怎样做sprint回顾

如何组织回顾
根据要讨论的内容范围,设定时间为1-3小时。
参与者包括产品负责人,整个团队
ScrumMaster向大家展示sprint backlog,在团队的帮助下做总结。
轮流发言。每个人都不被打断的情况下讲出自己的想法,什么是好的,哪些可以更好,哪些需要在下一个sprint做改变。
对预估生产力和实际生产率进行比较。如果差异大,分析原因。
快结束时,ScrumMaster对具体建议进行总结,得出下一个sprint需要改进的地方。
在团队之间传播经验
变,还是不变
回顾中发现问题示例

C11:Sprint之间的休整时刻

C12:怎样制定发布计划,处理固定价格的合同

定义你的验收标准
对最重要的条目进行时间估算
估算生产率
统计一切因素,生成发布计划
调整发布计划

C13:我们怎样结合使用Scrum和XP

结对编程
TDD
在新代码上TDD
在旧代码上TDD
增量设计
持续集成
代码集体所有权
充满信息的工作空间
代码标准
可持续的开发速度

C14:我们怎样做测试

你大概没法取消验收测试阶段
把验收测试阶段缩到最短
把测试人员放倒Scrum团队来提高质量
在每个Sprint中少做工作来提高质量
回到现实