笔者做敏捷项目已经近两年时间,对于敏捷的理解,认为最为关键的是需要注意两个方面,它们是“高度迭代”和“持续不断的客户反馈”。
高度迭代:迭代就是指产品的开发过程中,一个完整的开发活动周而复始的进行,产品的功能、性能、可用性在周期活动的叠加中不断得到更新和加强。甚至指在一个迭代周期内产品活动也具显著的周期性。同时,团队间、团队内部成员的高度协作及时帮助解决了各成员的依赖性问题,因此,也促进了各个成员工作的顺利开展,保障了产品活动稳定的持续性、周期性。以测试为例,传统开发模式下,测试人员可以因进入测试阶段的条件不完全满足而继续的等待。而在高度迭代的敏捷项目里,不同的是,我们希望测试人员能够尽可能的做能够做的工作,尽可能的早工作。“等待”在敏捷开发、敏捷测试范畴里已是一种错误概念了。
持续不断的客户反馈:指在产品开发任何时期,代表项目业务(Business)的利益干系人(Stakeholder)都要参与到产品的需求分析,设计,以及其他活动的决策制定中来。致力于在短时间内帮助团队实现将客户的需求转化为高质量的可消费产品,并转化成利润。
敏捷开发的商业价值
敏捷开发自 2001 年《敏捷宣言》(“AGILE MANIFESTO”) 1 的创生,经过多年的打磨和退火已经成为今天非常流行和有过许多成功案例的开发模式。正如前人所说,传统的东西就是用来打破的,传统的瀑布式开发模式必然逐渐退出历史舞台,敏捷开发、敏捷测试是在新环境里产生出来的打破传统的新开发模式。而敏捷也将会在将来,甚至现在转化成更适合现代化软件开发、测试团队的方法和实践。在本文的第一部分,我们以两个游戏类比了敏捷和传统开发的差异,这里为了进一步帮助大家对敏捷的价值有更清晰的理解,我们借鉴前人的研究结果:
图 2. 敏捷与传统开发的比较 首先敏捷开发过程比传统开发要为项目和产品带来更低的风险(RISK)。为什么呢?传统开发缺乏持续的客户反馈 , 产品一旦从需求阶段退出,整个开发团队近似封闭工作,团队虽努力去实现曾经认定的目标,但因月有阴晴圆缺,市场需求也瞬息万变(例如提出需求的客户已经退休)。这使得产品在数月后,数年后发布时已经失去了占领甚至进入市场的最佳契机。
而如果你还在考虑使用传统开发模式用现在乃至将来一、两年的时间来开发一个结构复杂,精益求精而又功能庞大的产品,那么你得好好做好失败的准备了。而正是因为出于对这种风险的考虑,越来越多的人认识到敏捷开发要比传统开发能够为企业带来更大的利润空间和更低的投资风险。
此文章共有8页 上一页 1 2 3 4 5 6 7 8 下一页
文章来源:中国项目管理资源网
|