您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > SDM 242Scrum 介绍最新的快捷软件研发过程.
SDM242Scrum:介绍最新的快捷软件研发过程朱敏博士微软有限公司议程1快捷软件开发过程[AgileSoftwareDevelopment]什么是Scrum?Scrum的重要特性Scrum工作流Scrum团队的组成产品主管[ProductOwner]Scrum主管[ScrumMaster]Scrum团队议程2Scrum研发过程概况产品记录[ProductBacklog]Sprint规划会议[SprintPlanningMeeting]Scrum记录[ScrumBacklog]日常Scrum[DailyScrum]Sprint评估会议[SprintReviewMeeting]Sprint回顾会议[SprintRetrospectiveMeeting]调整Scrum规模[ScalingScrum]议程3Scrum带来的挑战资源指南问题回答快捷软件开发过程速度,适应性和灵活性是现代商业软件开发的本质AgileSoftwareDevelopment在不同公司的数以千计的不同项目体现了有效性和可行性特别适用于小型研发队伍经常性的推出产品更新(=10团队成员)一个快捷轻便的过程一个迭代递增型的实践一个适应和经验型的系统管理现存软件工程实践的包装[Awrapperforexistingengineeringpractices(XP,RUP)]一个提高软件生产效率,改善沟通和合作的方法什么是Scrum?Scrum的重要特性自发组织管理的团队由商业价值[BusinessValue]驱使的频繁而快速的检验和规划,使功能不断更新和加强及时控制需求利益等因素的冲突和矛盾实时地监测和扫除障碍Scrum工作流程*Source:工作流程:另一视角*Source:团队的组成:ProductOwner代表产品线的利益,与ScrumMaster和ScrumTeam合作负责管理和确定产品记录的优先次序,相应按照商业价值开发产品更新换代的功能侧重于投资回报ReturnOfInvestmentScrum团队的组成:ScrumMaster为ScrumTeam服务,确保每一个成员都认同Scrum价值观和遵守其游戏规则组织每天的DailyScrum会议负责保证ScrumTeam的持续进展决策和免除障碍帮助ScrumTeam规划Sprint计划Scrum团队自我管理,自我组织,多功能,通常由6–10人组成负责将ProductBacklog转化成Sprint中的工作项目所有团队成员协调,合作和完成Sprint中每一个规定的工作所有团队成员和ScrumMaster负责每一个Sprint的成功Scrum研发过程-概况1Scrum的进程由一系列迭代过程Sprints组成需要研发的功能在ProductBacklog中列表表中的项目是商业和技术功能的动态序列Sprint从SprintPlanningMeeting开始ProductOwner从ProductBacklog中选择最高级别和最优先的项目去实现ScrumTeam决定该项目有多少可以在Sprint中开发完成Scrum研发过程-概况2经同意要实现的功能转到SprintBacklogScrumTeam一步步开发需要的功能,ScrumMaster通过DailyScrum会议关注每天的进展Sprint结束时,在SprintReviewMeeting会议上Sprint向ProductOwner给出Production-Quality和DemonstrableBusinessFunctionality产品记录:ProductBacklog每一个产品线有一个专门的ProductBacklog由ProductOwner负责优先级确定的,主要的产品项目表格FeaturesFunctionsTechnologiesEnhancements次序完全由商业价值决定随时间推移产生商业价值变化导致从新确定项目的优先次序(Reprioritization)最高级别的产品更新换代项目需要立刻进行分析和估计,决定最终的研发要求Sprint规划会议:上半部分整个会议通常需要一天在Sprint开始时进行ProductOwner描述ProductBacklog中最高级别的项目ProductOwner回答ScrumTeam关于项目内容,目的和具体功能的问题ScrumTeam估计可以在Sprint中完成的任务被选择的项目转移到SprintBacklogScrumTeam确定Sprint的目标简单描述哪些任务回在Sprint中完成概括终结SprintBacklogSprint规划会议:下半部分ScrumTeam分别讨论规划Sprint用户要求(UserStories)分化成具体的工程任务进行时间和人数上的估计ProductOwner保证在这次Sprint中其内容不会更改如果重要改变发生使得ProductOwner预料Sprint内容需要更改,那么该Sprint就被取消,新的Sprint产生,需要进行另一个SprintPlanningMeetingScrum记录Scrum记录是ScrumTeam承诺在Sprint中能够完成的工作ScrumTeam基于ProductOwner设置的优先权和重要性选择ProductBacklog的项目放入SprintBacklogScrumTeam决定Sprint能完成多少工作ScrumTeam维护和更新SprintBacklog:多少工作以完成,多少尚未完成在Sprint保存的工作每天计算更新和发布ProductOwner决定如果某份工作需要从Sprint中删除,必须保证Sprint的目的仍能达到日常Scrum1ScrumTeam每天在同一时间召开会议,通常在早晨以确定一天的工作计划对项目进行快速总结,ScrumTeam可以从新考虑和更新任务分享最重要的信息一般是15–30分钟日常Scrum2在每一次DailyScrum中每个小组成员回答下面3个问题:从昨天到现在你完成了什么工作?你今天准备做什么?你有什么障碍或依赖?日常Scrum3ScrumMaster保证会议简洁明快,焦点集中于每个人的3个问题ProductOwner在会议上旁听,主要兴趣在于项目进展和困难ScrumTeam由此可以知道整个项目进展的时间表日常Scrum4不是项目状况更新会议,或关于某个成员是否落后于时间安排是Scrum成员互相的承诺不能分散精力成为系统设计讨论会会议中提到的问题应会后解决Sprint评估会议ScrumTeam向ProductOwner或其他有兴趣的人员演示和报告Sprint开发的成果和进展产生对比于SprintPlanningMeeting定义的需求和功能的评价评估是非正式的,是对Sprint的一个自然总结报告,不应分散ScrumTeam的注意力每一个月举行一次Sprint回顾会议ScrumMaster鼓励每一个ScrumTeam成员去修正Scrum的研发和管理过程,使下一个Sprint更为有效和愉快调整Scrum规模使得Scrum适合于大型软件开发的主要方法:ScrumofScrums每一个ScrumTeam同样有一个代表(通常是ScrumMaster),参与ScrumofScrums会议协调多个ScrumTeams的工作这些会议类似于DailyScrum,但每周召开一次Scrum带来的挑战ThesuccessofScrumislargelyaboutexecution将PM/Dev/Test的职责转化成ScrumTeam确保在30天内有高质量的产品紧张积极的编程时间表完全可以测试的软件产品更新换代构件序列性地更改体系结构,避免从新设计资源指南–书籍AgileSoftwareDevelopmentwithScrumbyKenSchwaberandMikeBeedleAgileProjectManagementwithScrumbyKenSchwaber资源指南–网站AgileAlliance://资源指南–论坛和论文YahooScrumDevelopmentdiscussiongroup://://scholar.google.com/scholar?q=scrum+software+development&ie=UTF-8&oe=UTF-8&hl=en问题和回答
本文标题:SDM 242Scrum 介绍最新的快捷软件研发过程.
链接地址:https://www.777doc.com/doc-3141769 .html