初识agile随想

2008-04-09 04:06:37来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

以下内容是我在读了2002年第2期《程序员》杂志上林星先生有关敏捷方法的那篇文章之后的一些感想,由于是“初识”,所以在思想的把握和理解上可能有差错,尽请大家指点。

Agile Alliance成立于2001年2月,其价值观是:
Individials and interactions over processes and tools
Working software over comprehensive documentation
Custonmer collaboration over contract negotiation
Responding to change over following a plan

对于Agile所阐述的内容,我很赞同,并且我认为,抛开具体的方法论,这些见解应该是很容易接受和理解的。尤其在现今这样一个现实环境下,更是如此。实践发展到一定阶段,新的理论和思想便自然而成。

以我的理解,如果要改正既往的错误,我们需要真正承认如下的事实,这是首要的,并且也是从这四条价值观中所体现出来的:
承认人的重要性;
承认变化的存在;

一方面,在一个具体的软件开发场景下,人的具像很多,不同人扮演着不同的角色,发挥着各自的功能。程序员、设计人员、分析人员、管理人员以及客户,他们通过彼此间的沟通和交流,协作完成一个或多个任务。

另一方面,变化无处无时不在。需求的变化,设计的变化,技术手段的变化,还有人的变化,彼此穿插交互,如此的变数,极大的影响着软件开发。

承认上述两点是一切事情的开始。

我觉得Agile的价值观正是上述两点推理之后的必然结论,或者说其价值观的核心便是上述两点。

软件和建筑确是相异,这也就注定了monumental方法的缺陷(但非完全错误)。庞杂的结构,冗长的文档,繁琐的过程,漫长的周期,这些都成了失败或低效的根源。

人确有其特殊性。作为情感的动物,具有可伸缩的承受劳动强度的能力,以及彼此交流间理解和表达的偏差现象,现实环境中人们往往低估了情感、利用了可伸缩性、忽视了偏差现象。这便是第一条价值观的背景。

文档的变化与软件的变化必须同步,否则便部分的失去了其意义。此外,由于人的因素,文档表述的模糊和二义性很难避免。文档尽管有其存在的绝对必要性,然终究是辅助工具。软件本身才是首要的,是代码体现了设计者和实现者的真正意图,最终运行的也是代码本身。这是第二条价值观的存在理由。

还是由于人和变化这两个因素共同作用的结果,导致了第三条价值观的出现。保持动态和开放的态度,将客户也积极纳入team中,而不是为了满足需求的固定而排斥、回避和敷衍之,这是很危险的。

正如前所述,因为太多的变数,第四条价值观的含义是不言而喻的。

此外,理论如果只是理论,就很可惜,源于实践并回归实践,这是很重要的。就中国目前的现状而言,我觉得agile的思想似乎是很适合的,并且更适合于那些小型软件开发团体。

以人为本,拥抱变化,快速迭代,加强交互,以至适应。前提 方法 结果。这便是我所认识的agile思想。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:持续集成

下一篇:“轻”方法与满意质量——市场驱动的软件工程实践