随着软件产业的迅猛发展,项目过程管理不善的问题日益突出,人们逐渐意识到产品质量主要取决于产品研制过程的质量,并将焦点由“技术”转移到“管理”。20世纪90年代,美国卡内基·梅隆大学软件工程研究所推出软件能力成熟度模型(CMM),后来,软件能力成熟度模型集成(CMMI)逐步取代CMM,成为软件过程框架的工业标准。该模型描述了从混乱的、不成熟的软件过程向成熟的、有纪律的软件过程改进的一条途径,然而,它只要求“做什么”,并不明确“怎么做”,对于推进实施来讲都还需要一个理解和本地化的过程。
本书紧扣CMMI二级至五级的过程要求,结合国内软件研制现状,设计了一套可以满足CMMI 5个等级共22个过程域通用目标和专用目标的实施细则,并给出了过程记录的参考模板,对于加快CMMI在软件研制单位推广、实施的进程,指导软件研制单位进行基于CMMI的软件质量管理体系建设,具有较好的借鉴作用,可作为推广应用CMMI的重要参考资料。
本书由刘文红确定编写内容和整体结构,并负责全书的统稿。本书共分为6篇: 第1~3章为第1篇基础篇,主要介绍CMMI基础知识、CMMI实施流程和软件生存周期模型;第4~9章为第2篇项目管理类过程,涵盖需求管理(ReqM)、项目策划(PP)、集成项目管理(IPM)、项目监控(PMC)、供方协议管理(SAM)、风险管理(RskM)、定量项目管理(QPM)7个过程域,主要涉及与项目策划、监督和控制有关的项目管理活动;第10~14章为第3篇工程类过程,覆盖需求开发(RD)、技术解决方案(TS)、产品集成(PI)、验证(Ver)和确认(Val)5个过程域,主要涉及软件的开发和维护活动;第15~19章为第4篇支持类过程,覆盖配置管理(CM)、过程和产品质量保证(PPQA)、测量与分析(MA)、决策分析和决定(CAR)、原因分析和决定(DAR)5个过程域,主要涉及支持产品开发和维护的活动,在实施其他过程中关联使用;第20~24章为第5篇过程管理类过程,包括组织过程定义(OPD)、组织过程焦点(OPF)、组织培训(OT)、组织过程绩效(OPP)、组织创新和部署(OID)5个过程域,主要涉及跨项目的定义、策划、资源分配、部署、实施、监督、控制、评估、测量和改进过程等相关的活动;第25章为第6篇工具篇,主要介绍CMMI支持工具。本书第1、2、4、7、8、10、20章由马贤颖编写,第3、5、6、11、13、14章由刘文红编写,第15、17、18、22、24章由董锐编写,第16、21、23章由张敏编写,第9、12章由陈青编写,第7、19章由张光迎编写,第25章由吴欣编写。杜会森、尹平、陈青、闫国英、张卫祥、魏波、张慧颖、王佳等参加了CMMI五个等级过程域部分内容的编写,窦朝晖、姜兴伟、郝玉恒、许洋等参与了部分内容的录入与校对工作。
本书是作者多年从事软件工程技术研究和CMMI质量体系建设的实践经验总结,实用性和指导性较强,可供从事软件工程理论和软件工程实践的人员参考,也可供进行CMMI质量管理体系建设的单位和相关人员学习。本书同样适合一般开发人员、测试人员、配置管〖1〗基于CMMI的软件工程实施: 高级指南〖1〗前言理人员、质量保证人员以及过程改进实践人员参考。
在本书出版之际,我们衷心感谢在编写过程中曾给我们大力支持和帮助的赵辉、谈利群、杨宝明、张卫民、许聚常等同志,同时也感谢清华大学出版社的大力支持。本书的编写参考了大量文献,我们对所有这些文献的作者表示真诚的谢意。
由于编者水平有限,书中难免有疏漏和不妥之处,敬请读者批评指正。
编者 2015年6月