敏捷开发在大型项目管理制度中的应用探讨2 ————————————————————————————————作者:————————————————————————————————日期:3 敏捷开发在大型软件项目管理中的应用探讨一、敏捷开发概述Scrum 是一种迭代式增量软件开发过程,通常用于敏捷软件开发。Scrum 在英语的意思是橄榄球里的争球。虽然Scrum 是为管理软件开发项目而开发的,它同样可以用于运行软件维护团队,或者作为计划管理方法。Scrum 是迭代的、 增量型的流程, 其流程如1 所示。Scrum构造的产品迭代周期为Sprints,工作的迭代时间一般为一到四周,并且是相互衔接的。Sprints是有固定的周期,结束于固定明确的日期,无论该工作完成与否,从不延长。在每一 Sprint的起始阶段,一个多职能的团队从已优先化的要求列表(下文中称Product Backlog)中挑选若干项目,并承诺在 Sprint的末期完成这些项目。在Sprint中,任务的内容不会变化。 每一工作日, 团队成员互相通告工作进度,并更新简易的剩余工作量直观表示图表。在Sprint的末期,团队将对这一阶段工作结果作一展示并取得相关的反馈,为下一 Sprint做好准备。 Scrum 强调生产可以使用的产品,意指在 Sprint的末期产品的“完成” ;在软件方面,是指编码已经被检测并可以随时交付使用。4 图 1 Scrum 周期图在 Scrum 中有三个基本的角色:产品所有者 (Product Owner),开发团队和Scrum Master 。1. 产品所有者( Product Owner )产品所有者(Product Owner )负责取得产品最大的商业价值,收集相关于产品的所有信息。从客户或产品的终端使用者,开发团队成员和项目管理者中获取并将信息转化为优先权项目列表。在一些情况下,产品所有者 (Product Owner)正是客户本人;在另一些情况下,客户可能是有不同需求的成百上千的人。产品所有者(Product Owner)这一角色在许多企业中是由产品经理或产品市场经理担任。2. 开发团队开发团队构建客户将会购买的产品:比如报表或软件。Scrum 团队是“多功能”的。它包括交付每一Sprint中的随5 时可交付产品所需的各类专门人员,并且它是有很高自律性和责任性“自我管理”的团队。团队决定承诺完成哪些任务和完成承诺任务最好的方法。Scrum 团队通常包括五到十个成员,然而团队大到15 个成员和小到3 个成员也有很好的收效,一个软件项目的开发团队包括程序员,界面设计师,检测员和研究人员...