(完整word版)全套CMMi软件质量管理体系,.docx
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
XXXXX计算机软件有限公司
XX软件质量管理体系
V1.0
XX软件研发部
2010/12/1
目录
第一篇总则 (3)
一、《XX软件质量管理体系》的实施 (3)
二、目的 (3)
三、背景介绍 (3)
四、体系总体介绍 (4)
第二篇项目管理 (6)
一、立项管理 (6)
二、结项管理 (13)
三、项目计划 (17)
四、项目监控 (26)
五、风险管理 (32)
六、需求管理 (36)
第三篇技术实现过程 (42)
一、技术预研 (42)
二、SCRUM过程 (45)
三、用户验收 (51)
四、技术评审 (54)
第四篇支撑过程 (60)
一、配置管理 (60)
二、质量保证 (66)
三、培训管理 (72)
四、服务与维护 (77)
第一篇总则
一、《 XX软件质量管理体系》的实施
XX计算机软件有限公司依据 CMMi (软件能力成熟度模型集成)框架,结合公司多年
来实施“敏捷开发”的开发方法的经验,以及公司的实际情况,编写的《XX软件质量管理
体系》 V1.0 版已经编写完成。
本体系文档是公司质量管理体系法规性文件,是指导公司建立并实施质量管理体系的
行动准则。公司全体员工必须遵照执行。
二、目的
本文档的目的在于:
通过建立软件过程管理体系,提高企业的软件过程能力,保证软件质量,保证商
务目标的实现。
基于精简的 CMMi 3 级管理体系,结合企业实际情况和经验积累,结合敏捷开发的
SCRUM方法。开发适合 XX 软件有限公司发展的软件过程管理体系。
使得 XX 软件的软件开发过程管理基本满足CMMi 3 级要求。
三、背景介绍
CMMI-DEV
CMMI 是个了不起的规范,但是仍然有很多不足之处。CMMI 对于项目管理很有指导
价值,但是它对技术开发过程的论述却不够深入。对于大多数软件项目而言,技术开发占
总工作量的 70%以上,而项目管理占总工作量的 30%以下。对大多数企业而言,技术开发过程
的规范化比项目管理过程的规范化尤为重要与迫切。
软件开发是如此的灵活,如果没有规范来指导与制约,就容易因无序而导致混乱。但
是规范如果不切实际或者太严密了,就容易畸变成为死板的教条,会扼杀开发人员生机勃
勃的创造力。软件过程规范应当力求简单实用。
Scrum
由Ken Schwaber 和 Jeff Sutherland 提出,旨在寻求充分发挥面向对象和构件技术的开
发方法,是对迭代式面向对象方法的改进,名称来自英式橄榄球(在比赛中每个队员都应
时刻保持对场上全局的判断,然后通过集体行动,奋力实现同一目标──胜利)。 SCRUM 方法最初实践于Easel公司 (1993 年 ),现已被数十家公司数百个项目开发中应用,适用于需
求难以预测的复杂商务应用产品的开发[11] 。SCRUM提出的 SCRUM Meeting、Sprint 、Backlog、
SCRUM Master、SCRUM Team、Demo 等模式已被 PLOP作为组织和过程模式( Organizational and Process Pattern)的标准。
性过程 (Empirical Process),而不是确定性过程(Defined Process)。确定性过程是可明确描述的、可预测的过程,因而可重复(Repeatable)执行并能产生预期的结果,并能通过科学
理论对其最优化。经验性过程与之相反,应作为一个黑箱(Black box)来处理,通过对黑
箱的输入输出不断进行度量,在此基础上,结合经验判断对黑箱进行调控,使其不越出设
定的边界,从而产生满意的输出。SCRUM方法将传统开发中的分析、设计、实施视为一个
黑箱,认为应加强黑箱内部的混沌性,使项目组工作在混沌的边沿,充分发挥人的创造力。
总而言之, CMMI 和敏捷开发能够很好地相互补充、相互支持。首先在关注点上CMMI 关注组织级或企业级改进,关注回答项目应该做什么,而不是具体怎么做的方法,而敏捷
开发则更关注项目级改进,关注项目具体怎么做的方法和最佳实践,这使双方在定位方面
形成很好的相互补充的态势。
一方面 CMMI 为敏捷提供组织级扩展的能力和必须的组织治理框架,便于组织级对敏
捷最佳实践的推广和重用;另一方面,敏捷为CMMI 提供了项目级的具体实践方法,确保
团队在 CMMI 框架下能够快速响应,不断创新,持续交付价值。两者的有效结合,能够有效实
现个人绩效向团队绩效、向组织绩效的转变过程。同时,也可以通过敏捷实践,规避CMMI 实
施过程中重文档、重流程的不良倾向,使CMMI 实施时更加关注组织的实际价值、关注客户、关注创新。
四、体系总体介绍
XX 软件质量管理体系将项目的生命周期划分为以下14 个控制域。
项目管理过程域目的
立项管理采纳符合机构最大利益的立项建议,通过立项管理使该建议成为正式的项目。杜绝不符合机构最大利益的立项建议被采纳,避免浪费机构的资源、资金、时间等。
结项管理在项目开发工作结束后,对项目的有形资产和无形资产进行清算、对项目进行综合评估以及总结经验教训等。
项目规划为项目的研发和管理工作制定合理的行动纲领(即项目计划),以便所有相关人员按照该计划有条不紊地开展工作。
项目监控周期性地跟踪项目计划的各种参数如进度、工作量、费用、资源等,不断地了解项目的进展情况,以便当项目实际进展显著偏离计划时能够及时采取纠正措施。
风险管理在风险产生危害之前识别它们,从而有计划地消除或削弱风险。
需求管理在客户与开发方之间建立对需求的共同理解,维护需求与其它工作成果的一致性,并控制需求的变更。
项目研发过程域目的
技术预研
在立项之后到开发工作完成之前的时间内,对项目将采用的关键技术提前学习和研究,
尽可能早地发现并解决开发过程中将会遇到的技术障碍。
Scrum 过程设计软件系统的体系结构。分Scrum 小组,使用敏捷方法实现软件产品,在每次迭代都产生可以交付的产品。最后在巩固过程中确保产品符合用户的需求。
客户验收客户依据合同对产品进行审查和测试,确保产品满足客户需求。
技术评审尽早地发现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而有效地提高产品的质量。
机构支撑过程域目的
配置管理通过执行版本控制、变更控制等规程,以及使用配置管理软件来保证所有配置项的完