近来某个项目由于需求变动十分频繁,传统的软件开发方法已经不适合这个项目的实际情况。所以,我引入了Agile software development(敏捷开发)。Agile所提倡的贴近现实、注重开发全过程互动等前卫的理念,使项目质量得到大大提高,同时在全方位改进了开发人员的知识水平,让他们更熟悉一个软件的开发过程。Agile要求客户与开发人员必须频繁互动,以应对客户随时可能变化的需求。双方的互动使得构建出来的软件产品更合乎客户要求,开发人员更能减少开发成本。
我在实际项目中对Agile的一些了解:
1,利用Agile开发WEB系统是一个迭代的过程,将庞大的需求切片,分成一个一个的完整的小需求,我们从中选出一部分,在一个小段的时间内,完成一个软件构建全过程,并快速发布出一个基本完整的,可使用的版本。
2,Agie注重要与客户的紧密交流,把客户当作软件开发过程中的成员。及时将系统功能呈现在客房眼前和迅速捕捉客户的需求。
3,Agile要求每一个团队的人数不宜大多,一般5到9人。如果大型项目需要庞大团队,可以将团队分组。
4,通过小步的快速迭代来逐步迫近项目的最终目标,所以沟通更为重要。
5,Agile要求开发人员的素质相对要高,沟通能力要比较好,对软件工程要有总体上的认识。
6,善用版本控制系统、发布工具、测试工具等。
7,注重原型(prototype)构造。当我们获得一个需求时,应该要在短时间内,构造出这个需求所包括的功能的原型。这个原型可以用HTML,CSS等简单直接的标识语言构建。原型构建成功后,我们可以借助自动化测试工具(如selenium),对原型进行测试和演示功能给客户检评。