狠狠撸

狠狠撸Share a Scribd company logo
SCRUM从理论到实践
You do not do agile, You are agile
                vertical@rd.netease.com
大纲
? SCRUM基础
? 视频突击中的敏捷实践
? QA
Scrum is What?




Scrum是一种迭代式增量软件开发过程,通
常用于敏捷软件开发
Why Scrum?
? 传统开发流程:流程可控 VS Scrum:交付实际商业价值
? 市场,用户,需求变化剧烈,必须拥抱变化
? 人本精神,迭代试错,群体决策,自我管理…
上图
void run_scrum()
                         其实呢,是这段伪码..
{
 const int Sprint_Length = X;
 int velocity = get_past_performance();

// Scrum 中的三个角色
Role team, product_owner, ScrumMaster;

// Scrum中的制品
Product_Backlog product_backlog;
Sprint_Backlog sprint_backlog;
Burndown_Chart sprint_burndown_chart,release_burndown_chart;

Product_Increment product_increment;
//开始项目的三个准备条件
setup_team(team);
define_Definition_of_Done(team, product_owner);
initial_project(&product_backlog );

//每一次while 循环为一次迭代
while (!is_empty(product_backlog)){
              run_sprint_planning_meeting(product_backlog, velocity, &sprint_backlog);
             //每一次for循环为一个工作日
             for(num_of_day = 1; num_of_day <= Sprint_Length; num_of_day ++){
                          run_daily_scrum_meeting(&sprint_burndown_chart);
                          do_development_activity(sprint_backlog, &product_increment);
             }
              run_sprint_review_meeting(product_backlog, product_increment);
              run_retrospective_meeting();
              update_product_backlog(&product_backlog, &release_burndown_chart);
              update_velocity(&velocity);
 }
 }
鸡和猪的故事
叁类“猪”角色



                              Scrum Master
Scrum Team




              Product Owner
三类“鸡”角色




用户            利益相关者(客户,提供商)




         老板
四种会议
?   每日Scrum立会(精髓所在)
?   Scrum计划会议
?   Scrum评审会议
?   Scrum回顾会议
厂肠谤耻尘叁宝之——计划扑克牌


        ?由       ScrumMaster召集讨论
          Sprint Backlog中的Story,并对
          每一个Story做任务分解
        ? 对每个任务,Scrum团队每个
          成员同时出牌估算完成时间,
          其中估算数值最大最小的人,
          说明估算理由
        ? 重新出牌,直至最终大家对时
          间估算基本相同
Scrum三宝之——任务看板

?任      务看板包含四栏,分别是
  Story,计划做的任务,进行中任
  务,已完成任务
? 每当团队中的成员改变了任务的
  当前状态,就将一个便签条移到
  下一个栏目中
? 一个Sprint之后,所有重要Story
  的便签条应该处于完成状态
? 在整个Sprint中,会随任务看板
  生成燃尽图
厂肠谤耻尘叁宝之——燃尽图

       ?有   效的信息发送源
       ? 常常在一上来出现上升
       ? 顶峰出现的位置能够展示团队
         的成熟度
其它Agile实践
?   XP
?   RUP
?   Crystal
?   Lean
?   CMM(传统)
Scrum小结
?   过程透明,快速暴露问题和响应
?   明确边界,每次聚焦有限的项目
?   去中心化,群体决策
?   团队不断试错,总结,成长
大纲
? SCRUM基础介绍
? 视频突击中的敏捷实践
? QA
每日Scrum立会
? 好的实践
 – 起到了及时沟通变动,梳理优先级的作用
 – 及时的沟通一定程度上取代了设计文档
 – 有效减少腰部赘肉…
? 待改进实践
 – 没有及早将测试和前端同事纳入
 – 立会时间控制做的不够好
 – 经理干涉仍然过多
 – 早期的工作依然是CMM式的
视频产物的三轮Sprint
? 第一轮(4.6——4.27)
 – Sprint Goal:搭建初步调试的产物环境
? 第二轮(4.27——5.10)
 – Sprint Goal:单视频收录扩容
? 第三轮(5.10——5.30)
 – Sprint Goal:剧集聚类和排序质量改进
视频产物的三轮Sprint(2)
? 好的实践
 – 提出上线标准,每一轮迭代目标相对明确
 – 每一轮都有交付物产出
 – 快速响应了产物需求的变化
