敏捷过程简介
2001年,Kent Beck等17位编程大师共同发布了《敏捷软件开发宣言》,强调:
“人”以及“人与人的互动” 胜于 “过程”和“工具”。
可运行的软件胜于 面面俱到的文档
客户合作 胜于 合同谈判响应变化 胜于 遵循计划
这是一种全新的软件过程思维。最初的软件 (1960-70 年代) 的顾客都是大型研究机构、军方等,他们需要软件系统来搞科学计算、军方项目、登月项目等,这些系统相当庞大,对准确度要求相当高。到了1980-90年代,软件进入了桌面软件的时代,开发的周期明显缩短,各种新的方法开始进入实用阶段。但是软件发布的媒介还是CD、DVD,做好一个发布需要较大的经济投入,不能频繁更新版本。而进入了互联网时代以来,大部分的服务是通过网络服务器端实现,在客户端有各种方便的推送渠道。同时技术更新的速度在加快, 那种一个大型团队用一个固定技术开发2-3 年再发布的时代已经过去了,由于网络的转播速度和广度,知识的获取更加容易,很多软件服务可以由一个小团队来实现。此外用户需求的变化也在加快,开发流程必须跟上这些快速变化的节奏。这也正是敏捷过程诞生的原因,可以说这其中有一定的时代必然性。
以快速的增量和迭代方式进行软件开发是敏捷过程的本质,我们也能归纳出一些敏捷过程模型的主要思想: