敏捷开发流程(总7页)-CAL-FENGHAI.-(YICAI)-CompanyOnel-CAL-本页仅作为文档封面,使用请直接删除敏捷开发的相关简介敏捷定义Scrum是一个轻量级的软件开发方法Scrum是一个敏捷开发框架,是一个增量的、迭代的开发过程。在这个框架中,整个开发周期包括若干个小的迭代周期,每个小的迭代周期称为一个Sprint,每个Sprint的建议长度2到4周。在Scrum中,使用产品Backlog来管理产品或项目的需求,产品backlog是一个按照商业价值排序的需求列表,列表条目的体现形式通常为用户故事。Scrum的开发团队总是先开发的是对客户具有较高价值的需求。在每个Sprint中,Scrum开发团队从产品Backlog中挑选最有价值的需求进行开发。Sprint中挑选的需求经过Sprint计划会议上的分析、讨论和估算得到一个Sprint的任务列表,我们称它为Sprintbacklog。在每个迭代结束时,Scrum团队将交付潜在可交付的产品增量。敏捷的原则个体与交互胜过过程与工具可以工作的软件胜过面面俱到的文档客户协作胜过合同谈判响应变化胜过遵循计划这四句价值观用语句表达就是:自组织团队与客户紧密协作,通过高度迭代式、增量式的软件开发过程响应变化,并在每次迭代结束时交付经过编码与测试的有价值的软件。胜过与客户确定合同后在初期制定并遵循基于活动的完整计划,在重型过程和工具指导下,通过完成大量文档进行知识传递,最后交付需求。《敏捷宣言》12条原则1.最优先的目标是通过尽早地、持续地交付有价值的软件来满足客户。2.欢迎需求变化,甚至在开发后期。敏捷过程控制、利用变化帮助客户取得竞争优势。3.频繁交付可用的软件,间隔从两周到两个月,偏爱更短的时间尺度。4.在整个项目中业务人员和开发人员必须每天在一起工作。5.以积极主动的员工为核心建立项目,给予他们所需的环境和支持,信任他们能够完成工作。6.在开发团队内外传递信息最有效率和效果的方法是面对面的交流。7.可用的软件是进展的主要度量指标。8.敏捷过程提倡可持续发展。发起人、开发者和用户应始终保持稳定的步调。9.简化——使必要的工作最小化的艺术——是关键。10.持续关注技术上的精益求精和良好的设计以增强敏捷性。11.最好的架构、需求和设计产生于自我组织的团队。12.团队定期地对运作如何更加有效进行反思,并相应地调整、校正自己的行为。敏捷的角色1产品负责人产品负责人(ProductOwner)的职责如下:确定产品的功能。决定发布的日期和发布内容。为产品的ROI负责。根据市场价值确定功能优先级。每个Sprint,根据需要调整功能和优先级(每个Sprint开始前调整)。接受或拒绝接受开发团队的工作成果。2ScrumMaster作为TeamLeader和Productowner紧密地工作在一起,他可以及时地为团队成员提供帮助。他必须:保证团队资源完全可被利用并且全部是高产出的。保证各个角色及职责的良好协作。解决团队开发中的障碍。做为团队和外部的接口,屏蔽外界对团队成员的干扰。保证开发过程按计划进行,组织DailyScrum,SprintReviewandSprintPlanningmeetings。3Team负责产品的开发一般情况人数在5-9个左右团队要跨职能(包括开发人员、测试人员、用户界面设计师等)团队成员需要全职。(有些情况例外,比如数据库管理员)在项目向导范围内有权利做任何事情已确保达到Sprint的目标。高度的自组织能力。向ProductOwner演示产品功能。团队成员构成在sprint内不允许变化。团队整体向产品开发负责。敏捷工件1、ProductBacklog有优先级的故事列表,并估算故事点产品订单:产品订单(ProductBacklog)是整个项目的概要文档,它包含已划分优先等级的、项目要开发的系统或产品的需求清单,包括功能和非功能性需求及其他假设和约束条件。产品负责人和团队主要按业务和依赖性的重要程度划分优先等级,并作出预估。预估值的精确度取决于产品订单中条目的优先级和细致程度,入选下一个冲刺的最高优先等级条目的预估会非常精确。产品的需求清单是动态的,随着产品及其使用环境的变化而变化,并且只要产品存在,它就随之存在。而且,在整个产品生命周期中,管理层不断确定产品需求或对之做出改变,以保证产品适用性、实用性和竞争性。2、SprintBacklog当前Sprint要完成的...