? 待改进实践
 –   每一轮都存在遗留的测试问题
 –   每一轮Sprint没有做kickoff/Review会议
 –   没有善用一些工具,造成时间计划估算有误
 –   遭遇人员离职,保证人员稳定对于Sprint非常重要
每一天,为明天

More Related Content

厂肠谤耻尘从理论到实践

  • 1. SCRUM从理论到实践 You do not do agile, You are agile vertical@rd.netease.com
  • 4. Why Scrum? ? 传统开发流程:流程可控 VS Scrum:交付实际商业价值 ? 市场,用户,需求变化剧烈,必须拥抱变化 ? 人本精神,迭代试错,群体决策,自我管理…
  • 6. void run_scrum() 其实呢,是这段伪码.. { const int Sprint_Length = X; int velocity = get_past_performance(); // Scrum 中的三个角色 Role team, product_owner, ScrumMaster; // Scrum中的制品 Product_Backlog product_backlog; Sprint_Backlog sprint_backlog; Burndown_Chart sprint_burndown_chart,release_burndown_chart; Product_Increment product_increment; //开始项目的三个准备条件 setup_team(team); define_Definition_of_Done(team, product_owner); initial_project(&product_backlog ); //每一次while 循环为一次迭代 while (!is_empty(product_backlog)){ run_sprint_planning_meeting(product_backlog, velocity, &sprint_backlog); //每一次for循环为一个工作日 for(num_of_day = 1; num_of_day <= Sprint_Length; num_of_day ++){ run_daily_scrum_meeting(&sprint_burndown_chart); do_development_activity(sprint_backlog, &product_increment); } run_sprint_review_meeting(product_backlog, product_increment); run_retrospective_meeting(); update_product_backlog(&product_backlog, &release_burndown_chart); update_velocity(&velocity); } }
  • 8. 叁类“猪”角色 Scrum Master Scrum Team Product Owner
  • 9. 三类“鸡”角色 用户 利益相关者(客户,提供商) 老板
  • 10. 四种会议 ? 每日Scrum立会(精髓所在) ? Scrum计划会议 ? Scrum评审会议 ? Scrum回顾会议
  • 11. 厂肠谤耻尘叁宝之——计划扑克牌 ?由 ScrumMaster召集讨论 Sprint Backlog中的Story,并对 每一个Story做任务分解 ? 对每个任务,Scrum团队每个 成员同时出牌估算完成时间, 其中估算数值最大最小的人, 说明估算理由 ? 重新出牌,直至最终大家对时 间估算基本相同
  • 12. Scrum三宝之——任务看板 ?任 务看板包含四栏,分别是 Story,计划做的任务,进行中任 务,已完成任务 ? 每当团队中的成员改变了任务的 当前状态,就将一个便签条移到 下一个栏目中 ? 一个Sprint之后,所有重要Story 的便签条应该处于完成状态 ? 在整个Sprint中,会随任务看板 生成燃尽图
  • 13. 厂肠谤耻尘叁宝之——燃尽图 ?有 效的信息发送源 ? 常常在一上来出现上升 ? 顶峰出现的位置能够展示团队 的成熟度
  • 14. 其它Agile实践 ? XP ? RUP ? Crystal ? Lean ? CMM(传统)
  • 15. Scrum小结 ? 过程透明,快速暴露问题和响应 ? 明确边界,每次聚焦有限的项目 ? 去中心化,群体决策 ? 团队不断试错,总结,成长
  • 17. 每日Scrum立会 ? 好的实践 – 起到了及时沟通变动,梳理优先级的作用 – 及时的沟通一定程度上取代了设计文档 – 有效减少腰部赘肉… ? 待改进实践 – 没有及早将测试和前端同事纳入 – 立会时间控制做的不够好 – 经理干涉仍然过多 – 早期的工作依然是CMM式的
  • 18. 视频产物的三轮Sprint ? 第一轮(4.6——4.27) – Sprint Goal:搭建初步调试的产物环境 ? 第二轮(4.27——5.10) – Sprint Goal:单视频收录扩容 ? 第三轮(5.10——5.30) – Sprint Goal:剧集聚类和排序质量改进
  • 19. 视频产物的三轮Sprint(2) ? 好的实践 – 提出上线标准,每一轮迭代目标相对明确 – 每一轮都有交付物产出 – 快速响应了产物需求的变化 ? 待改进实践 – 每一轮都存在遗留的测试问题 – 每一轮Sprint没有做kickoff/Review会议 – 没有善用一些工具,造成时间计划估算有误 – 遭遇人员离职,保证人员稳定对于Sprint非常重要