如何用Scrum来管理项目?

2024年11月22日 21:29
有1个网友回答
网友(1):

一、敏捷管理理论
1、敏捷管理的定义
敏捷即灵活性,是动态的、适应于具体情况、迎合变化和自我完善的。敏捷项目管理是应对经常变化的、具有不确定性的软件项目的管理方法。敏捷是一种态度而不是一个流程,是一种氛围而不是方法。敏捷项目管理中最重要的一个术语就是创新。实施敏捷项目管理过程中项目管理者要注意:调整团队自身来适应变化,致力于产品,和客户进行协调,注重沟通。
2、敏捷管理的开发方法
常见的敏捷软件方法包括:Crystal、ASD(AdaptiveSoftwareDevelopment)、Scrum、FDD(FeatureDrivenDevelopment)、XP(ExtremeProgramming)、RUP(RationalunifiedProcess)等,它们都具有强调灵活、阶段迭代、反馈和逐步逼近目标的特性,本文中将重点介绍Scrum方法。
二、Scrum开发方法
Scrum(英式橄榄球争球队),软件开发模型是敏捷开发的一种,在最近的一两年内逐渐流行起来。正如Schwaber所言,Scrumisanagile,lightweightprocessthatcanbeusedtomanageandcontrolsoftwareandproductdevelopmentusingiterative,incrementalpractices。Scrum将软件开发团队比拟成橄榄球队,有明确的最高目标,熟悉开发流程中所需具备的最佳典范与技术,具有高度自主权,紧密地沟通合作,以高度弹性解决各种挑战,确保每天、每个阶段都朝目标有明确的推进。
1、Scrum方法的原理
(1)Scrumteam。指整个项目小组,不仅仅包括全职开发人员,也包括了发行软件会影响到的外部人员,比如市场营销人员和顾客。
(2)Backlog。Backlog是一种任务列表,包括ProductBacklog和SprintBacklog两种,是指导Scrum开发方向的指针。SprintBacklog是一个Scrum团队计划将要在当前Sprint中完成的所有功能列表。SprintBacklog实际上是ProductBacklog的一个子集,在ProductBacklog的纲要性指导下,SprintBacklog不断发展并且充实整个项目的ProductBacklog,使之趋于完善。比如:未细化的产品功能要求、Bugs、缺陷、用户提出的改进、具竞争力的功能及技术升级等,按优先级定义出来,这些任务可能不是完整的,甚至可能随时会更改或添加。
(3)Sprint(冲刺)。Scrum开发过程由一系列迭代的Sprint过程组成,一个Sprint过程就是一个冲刺过程,多个Sprint过程顺序进行,直至风险评估认为产品可交付为止。一个sprint是在限定时间段内的一系列开发活动,包括分析、设计、编码、测试等。通常为30天的迭代时间,把Backlog中的每一项安排在Sprint中,由团队估算出所需要的时间(按小时记)。每一次Sprint之后,一定要有可以交付使用的功能。每一次Sprint之后要回顾,团队按照既定的SprintBacklog目标来演示完成的内容。
(4)Scrummeeting。Scrummeeting是Scrum中项目管理的有效手段,分为两种:Sprintmeeting和Dailymeeting。Sprintmeeting是在下一个Sprint开始之前,即在当前sprint即将结束之时举行的,Sprintmeeting讨论并决定下一个sprint的sprintBacklog,会议举行的时间周期随Sprint的周期而定。