资源描述
编辑母版标题样式,编辑母版文本样式,第二级,第三级,第四级,第五级,SDM 242,Scrum:,介绍最新的快捷软件研发过程,朱敏博士,微软有限公司,议程 1,快捷软件开发过程,Agile Software Development,什么是,Scrum?,Scrum,的重要特性,Scrum,工作流,Scrum,团队的组成,产品主管,Product Owner,Scrum,主管,Scrum Master,Scrum,团队,议程 2,Scrum,研发过程,概况,产品记录,Product Backlog,Sprint,规划会议,Sprint Planning Meeting,Scrum,记录,Scrum Backlog,日常,Scrum,Daily Scrum,Sprint,评估会议,Sprint Review Meeting,Sprint,回顾会议,Sprint Retrospective Meeting,调整,Scrum,规模,Scaling Scrum,议程 3,Scrum,带来的挑战,资源指南,问题回答,快捷软件开发过程,速度,适应性和灵活性是现代商业软件开发的本质,Agile Software Development,在不同公司的数以千计的不同项目体现了有效性和可行性,特别适用于小型研发队伍经常性的推出产品更新,(=10,团队成员,),一个快捷轻便的过程,一个迭代递增型的实践,一个适应和经验型的系统管理,现存软件工程实践的包装,A wrapper for existing engineering practices(XP,RUP),一个提高软件生产效率,改善沟通和合作的方法,什么是Scrum?,Scrum的重要特性,自发组织管理的团队,由商业价值,Business Value,驱使的频繁而快速的检验和规划,使功能不断更新和加强,及时控制需求利益等因素的冲突和矛盾,实时地监测和扫除障碍,Scrum工作流程,*Source:,http,Scrum,工作流程,:,另一视角,*Source:,http,Scrum团队的组成:Product Owner,代表产品线的利益,与,Scrum Master,和,Scrum Team,合作,负责管理和确定产品记录的优先次序,相应按照商业价值开发产品更新换代的功能,侧重于投资回报,Return Of Investment,Scrum团队的组成:Scrum Master,为,Scrum Team,服务,确保每一个成员都认同,Scrum,价值观和遵守其游戏规则,组织每天的,Daily Scrum,会议,负责保证,Scrum Team,的持续进展,决策和免除障碍,帮助,Scrum Team,规划,Sprint,计划,Scrum团队,自我管理,自我组织,多功能,通常由,6 10,人组成,负责将,Product Backlog,转化成,Sprint,中的工作项目,所有团队成员协调,合作和完成,Sprint,中每一个规定的工作,所有团队成员和,Scrum Master,负责每一个,Sprint,的成功,Scrum,研发过程,-,概况,1,Scrum,的进程由一系列迭代过程,Sprints,组成,需要研发的功能在,Product Backlog,中列表,表中的项目是商业和技术功能的动态序列,Sprint,从,Sprint Planning Meeting,开始,Product Owner,从,Product Backlog,中选择最高级别和最优先的项目去实现,Scrum Team,决定该项目有多少可以在,Sprint,中开发完成,Scrum,研发过程,-,概况,2,经同意要实现的功能转到,Sprint Backlog,Scrum Team,一步步开发需要的功能,Scrum,Maste,r,通过,Daily Scrum,会议关注每天的进展,Sprint,结束时,在,Sprint Review Meeting,会议上,Sprint,向,Product Owner,给出,Production-Quality,和,Demonstrable Business Functionality,产品记录,:Product Backlog,每一个产品线有一个专门的,Product Backlog,由,Product Owner,负责,优先级确定的,主要的产品项目表格,Features,Functions,Technologies,Enhancements,次序完全由商业价值决定,随时间推移产生商业价值变化导致从新确定项目的优先次序,(,Reprioritization,),最高级别的产品更新换代项目需要立刻进行分析和估计,决定最终的研发要求,Sprint,规划会议,:,上半部分,整个会议通常需要一天,在,Sprint,开始时进行,Product Owner,描述,Product Backlog,中最高级别的项目,Product Owner,回答,Scrum Team,关于项目内容,目的和具体功能的问题,Scrum Team,估计可以在,Sprint,中完成的任务,被选择的项目转移到,Sprint Backlog,Scrum Team,确定,Sprint,的目标,简单描述哪些任务回在,Sprint,中完成,概括终结,Sprint Backlog,Sprint,规划会议,:,下半部分,Scrum Team,分别讨论规划,Sprint,用户要求,(User Stories),分化成具体的工程任务进行时间和人数上的估计,Product Owner,保证在这次,Sprint,中其内容不会更改,如果重要改变发生使得,Product Owner,预料,Sprint,内容需要更改,那么该,Sprint,就被取消,新的,Sprint,产生,需要进行另一个,Sprint Planning Meeting,Scrum,记录,Scrum,记录是,Scrum Team,承诺在,Sprint,中能够完成的工作,Scrum Team,基于,Product Owner,设置的优先权和重要性选择,Product Backlog,的项目放入,Sprint Backlog,Scrum Team,决定,Sprint,能完成多少工作,Scrum Team,维护和更新,Sprint Backlog,:,多少工作以完成,多少尚未完成,在,Sprint,保存的工作每天计算更新和发布,Product Owner,决定如果某份工作需要从,Sprint,中删除,必须保证,Sprint,的目的仍能达到,日常,Scrum,1,Scrum Team,每天在同一时间召开会议,通常在早晨以确定一天的工作计划,对项目进行快速总结,Scrum Team,可以从新考虑和更新任务,分享最重要的信息,一般是,1530,分钟,日常,Scrum,2,在每一次,Daily Scrum,中每个小组成员回答下面,3,个问题,:,从昨天到现在你完成了什么工作,?,你今天准备做什么,?,你有什么障碍或依赖,?,日常,Scrum,3,Scrum Master,保证会议简洁明快,焦点集中于每个人的,3,个问题,Product Owner,在会议上旁听,主要兴趣在于项目进展和困难,Scrum Team,由此可以知道整个项目进展的时间表,日常,Scrum,4,不是,项目状况更新会议,或关于某个成员是否落后于时间安排,是,Scrum,成员互相的承诺,不能,分散精力成为系统设计讨论会,会议中提到的问题应会后解决,Sprint,评估会议,Scrum Team,向,Product Owner,或其他有兴趣的人员演示和报告,Sprint,开发的成果和进展,产生对比于,Sprint Planning Meeting,定义的需求和功能的评价,评估是非正式的,是对,Sprint,的一个自然总结报告,不应,分散,Scrum Team,的,注意力,每一个月举行一次,Sprint,回顾会议,Scrum Master,鼓励每一个,Scrum Team,成员去修正,Scrum,的研发和管理过程,使下一个,Sprint,更为有效和愉快,调整,Scrum,规模,使得,Scrum,适合于大型软件开发的主要方法,:Scrum of Scrums,每一个,Scrum Team,同样有一个代表,(,通常是,Scrum Master,),参与,Scrum of Scrums,会议协调多个,Scrum Teams,的工作,这些会议类似于,Daily Scrum,但每周召开一次,Scrum,带来的挑战,The success of Scrum,is largely about execution,将,PM/Dev/Test,的职责转化成,Scrum Team,确保在,30,天内有高质量的产品,紧张积极的编程时间表,完全可以测试的软件产品更新换代构件,序列性地更改体系结构,避免从新设计,资源指南,书籍,Agile Software Development with Scrum,by Ken Schwaber and Mike Beedle,Agile,Project Management with Scrum,by Ken Schwaber,资源指南,网站,Agile Alliance,Scrum web site,Scrum meets RUP,资源指南,论坛和论文,Yahoo Scrum Development discussion group,http:/,Google Agile Methodologies Directory,Google Scholar Papers about Scrum,http:/=scrum+software+development&ie=UTF-8&oe=UTF-8&hl=en,问题和回答,
展开阅读全文