我对各敏捷开发方法的大致理解

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

1. SCRUM

SCRUM?这个单词我以前没见过,所以我就不喜欢它,呵呵.SCRUM本义表示"混乱",它包括

多个“怪异”的方法/过程名称。比如,SCRUM将开发过程分为30天的迭代周期,每个

迭代周期叫做一个Sprint(原意:冲啊!);每天有一个15分钟的短会,用来决定第二天

的任务安排这样的短会就叫做scrum。

我不喜欢SCRUM的原因如下:

1)一个方法,搞出这么多名词,加重我们程序员的负担,不好;

2)SCRUM的迭代周期为30天,而且一个周期叫一个"冲",那不是要累死我们程序员?

3)每天有一个15分钟的短会,唉,XX党的会多!

4)15分钟的短会叫"混乱",那....,15分钟能结束吗?

5)SCRUM强调,开发者每天要向管理者报告项目进度,唉,我受不了了....

2. Crystal

Crystal根据项目规模和项目的重要性(如发射火箭的项目和一个"hello world"程序的

重要性当然是不一样的)来区别项目,并赋以相应的方法,所以,crystal是方法的组合.

相对于其它敏捷方法,Crystal强调软件开发流程的纪律性,所以,它比其它敏捷方法易

于使用,但它的生产率不如XP等其它敏捷方法.

3. ASD(Adaptive Software Development)

ASD强调开发方法的适应性(Adaptive),这一思想来源于复杂系统的混沌理论(这个

名字大家应该都听说过了,炒股的用的很多,呵呵)。ASD不象其他方法那样有很多具体

的实践做法,它更侧重于理论,因为它的作者就是搞理论出身的。

4. FDD

FDD(Feature Driven Development)定义了5个流程,分别是Develop an Overall

Model、Build a Features List、Plan by Feature、Design by Feature和Build by

Feature。

前3个流程是在项目开始就进行的,其实总体相当于我们现在的系统分析;后两个则出

现在每次迭代周期中,FDD的迭代周期是两周,相当于我们现在的设计/编码/测试。

开发人员被归为两种,一种是主程序员,另一种是class所有者。主程序员不作具体的

编程工作,但要负责将Feature和Class对应起来,并充当开发协调者、设计者、技术

支持和指导者等;class所有者则进行实际的编程。我认为这样的划分对国内的软件开

发情况不合适,因为,真正达到主程序员水平的人,太少了!

对于ASD和FDD,国内介绍的还是比较多的.

5.XP

这个,大家都知道了,这里,就不说了,呵呵.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航