一、问题的提出
笔者近几年一直从事信息系统的开发,特别是有关国家机关和企业信息系统的开发工作,取得了许多的经验和教训。其中一个深切的体会是,需求的不断变化,如果不能很好的应对,会导致整个项目的进度和质量都难以控制,最终使整个系统失败。特别是在我国,用户对于如何应用计算机
软件并没有一个成熟的经验,在项目进行中用户会频繁的改变和增加各种要求。当最终完成系统的建设时,却发现企业的业务需求已经发生了很大的改变,一方面是系统的设计已经无法很好地满足新的需求,另一方面是项目周期大大超过预期,项目发生亏损。
据美国
软件工程实施现状的调查,
软件研发的情况也是很难预测,大约只有10%的项目能够在预定的费用和进度下交付。在商用
软件产业中,这一现象尤为严重。
因此如何从
软件工程的角度,通过采用适当系统设计方法和加强
项目管理来解决需求不断变化的问题,是各个
软件开发商的一个重要课题。通过实践,感到采用敏捷方法的基本思想和原则来设计系统和处理需求变化问题,能够产生较好的效果。
下面就从系统设计和
项目管理等方面谈一下这方面的体会。
二、需求变化带来的问题
作为
软件开发商,当接到一个项目后,一般的做法是首先由用户提出需求,然后开发商根据用户的需求作出一个系统实现方案,而用户通常并没有实质地理解方案,随即通过了方案,开始了
软件的开发工作。根据笔者所开发过的多个系统,开发前期,大多数单位并没有明确的想法,也提不出确切的需求,因为业务人员不了解计算机技术是怎样实现业务流程的。用户总是希望开发单位根据当前的业务流程先做出一个样板来,然后再进行改造,而多数用户认为
软件修改很容易。
尽管已经做好了系统规划,签订了功能较明确的合同,然而随着系统分析、系统设计和系统实施的进展,当客户在项目部署后看到真正的
软件系统的界面及操作方式,客户的需求就被激发起来,会根据自己的对
软件的理解和日常工作的习惯,对
软件的处理及操作方式提出修改,而这种修改往往比较随意,因此导致开发方需要对流程、界面、以及相关文档经常的大量的修改,这些成为开发方的一个很大的负担,而这种负担对用户基本是看不见的。
三、用敏捷方法方法应对需求变化
1.敏捷建模(Agile Modeling)进行系统设计
此文章共有4页 1 2 3 4 下一页
文章来源:互联网