第2章 信息系统开发过程管理
为了保证信息系统开发顺利进行,不仅要有正确的思想和方法的指导,而且还要对开发过程实施有效管理。对信息系统开发过程的管理包括开发项目的评估、开发人员的管理、开发进度的管理以及成本控制等方面。目前对开发过程的管理大多采用能力成熟度模型(Capability Maturity Modd,CMM)或软件能力成熟度模型集成(Capability Maturity Model Integrated,CMMI),本章以CMM为基础,在介绍相关的概念、框架以及管理的关键域等内容的同时,以CMM2级和CMM3级为主,论述与信息系统开发阶段有关部分的过程管理,有关CMM的全面论述可参考相关资料。
2.1 CMM概述
2.1.1 CMM基本概念
1.CMM的产生及发展
随着计算机应用领域的不断拓展,应用软件的生产过程表现出高技术、高投入、高产出的智力密集型特征,发展成为一种新兴的产业。在软件业的发展过程中曾爆发了一场“软件危机”,表现为软件生产成本昂贵、软件产品不能满足用户要求或无法维护、软件的质量无法得到保证等。为了解决“软件危机”中出现的问题,人们进行了各种研究、探索和实践,其中包括开发方法、开发工具的研究等,但是由于软件生产过程是人脑思维的结果,因此对开发过程缺乏管理而导致因人的随意性和思维习惯的不一致、不规范而使开发失败,在认知上还缺乏统一的认识。20世纪70年代中期,美国国防部曾立题专门研究软件项目做不好的原因,发现70%的项目之所以失败是因为管理不善而引起,而不是因为技术实力不够,进而得出一个结论,即管理是影响软件开发项目全局的因素,而技术只影响局部。在商用软件产业中,这一现象尤为严重。1995年,美国共取消了810亿美元的软件项目,其中31%的项目未做完就取消了,53%的软件项目进度通常要延长50%的时间,只有9%的软件项目能够及时交付且费用不超支。由此可见,软件开发过程应全��考虑技术和管理两个方面的问题,开发技术与开发过程管理是信息系统开发的两个重要的支撑点。
……