1. 敏捷软件开发 (ASD – Agile Software Development)
为了解决软件开发者所面临的困难,2001年7月,一个由17个方法学家组成的小组成立了敏捷软件开发联盟(Agile Software Development Alliance),简称为敏捷联盟(Agile Alliance)。有趣的是,小组每个成员的背景都不相同,但却最后达成了方法学家们通常不会一致通过的协议。该小组共同制定了一个宣言,该宣言包含4 个价值和12个原则,主要目的是促进更优秀的软件开发方法;该宣言还制定了ASD过程的标准。
如同软件工程协会的软件能力成熟度模型 (Software Engineering Institute’s Capability Maturity Model Integrated (CMMI))为重量级软件开发过程定义的需求,敏捷宣言则定了敏捷软件开发过程的需求。反应了这些需求的敏捷过程包含如下内容:
Agile Data (AD) Agile Microsoft Solutions Framework (MSF) Agile Modeling (AM) Agile Unified Process (AUP) Dynamic System Development Method (DSDM) Extreme Programming (XP) Feature Driven Development (FDD) Scrum Usage-Centered Design (UCD)
绝大多数的敏捷项目的开发团队都少于10个人,在同一地点工作,可以直接和利益关系人们(stakeholders)沟通,利用一些常用的建模工具比如写字板(writeboard)和公告板(corkboard),拥有自己的开发机器,使用一些必需的工具,比如测试工具。也有人指出,有些敏捷团队可能也会比较大(可能好几百人),可能分散在不同的地理位置上,有些人不是总能够很容易的接触到利益关系人 (Eckstein 2004)。虽然多数的敏捷团队都采用测试主导的开发方式(TDD – test-driven development),也就是开发的过程中间进行测试,写完一部分代码就测试一部分,他们通常都没有测试UI的工具。而且,他们几乎都没有可用性实验室(usability lab),因此从该角度来说,这样的敏捷和传统开发的区别不大。
我在图一描述了一个普通的敏捷SDLC*,包含了4个阶段:第0周期,开发阶段,发布阶段,和生产阶段。尽管很多敏捷开发者否认这种阶段式的概念,但实际上很多的敏捷过程中都包含了各个阶段,比如XP,AUP, 以及敏捷MSF(这里将“阶段”叫做track)。
此文章共有10页 1 2 3 4 5 6 7 8 9 10 下一页
文章来源:中国项目管理资源网
|