浅谈需求驱动的项目管理

http://tech.ddvip.com   2008年01月22日    社区交流

内容摘要:软件项目为什么会失败?这里我们提出以需求为中心的软件项目管理。通过提高需求描述的质量、采用小版本发布策略、将用户需求作为小版本的目标来组织和计划项目开发、积极应对需求变更、提供以用户需求为中心的项目进展视图,从而和客户一起来保证项目的成功。

  那么软件项目的这种特点,需要与之相应的项目管理工具。用斧子钉钉子的做法就有点不合时宜了。

  和传统项目还有一个很大的不同,当工程项目拖后了工期,可以多加人手,把工期赶回来。而软件就不这么简单了,新来的人要熟悉项目的内容就要花时间,工期很难完全赶上。很多IT的老总们体会不到这个问题,总以为多加人手,加班就能搞定。真正的有效的项目管理是要靠一个有效的管理体系来支撑的。

  需求的描述

  软件项目有很多不同类型。目前我们所说的软件项目,多数指的是应用类(Application)的软件项目,而不是系统类(System)的项目,如数据库,文件系统,开发工具。系统类的软件项目和应用类的项目有很大的不同。系统类的项目花很长时间研究体系架构(Architecture),设计系统的框架,模块之间的关系等等。而应用类的软件基本上会用现成的框架,如J2EE或Microsoft的平台等等,主要精力放在需求的实现上。中国目前的应用系统多数是为客户做定制开发的项目,比如各大企业、政府、机构、国防等做的系统,也有一些做产品的,如中小企业的财务系统,通用办公软件等等。 针对应用类的项目,我们看看使用Word写这类的需求有什么问题,为什么有问题。

  一般用Word来写需要,隐含了一个想法,就是一上来把需求都写好,定下来,然后给开发部门去实现。一般Word文档写的需求很庞大。而对于应用系统的开发, 我建议使用迭代的方法开发。上面提到了,瀑布式的开发已经成为了历史。需求一次性写好,很难。软件是慢慢成长起来的(见Microsoft Secrets),一个milestone,一个milestone的发展。象小孩子长大一样,中间可能会走弯路、错路,需要我们不短的调整、指引,最后他/她才能成才。你很难一开始就给他/她描绘一个一生的所有的详细场景,让他/她按照你的蓝图走(工程项目才能做到这样)。

作者:刘开阳    责编:豆豆技术应用

正在加载评论...