您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 敏捷(scrum)培训
敏捷开发测试Scrum模式分享会开发测试无休止的加班产品埋怨开发成果团队锐气大减计划早已面目全非了需求不断的在变成本or进度or质量现在的工具和流程效率很低敏捷开发之SCRUM•Scrum是一个轻量级的软件开发方法•Scrum是一个敏捷开发框架,是一个增量的、迭代的开发过程。在这个框架中,整个开发周期包括若干个小的迭代周期,每个小的迭代周期称为一个Sprint,每个Sprint的建议长度2到4周。•在Scrum中,使用产品Backlog来管理产品或项目的需求,产品backlog是一个按照商业价值排序的需求列表,列表条目的体现形式通常为用户故事。Scrum的开发团队总是先开发的是对客户具有较高价值的需求。在每个Sprint中,Scrum开发团队从产品Backlog中挑选最有价值的需求进行开发。•Sprint中挑选的需求经过Sprint计划会议上的分析、讨论和估算得到一个Sprint的任务列表,我们称它为Sprintbacklog。在每个迭代结束时,Scrum团队将交付潜在可交付的产品增量。敏捷开发之敏捷宣言敏捷团队传统团队个体与交互(Individualsandinteractions过程和工具(processesandtools)可工作的软件(Workingsoftware)面面俱到的文档(comprehensivedocumentation)客户的参与(Customercollaboration)合同的谈判(contractnegotiation)响应变化(Respondingtochange)遵循计划(followingaplan)他们使用了scrum•Google•IBM•Nokia•Siemens•Philips•Accenture•Sun•Ubisoft•Bleum还有他们也用了scrumSAP•Microsoft•Infosys•Oracle•Wipro•Motorola•Yahoo!•Schneider•Agilent•Irdeto•DoubleClick•Autodesk•TencentScrum采用比较Scrum工件RolesArtifactsMeetingsProcessProductOwnerProductBacklogSprintPlanningSprintGoalScrumMasterSprintBacklogDailyScrumBlocksListTeamIncrementSprintReviewStakeholdersSprintRetrospectiveScrum角色•“猪”类人员与“鸡”类人员“猪”类人员•产品负责人产品负责人(ProductOwner)的职责如下:确定产品的功能。决定发布的日期和发布内容。为产品的ROI负责。根据市场价值确定功能优先级。每个Sprint,根据需要调整功能和优先级(每个Sprint开始前调整)。接受或拒绝接受开发团队的工作成果。“猪”类人员•ScrumMaster作为TeamLeader和Productowner紧密地工作在一起,他可以及时地为团队成员提供帮助。•他必须:保证团队资源完全可被利用并且全部是高产出的。保证各个角色及职责的良好协作。解决团队开发中的障碍。做为团队和外部的接口,屏蔽外界对团队成员的干扰。保证开发过程按计划进行,组织DailyScrum,SprintReviewandSprintPlanningmeetings。“猪”类人员•Team(负责产品的开发)一般情况人数在5-9个左右(7个人最佳)团队要跨职能(包括开发人员、测试人员、用户界面设计师等)团队成员需要全职。(有些情况例外,比如数据库管理员)在项目向导范围内有权利做任何事情已确保达到Sprint的目标。高度的自组织能力。向ProductOwner演示产品功能。团队成员构成在sprint内不允许变化。团队整体向产品开发负责。“鸡”类人员backlog•Productbacklog•SprintbacklogProductbacklog•在项目开始的时候,productowner要准备一个根据商业价值排好序的客户需求列表,•最终交给客户的产品特性列表•Scrumteam会根据这个来做工作量的估计,•Productbacklog应该涵盖所有用来构建满足客户需求的产品特性,包括技术上的需求,bug,用户提出需要改进及升级列表•高优先级的一些产品特性需要足够的详细,以便于工作量的估计和测试,•对于以后将要实现的特性可以不够详细Productbacklog注意事项•在列表上层的故事首先被团队完成•Productbacklog不是制定一次就完了的,它是动态的,需要持续的被修订,可能会出现故事的增加,删除和修改,合并或者拆分•任何一个backlog的目标都是:它应该足够短,级别足够高,无特殊情况不需要修改,如果backlog改变了,应该认为是backlog错了,而不是需求变更了,变更需求通常意味着backlog太长或者太详细,比如把复杂的算法或逻辑也写入了backlog中了,要不就是写的太含糊不清楚,需要花费太多时间猜测它究竟讲的是什么。Productbacklog案例•样式:作为【用户的类型】,我希望可以【先这样做,然后那样做,就应该得到……的结果】以便【业务价值】•按钮:作为购机票者,我希望可以通过新华旅行网找到一张机票,以便能够更快的找到一张正确的机票•注意事项:使用用户语言非专业术语,每个故事开发周期不要太长(1-5天)怎样写Productbacklog??IDNAMEIMPestHOWTODEMONOTES1建卡305登录,打开建卡页面,输入卡号,转到卡片信息库,检查卡片库增加了一张未审核卡号需要UML的顺序图,目前不考虑加密的问题2查看明细106登录,点击审核通过,卡片信息生效,返回明细页面,看到新通过的卡面现在在页面上使用分页技术避免大规模数据库查询,和查看用户列表的设计相似3示例字段说明ID为一个唯一的标识,确定后最好不要改变NAME简单描述说明故事,如果太长说明故事需要拆分或者描述不清楚IMP优先级越高越早实现EST由team来根据故事描述内容来估算,owner讲完后,对不清楚的进行询问,大概了解后进行估算,HOWTODEMO从用户视角,从操作层面进行讲解这个故事如何通过软件来演示,也可以是一个用例,重要性高的backlog都要写“如何演示”NOTE相关信息,注释及说明Sprintbacklog它是sprint规划会议上产生的一个工作成果,Sprint英文指短距离的疾跑,就是说集中精力、在短时间内(一个迭代)完成一些价值,Sprintbacklog•当scrumteam选择并承诺了productbacklog中要提交的一些高优先级的产品功能后,这些功能点就会被细化成更小的任务,工作量小于2天,•当sprintbacklog完成后,scrumteam会根据它重新评估工作量,如果工作量和原始估计的工作量有较大差异,scrumteam和productowner协商,调整合理的工作量到sprint中,以确保sprint的成功实施SprintPlanningmeeting(前期准备)Productowner(身份或角色)客户,客户代理,产品型公司(市场或者产品)会议时间:4小时左右1):准备一个根据商业价值排好序的客户需求列表(productbacklog)2):一个按照优先级排列好并最终交互给客户的产品特性列表3):一个产品最终目标的远景,或者今后一段时间产品发展的路线图SprintPlanningmeeting(内容)前半部分(参加人员:productowner,scrumteam)前提条件:productowner准备了productbacklog1):评审productbacklog,评审版本,路线图,发布计划2):scrumteam会评审productbacklog中功能点的时间估计并确定这些估计尽可能的准确3):scrumteam会根据资源情况看多少个feature可以放在当前迭代中,4):scrumteam按照优先级的高低确定开发的先后顺序SprintPlanningmeeting(内容)后半部分(参加人员:scrumteam)前提条件:sprintbacklog已确定Scrummaster带领scrumteam分解这些sprintbacklog(功能点),细化成sprint任务,Dailyscrummeeting参加人员:team前提条件:计划会议结束,N天周期的sprint开始owner会议时间:控制在15分钟Owner可以参加,但是可以不发言三个问题:昨天故事,今天计划,遇到障碍会议要求:team中每个人都发言会议目的:得到一个项目的全局观,用于发现任何新的依赖,定位项目成员的要求,实时的调整当天开发计划Sprintreviewmeeting前半部分:演示和评审参加人员:team会议时间:控制在4小时ownerTeam演示在这个sprint中开发的产品功能Owner相关利益者参加,owner决定那些功能已经开发完成Sprintreviewmeeting后半部分:演示和评审参加人员:teamScrummaster和scrumteam一起回顾当前的sprint,评估大家一起的工作方式,找到好与不好的地方,想办法提升Scrum需要什么样子的团队•拥抱变化•快速交付•有效的沟通•信任,平等•可工作的软件为首要进度度量的标准•可持续的开发速度•简单—使未完成的工作最大化的艺术化•反省与总结印象•敏捷团队:自组织团队与客户紧密协作,通过高度迭代式、增量式的软件开发过程响应变化,并在每次迭代结束时交付经过编码与测试的有价值的软件•传统团队:与客户确定合同后在初期制定并遵循基于活动的完整计划,在重型过程和工具指导下,通过完成大量文档进行知识传递,最后交付需求THEEND致谢
本文标题:敏捷(scrum)培训
链接地址:https://www.777doc.com/doc-5555751 .html