【最新】招聘信息

当前位置: 主页 > 智能停车

如何进行开发方法的讨论

来源:    发布时间:2011/4/20    浏览次数:1328次

关于开发方法的讨论一直是个热门的话题。不论是学者还是实践家都在不断地寻找一种好的方法,从经典的瀑布模型到现在流行的敏捷开发,都给软件开发带来了一次次的进步。虽然方法如此之多,但老实说,虽然瀑布模型很难应对当前快速变化的软件需求,但大部分情况下,软件开发还是按照它来进行开发的,最多有一些迭代的变化。至少我在参与了不少项目后发现基本上都是按照它来进行的。

瀑布模型明确指出了软件开发过程所要经历的每一步流程,每个阶段都是以上一个阶段的完成而开始的。同时,在每个阶段的结束时,要有一个里程碑的检查,来决定是否可以进入下一个阶段。这种方式比较适合需求基本稳定或者大型的项目。迭代的开发模式阶段与瀑布模型一致,不同的是当一个阶段的工作出现问题时允许回溯到上一个阶段进行改进,这种方法其实更加实用。因为,在现实中,很少有项目在编码与需求或设计文档要求的完全一样。现在热论中的敏捷开发好像在国内实施的并不是很多,这种方法讲究的是轻量级的入手与实施,简单灵活的设计以备随时应对需求的变化。国外似乎应用的更多,我觉得可能这种方法看似简单,但对开发人员的要求极高,光是灵活的设计以及对面向对象思想的深入理解,我们又有多少人都够胜任呢?

我个人觉得方法的使用还是要与项目的特征相结合。比如说我的上个项目是个Web的项目,那就应该用快速原型开发的方法:在接到客户需求后,第一时间内就是进行UI的设计,把所有页面全都按已知需求做出来,以及页面间的链接做出来,然后拿给客户看,这种方法对需求的定位比较准备,能够在早期就与客户进行有效的沟通,启发客户提供进一步详细的需求描述,对后期的开发有着极大的帮助。再比如我现在正在做的一个类似MIS的系统,所有的需求都已明确,客户提供了详尽的需求资料,而且是在先前系统上做的一个增加功能的版本。这种情况下,我们就应该选择走标准的流程。

项目类型的不同,决定的开发方法选择结果的不同。项目经理应该熟悉各种开发方法,才可以在对项目分析之后决定用什么样的开发方法来应对它。

】【打印】【关闭
优业合作伙伴