CMMI_3级软件过程改进方法与规范
- 格式:doc
- 大小:52.00 KB
- 文档页数:4
CMMIL3级过程改进实施推广计划版本:〔V1.0〕2012-04-01文件变化记录单*修改状态:A——增加,M——修改,D——删除文件批准单目录1.引言 (5)1.1文档目的 (5)1.2适用范围 (5)1.3背景 (5)1.4定义 (5)1.5参考资料 (5)2.过程改进的目标 (6)2.1长期目标 (6)2.2短期目标 (6)2.3改进内容 (6)2.4期望改进效果 (8)3.组织和职责 (8)3.1组织架构 (8)3.2管理指导委员会(MSC) (9)3.3过程顾问委员会 (9)3.4工程过程组(EPG) (9)3.5工作组(WG) (10)4.SPI的内容 (11)4.1准备阶段 (11)4.2培训阶段 (11)4.3CMMI3过程体系完善阶段 (11)4.4CMMI试点项目实施阶段 (12)4.5阶段检查和规范完善阶段 (12)4.6CMMI项目实施推广阶段 (13)4.7预评估阶段 (13)4.8SCAMPI评估阶段 (14)4.9持续改进 (14)5.资源和培训需求 (15)5.1资源需求 (15)5.2培训需求 (15)6.沟通计划 (16)6.1工作组例会 (16)6.2管理层汇报 (16)6.3咨询公司汇报机制 (16)6.4宣传 (16)6.5交流 (16)7.奖励制度 (17)8.风险管理 (17)1.引言1.1文档目的本计划对苏州格尔斯计算机信息技术公司的CMMI ML3 软件过程改进活动进行介绍,描述管理过程改进活动的背景和基础,识别和定义我公司在过程改进方面的问题、方法和活动。
1.2适用范围该计划适用的组织范围仅限于苏州格尔斯计算机信息技术公司(以下简称“苏州格尔斯计算机信息技术公司”), 适用的模型范围为SEI CMMI SW/SE ML3。
1.3背景苏州格尔斯计算机信息技术公司一直使用微软的开发工具Visual Studio Team System,遵循微软技术解决框架MSF。
竭诚为您提供优质文档/双击可除cmmi,3级软件过程改进方法与规范篇一:cmmi过程改进的两种方法1、2、cmmi过程改进的两种方法阶段表示为过程改进提供了一个预定义的路线图,即从成熟等级1到成熟度等级5逐渐增加,要达到一成熟度等级,必须满足该等级(及其以下等级)上所有的过程域的目标连续表示支持单个过程域的改进,可理解为一个过程域接着一个过程域实施改进。
在每个过程域上能力等级0到能力等级5逐级增加3、cmmi的全称,软件能力成熟度模型。
4、过程的作用过程是决定产品成本、进度和质量的主要因素5、过程改进的生命周期模型-ideal模型5、cmmi过程改进流程6、过程改进的目的7、过程改进的好处8、过程改进的原则篇二:cmmi3级软件过程第18章质量保证第18章质量保证质量保证(qualityassurance,qa)的目的是提供一种有效的人员组织形式和管理方法,通过客观地检查和监控“过程质量”与“产品质量”,从而实现持续地改进质量。
质量保证是一种有计划的、贯穿于整个产品生命周期的质量管理方法。
质量保证过程域是spp模型的重要组成部分。
本规范阐述了质量保证过程域的3各主要规程:☆制定质量保证计划[spp-pRoc-qa-planning]。
☆过程与产品质量检查[spp-pRoc-qa-ppqc]。
☆问题跟踪与质量改进[spp-pRoc-qa-tRacking]。
上述每个规程的“目标”、“角色与职责”、“启动准则”、“输入”、“主要步骤”、“输出”、“完成准则”和“度量”均已定义。
本规范适用于国内it企业的软件研发项目。
建议用户根据自身情况(如商业目标、研发实力等)适当地修改本规范,然后推广使用。
18.1介绍过程质量与产品质量存在某种程度的因果关系,通常“好的过程”产生“好的产品”,而“差的过程”将产生“差的产品”。
人们销售的是产品而不是过程,用户关心的是最终产品的质量,而开发者(团队)既要关心过程质量又要关心“产品质量”。
文章标题:深度剖析CMMI3级评估认证验证方法在软件工程领域,CMMI(Capability Maturity Model Integration)被广泛应用于评估组织的软件过程成熟度和改进方向。
CMMI的3级评估认证是一项重要的指标,对于企业提高软件开发能力和管理水平具有重要意义。
本文将从深度和广度两个方面对CMMI3级评估认证的验证方法进行全面评估,并分析其实施过程和重要性。
1. CMMI3级评估认证验证方法概述CMMI3级评估认证是指组织在CMMI参考模型的基础上,经过独立的第三方机构对其软件工程过程进行验证和评估,以确认组织的软件开发能力和管理水平达到CMMI3级标准。
验证方法主要包括评估准备、数据收集、实地考察和结果确认等环节,以保证评估过程严谨可靠。
2. 评估准备在进行CMMI3级评估认证之前,组织需要进行充分的评估准备工作。
这包括确定评估团队、明确评估范围和目标、准备相关文档和数据等。
评估团队需要由经验丰富的专业评估师组成,充分理解CMMI模型和评估流程,确保评估的专业性和客观性。
3. 数据收集数据收集是CMMI3级评估认证的关键环节之一。
评估团队需要收集组织在软件开发过程中的相关数据和记录,例如需求管理、项目规划、配置管理等方面的数据,以便评估团队能够全面了解组织的软件工程过程并进行准确评估。
4. 实地考察实地考察是评估团队深入了解组织软件工程过程的重要手段。
评估团队会实地走访组织的项目组、开发团队和管理层,观察和了解软件开发过程的实际运作情况,收集相关的信息和证据,以支持评估认证的结论。
5. 结果确认评估团队在收集完数据和实地考察后,会对所获得的信息和证据进行分析和整理,最终形成评估结果报告。
这个报告会对组织的软件工程过程进行全面评估,确认是否符合CMMI3级的标准要求。
总结回顾从上述分析可以看出,CMMI3级评估认证的验证方法是一个复杂而严谨的过程,需要评估团队的专业性和严肃认真的态度。
过程改进过程目录1.目的 (1)2.角色与职责 (1)3.总体流程图 (2)4.活动描述 (2)4.1EPG任命 (3)4.2确定组织及过程改进目标 (3)4.3了解组织现状 (4)4.4过程改进策划 (4)4.5实施改进计划 (4)4.6财富库/度量库建立、维护及部署 (5)4.6.1财富库建立、维护及部署 (5)4.6.2度量库建立、维护及部署 (5)4.7组织级度量与分析 (5)4.8建立并维护组织标准过程OSP及裁剪指南 (5)4.8.1建立 (5)4.8.2维护 (6)4.9流程推进 (6)4.9.1流程培训 (6)4.9.2流程试点 (7)4.9.3试点评估 (7)4.9.4流程制度化 (7)4.9.5过程改进建议收集 (7)1.目的该过程用于指导EPG(Engineering Process Group)根据组织目标,确定过程改进目标,并策划及执行过程改进活动。
2.角色与职责3.总体流程图4.活动描述高层在组织中挑选合适的人员并任命为EPG组长及组员。
EPG通过与高层及过程执行者沟通,识别组织的商业目标及过程改进目标,策划恰当的方式了解公司现状,并根据以上信息策划并执行过程改进活动。
EPG的日常工作包括:⏹建立、维护及部署组织财富库(PAL)及组织度量库⏹定期进行组织度量与分析⏹建立、维护及部署组织标准过程(OSP)及裁剪指南⏹推进并监控组织标准过程的执行4.1EPG任命高层负责挑选并任命EPG组长及组员。
EPG团队负责执行过程改进活动,团队成员的经验应该覆盖过程改进活动涉及的各生命周期活动,并考虑团队人员的背景、能力、知识等因素。
EPG组长应该:⏹熟悉本组织的产品开发流程⏹具备过程改进的意识⏹具备管理经验⏹拥有一定的权威EPG组员应该:⏹在某一领域具备充分的能力⏹了解本领域的工作流程⏹了解本领域的相关技术及工具高层可以根据本组织情况及时调整EPG团队结构。
4.2确定组织及过程改进目标EPG负责了解组织的商业目标,商业目标是高层为确保组织稳定发展、提升利润、市场占有率或其他影响组织成功因素的策略。
cmmi3评审方式CMMI(Capability Maturity Model Integration)是一种用于评估和改进组织软件开发和维护过程的方法。
CMMI评审是针对组织的软件过程能力进行评估和改进的过程。
CMMI 3级是CMMI的一个等级,代表了组织在软件过程能力方面的一定成熟度。
CMMI 3级的评审方式包括以下几个方面:1. 评审准备阶段,在评审开始之前,需要对组织的软件过程进行准备。
这包括确定评审的范围、收集和整理相关的文档和数据、确定评审的时间表和人员安排等。
评审准备阶段的主要目的是确保评审能够顺利进行,并且评审所需的信息和资源都能够得到充分准备和提供。
2. 评审过程阶段,评审过程是评审的核心阶段,评审团队将根据CMMI 3级的要求,对组织的软件过程能力进行详细的审查和评估。
评审团队将会就组织的软件过程能力指标进行逐一审查,以确定组织是否满足CMMI 3级的要求。
评审过程中需要与组织内部的相关人员进行沟通和访谈,以了解他们对软件过程的实际执行情况。
3. 评审报告阶段,评审结束后,评审团队将会撰写评审报告,对组织的软件过程能力进行总结和评价。
评审报告将会包括对组织软件过程能力的优势和不足之处的详细描述,以及改进建议和措施。
评审报告将会提交给组织的管理层和相关人员,以便他们能够根据评审结果进行改进和提高软件过程能力。
总的来说,CMMI 3级的评审方式是一个系统的、全面的评估过程,需要评审团队对组织的软件过程能力进行深入的审查和评估,以便为组织提供改进和提高软件过程能力的建议和指导。
CMMI3过程改进分析报告第一篇:CMMI3 过程改进分析报告过程改进分析报告XXXXX是一家以软件研发和解决方案销售的信息技术有限公司,公司以互联网技术和基于组件的软件开发技术为核心,为客户提供定制软件开发及维护服务。
公司组建了EPG过程改进小组、品质保证组,并正式启动了基于CMMI的软件过程改进进程。
EPG过程改进小组对公司软件开发过程与公司运营过程的分析和探讨,制定了一套适合于公司实际的组织标准过程定义。
组织标准过程定义选定项目中进行了样本试验,在包括研创中心内推广,取得了一定的成效。
公司按照CMMI3的标准对过程改进管理、并与外部咨询机构签订咨询合同聘请资深咨询顾问通过深入了解公司的过程改进目标及现状,帮助EPG过程改进小组制定相应的实施计划,跟进实施计划及现状提供相应的培训,并在定义或改进过程时提供有力的支持。
在CMMI过程改进之前需求频繁变更没有得到及时的记录,也缺乏对需求变更的分析和管理,导致项目的返工率增加,以至延误项目的进度并造成成本的增加,测试人员不能得到最新的完整的需求,因而造成测试的遗漏,最终引起提交给客户的产品品质低下测试缺陷不是总得到记录(特别是单体测试时的缺陷),导致缺陷遗漏和缺陷数据不准确。
功能方面的测试点覆盖不全面,造成测试遗漏,提交给客户后被发现,质量低下客户投诉高、返工率高无法提高生产率,从而导致项目成本不断上升。
公司成立EPG过程改进小组,通过收集外部咨询机构人员、内部评审人员、QA和项目组成员的建议,制定了需求管理、品质管理、项目管理等改进计划:1、需求管理EPG过程改进小组制定了需求变更管理过程,在过程中要求使用表格来管理所有的需求变更,包括变更的内容、时间、原因、提出者、状态。
使用Q&A来记录与客户的交互信息,这些Q&A都得到了统一的保存。
负责需求的人员在每次变更时要召集所有项目的相关人员,对其进行分析以确定其影响程度和范围,对于超过组织定义的阈值的大变更只有在评审通过后,才可以被纳入系统,对于小变更也要得到记录,整个过程得到QA人员的监察和审核以确保过程得到严格的实施。
CMMI3级软件过程改进方法与规范C M M I3级软件过程改进方法与规范软件过程改进是目前IT 企业研发管理的重点与难点。
为了提高软件过程能力,企业首先要研制软件过程规范,这是有一定难度并且费时费力的工作。
本书论述的是一套通用的CMMI 3级软件过程改进方法与规范,称为“精简并行过程”(SPP)。
SPP 2.0共有19个关键过程域,分为项目管理过程、技术开发过程和支撑过程三大类:项目管理过程有7个关键过程域,分别为立项管理、结项管理、项目计划、项目跟踪、风险管理、外包管理和需求管理。
技术开发过程有8个关键过程域,分别为需求开发、技术预研、系统设计、实现与测试、系统测试、用户验收、产品维护和技术评审。
支撑过程有4个关键过程域,分别为配置管理、质量保证、采购管理和培训管理。
SPP 2.0文档总数约500余页,包含了众多的过程规范和模板。
采用SPP,用户可以在最短的时间内建立适合于本企业的软件过程规范,大大降低用户研制规范的代价和风险。
本书的主要读者对象是IT企业的研发主管、项目经理和软件开发人员,以及即将到企业工作的高校毕业生。
前言一、背景介绍在国内,绝大多数大中型IT企业几乎都面临着“研发管理混乱”的难题。
“研发管理混乱”必将导致“产品质量低下”、“进度延误”、“费用超支”等问题。
IT企业谋求发展,研发管理必须规范化,这是大中型IT企业的迫切需求。
软件过程改进(Software Process Improvement, SPI)是目前国内大中型IT企业研发管理的重点与难点。
CMM(Capability Maturity Model)是用于衡量软件过程能力的事实上的标准,同时也是目前软件过程改进最好的参考标准。
CMM 是由美国卡内基-梅隆大学(Carnegie-Mellon)软件工程研究所(Software Engineering Institute, SEI)研制的,其发展简史如下:CMM 1.0于1991年制定。
CMMI3简介CMMI三级,称为定义级。
在定义级水平上,企业不仅能够对项目的实施有一整套的管理措施,并保障项目的完成;而且,企业能够根据自身的特殊情况以及自己的标准流程,将这套管理体系与流程予以制度化,这样企业不仅能够在同类的项目上生到成功的实施,在不同类的项目上一样能够得到成功的实施。
科学的管理成为企业的一种文化,企业的组织财富。
在CMMI3级,你会发现:PA过程域1)有指导需求开发的需求开发(Requirements Development)这个PA;2)有指导设计、编码工作的技术解决方案(Technical Solution)这个PA;3)有指导如何保证工作产品满足要求的验证(Verification);4)有指导如何保证软件产品满足真实使用环境要求的(Validation);5)有指导如何把软件产品各组件集成在一起并保证能在相应的硬件载体运行正常的产品集成(Product Integration);CMMI2级的PP与PMC是直接与项目管理有关的两个PA,在CMMI3级,对项目管理的要求进一步提高:6)集成项目管理(Integrated Project Management):3级的项目管理,要求利用组织级的财富库进行项目估算,并且利用财富库裁剪出项目自己的过程,并用这个过程来管理项目。
7)风险管理(Risk Management):2级只有PP的SP2.2中提到要识别风险,而在3级专门有一个PA对风险管理提出更高的要求。
大家不知道有没有发现,2级的PA都是直接针对项目提出要求的。
3级的IPM和RSKM,除了对项目级提出要求,另外也对组织级提出了要求,IPM要求有组织级的资产库RSKM要求要有组织级的风险管理策略等。
另外,3级有几个“O”开头的PA,这几个PA都是直接对组织级的提出要求。
8)组织过程焦点(Organizational Process Focus):这个PA要求组织成立SEPG来推动过程改进的工作,要求识别、计划、实施改进过程,保证组织过程能持续改进。
密级:组织过程改进过程目录1.目的/方针 (1)2.范围 (1)3.术语 (1)4.角色与职责 (1)5.入口准则 (1)6.输入 (1)7.流程图 (2)8.主要活动 (3)8.1.识别过程改进 (3)8.2.过程改进策划 (4)8.3.过程改进实施 (5)8.4.评估组织过程 (5)9.出口准则 (6)10.引用文档 (6)11.使用模板 (6)1.目的/方针组织过程改进((Organization Process Focus, OPF)的目的在于掌握组织的过程状态,识别过程改进机会,策划和实施本组织的过程改进活动。
EPG应遵循本过程识别整个组织的过程改进机会,以及策划和实施过程改进活动。
2.范围适用于组织的过程改进。
3.术语4.角色与职责5.入口准则●无6.输入●过程改进信息本过程包括2个规程:1、EPG章程2、管理评审规程8.主要活动组织根据《EPG章程》组建EPG并实施EPG的管理。
EPG负责组织的过程改进工作,包括识别过程改进、过程改进策划、过程改进实施、评估组织过程等活动。
8.1.识别过程改进●EPG通过各种渠道和方式收集改进信息,收集的渠道和方式有:✧营造一个激励持续改进的氛围与环境,收集和分析来自员工等相关方的合理化建议,识别改进机会;✧组织过程的改进目标;✧过程评估的结果;✧通过常规性内部审核、管理评审和各种持续的差距分析活动,不断发现组织过程的薄弱环节;✧通过测量和分析,找出顾客的不满意、产品未满足要求、过程不稳定等事项,分析识别改进机会;✧从监控组织和项目的过程活动的中得出的经验教训中分析识别改进机会;✧通过QA工程师,在日常工作中发现不符合或潜在不符合的事实,分析识别改进机会;✧其它渠道收集的改进信息。
收集的改进信息记录在《改进信息跟踪表》。
●EPG每月对收集的信息进行综合分析,识别组织过程的薄弱环节,确定改进的时机和改进的方式。
过程改进活动有两种方式:日常改进活动和周期性的过程改进活动。
CMMI3学习与评估CMMI3级CMMI3学习与评估----CMMI3级00CMMI3级已定义级特征:(1)无论管理方面或工程方面的软件过程都已文件化、标准化,并综合成软件开发组织的标准软件过程。
(2)软件过程标准被应用到所有的工程中,用于编制和维护软件。
有的项目也可根据实际情况,对软件开发组织的标准软件过程进行剪裁。
(3)在从事一项工程时,产品的生产过程、花费、计划以及功能都是可以完全控制的,从而软件质量也可以控制。
(4)软件工程过程组(SEPG)负责软件过程活动。
(5)在全组织范围内安排培训计划。
CMMI3级已定义级过程:(1)整个组织全面采用综合性的管理及工程过程来管理。
软件工程和管理活动是稳定的和可重复的,具有连续性的。
(2)软件过程起了预见及防范问题的作用,能使风险的影响最小化CMMI3级已定义级人员:(1)以项目组的方式进行工作。
如同综合产品团队。
(2)在整个组织内部的所有人对于所定义的软件过程的活动、任务有深入理解。
大大加强了过程能力。
(3)有计划地按人员的角色进行培训cCMMI3级已定义级技术:在定性基础上建立新的评估技术。
CMMI3级已定义级度量:(1)在全过程中收集使用数据。
(2)在全项目中系统性地共享数据CMMI3级已定义级改进方向:(1)开始着手软件过程的定量分析,以达到定量地控制软件项目过程的效果。
(2)通过软件的质量管理达到软件的质量目标。
CMMI3级过程域—CMMI3级过程域—决策分析和决定: 1 个特定目标, 6 个特定实践。
(依据建立的准则,用正式的过程评价候选方案)SG 1 评价候选解决方案(基于已建立的准则对候选方案进行评价,并产生决议)SP 1.1 建立使用决策分析的指导原则(制定DAR 适用原则;形成指导书;在计划阶段多,技术问题、非技术问题;如方案、外购、供应商、工具、方法、环境等;)SP 1.2 建立评价准则及准则的排序(形成指导书;如技术、风险、成本、收益等因素;重要性、优先级;定量的及定性的;文档化评价准则的选择依据)SP 1.3 识别推荐的候选方案(文档化多个候选方案;涉及高风险的、基线变化的、直接影响项目目标的;采用头脑风暴、查阅文献、评估中又产生新方案等;)SP 1.4 选择评价方法(包括模型、原型、仿真、专家、试点、测试、工程分析、制造分析、成本分析、评审等;要基于评价准则;要考虑度量;面向目标问题;)SP 1.5 评价候选方案(文档化评价结果;对假定、不确定因素进行分析;可能需要迭代;)SP 1.6 选择解决方案(对最终选择的方案进行风险分析;形成结论,并要说明所采用的准则、方法、评价过程)CMMI3级过程域—风险管理: 3 个特定目标, 7 个特定实践。
竭诚为您提供优质文档/双击可除cmmi,3级软件过程改进方法与规范篇一:cmmi过程改进的两种方法1、2、cmmi过程改进的两种方法阶段表示为过程改进提供了一个预定义的路线图,即从成熟等级1到成熟度等级5逐渐增加,要达到一成熟度等级,必须满足该等级(及其以下等级)上所有的过程域的目标连续表示支持单个过程域的改进,可理解为一个过程域接着一个过程域实施改进。
在每个过程域上能力等级0到能力等级5逐级增加3、cmmi的全称,软件能力成熟度模型。
4、过程的作用过程是决定产品成本、进度和质量的主要因素5、过程改进的生命周期模型-ideal模型5、cmmi过程改进流程6、过程改进的目的7、过程改进的好处8、过程改进的原则篇二:cmmi3级软件过程第18章质量保证第18章质量保证质量保证(qualityassurance,qa)的目的是提供一种有效的人员组织形式和管理方法,通过客观地检查和监控“过程质量”与“产品质量”,从而实现持续地改进质量。
质量保证是一种有计划的、贯穿于整个产品生命周期的质量管理方法。
质量保证过程域是spp模型的重要组成部分。
本规范阐述了质量保证过程域的3各主要规程:☆制定质量保证计划[spp-pRoc-qa-planning]。
☆过程与产品质量检查[spp-pRoc-qa-ppqc]。
☆问题跟踪与质量改进[spp-pRoc-qa-tRacking]。
上述每个规程的“目标”、“角色与职责”、“启动准则”、“输入”、“主要步骤”、“输出”、“完成准则”和“度量”均已定义。
本规范适用于国内it企业的软件研发项目。
建议用户根据自身情况(如商业目标、研发实力等)适当地修改本规范,然后推广使用。
18.1介绍过程质量与产品质量存在某种程度的因果关系,通常“好的过程”产生“好的产品”,而“差的过程”将产生“差的产品”。
人们销售的是产品而不是过程,用户关心的是最终产品的质量,而开发者(团队)既要关心过程质量又要关心“产品质量”。
武汉中地数码科技有限公司过程改进计划Version x.x文档名称:ZD-CMMI-Templates-过程改进计划-YYYYMMDD.doc武汉中地数码科技有限公司版权所有不得复制过程改进计划修订历史记录序号日期版本号修改说明修改人评审人批准人1.2014-4-15 0.1 初次撰写李叶繁王洪涛2.2014-4-30 1.0 CMMI3级改进计划定稿王洪涛EPG 周顺平3.2014-7-2 2.0 按公司实际情况,参考咨询师过程改进实施计划调整结束日期至2015年3月王洪涛EPG 周顺平4. 5. 6. 7. 8. 9.目录1. 引言 (1)1.1 文档目的 (1)1.2 改进背景与总体目标 (1)1.3 工作原则 (1)1.4 术语及定义 (2)1.5 参考文献 (2)2. 改进目标 (2)2.1 现状及问题分析 (2)2.2 商业目标 (3)2.3 近期目标 (3)2.4 中长期目标 (4)3 改进机构与职责 (5)3.1 组织机构及范围 (5)3.2 高层管理指导委员会(MSG) (5)3.2.1 最高管理者 (5)3.2.2 管理者代表 (6)3.2.3 高层委员会 (6)3.3 工程过程组(EPG) (6)3.3.1 EPG Leader(EPG组长) (6)3.3.2 EPG成员 (7)3.4 过程改进顾问 (7)3.4.1 外部顾问 (7)3.4.2 内部顾问 (7)3.5 过程改进项目QA (7)3.6 工作组(Working Group) (8)3.6.1 试点项目项目经理 (8)3.6.2 配置管理员(CMO) (8)3.6.3 培训专员(OT) (9)3.7 沟通协调组 (9)4 进度计划 (9)5 成功标准及资源需求 (9)5.1 成功标准 (9)5.2 资源需求 (10)6 沟通计划 (10)6.1 工作例会 (10)6.2 工作报告 (10)6.3 工作审计 (10)7 假设与风险管理 (11)7.1 取得成功的条件假设 (11)7.2 阻碍项目成员的风险因素 (11)8 附录 (11)过程改进计划1. 引言1.1 文档目的【阐明编写计划的目的】本计划介绍了为提高武汉中地数码科技有限公司(以下简称“中地公司”)过程能力,而发起的过程改进活动,描述了管理该计划的基本架构,并定义了中地公司过程改进的方法、活动,是中地公司过程改进的指导蓝图。
内容提要
软件过程改进是目前IT 企业研发管理的重点与难点。
为了提高软件过程能力,企业首先要研制软件过程规范,这是有一定难度并且费时费力的工作。
本文论述的是一套通用的CMMI 3级软件过程改进方法与规范,称为“精简并行过程”(SPP)。
SPP 2.0共有19个关键过程域,分为项目管理过程、技术开发过程和支撑过程三大类:
✧项目管理过程有7个关键过程域,分别为立项管理、结项管理、项目计划、项
目跟踪、风险管理、外包管理和需求管理。
✧技术开发过程有8个关键过程域,分别为需求开发、技术预研、系统设计、实
现与测试、系统测试、用户验收、产品维护和技术评审。
✧支撑过程有4个关键过程域,分别为配置管理、质量保证、采购管理和培训管
理。
SPP 2.0文档总数约500余页,包含了众多的过程规范和模板。
采用SPP,用户可以在最短的时间内建立适合于本企业的软件过程规范,大大降低用户研制规范的代价和风险。
一、背景介绍
在国内,绝大多数大中型IT企业几乎都面临着“研发管理混乱”的难题。
“研发管理混乱”必将导致“产品质量低下”、“进度延误”、“费用超支”等问题。
IT企业谋求发展,研发管理必须规范化,这是大中型IT企业的迫切需求。
软件过程改进(Software Process Improvement, SPI)是目前国内大中型IT企业研发管理的重点与难点。
CMM(Capability Maturity Model)是用于衡量软件过程能力的事实上的标准,同时也是目前软件过程改进最好的参考标准。
CMM是由美国卡内基-梅隆大学(Carnegie-Mellon)软件工程研究所(Software Engineering Institute, SEI)研制的,其发展简史如下:
✧CMM 1.0于1991年制定。
✧CMM 1.1于1993发布,该版本应用最广泛。
✧CMM 2.0草案于1997年制定(未广泛应用)。
✧到2000年,CMM演化成为CMMI(Capability Maturity Model Integration),CMM
2.0成为CMMI 1.0的主要组成部分。
✧CMMI-SE/SW 1.1(CMMI for System Engineering and Software Engineering)于
2002年1月正式推出。
CMM将软件过程能力分为5个级别,最低为1级,最高为5级。
目前国内只有几家IT企业达到了CMM 2级或CMM 3级。
鉴于CMM 已经被美国、印度软件业广为采纳,并且取得了卓著成效,近两年来国内兴起了CMM 热潮。
CMM受欢迎的程度远远超过了ISO同类标准。
国内IT企业采用CMM的目的大体有两种:
(1)主要想提高企业的软件过程能力,但并不关心CMM评估。
(2)既要提高企业的软件过程能力,又想通过CMM评估来提升企业的威望与知名度。
出于第一种考虑的企业占绝大多数,它们主要是一些中小型IT企业。
出于第二种考虑的一般是实力雄厚的大型IT企业。
无论是哪类IT企业,它们在实施CMM时遇到的共性问题是“费用高、难度大、见效慢”。
企业做一次比较完整的CMM 2-3级咨询和评估大约要花费60~100万元。
然而CMM咨询师只能起到“参谋”的作用,解决实际问题还得靠自己。
企业要组建软件工程过程小组(Software Engineering Process Group, SEPG)专门从事CMM研究与推广工作,SEPG 的成本并不比咨询费低。
如果企业再购买一些昂贵的软件工程工具(例如Rational的产品),那么总成本会更高。
即使企业舍得花钱,也不意味着就能够容易地提高软件过程能力。
目前国内通过CMM 2-3级评估的企业屈指可数,而这些企业的实际能力也没有宣传的那么好。
因为参加CMM评估的项目都是精心准备的,个别项目或者事业部通过了CMM评估并不意味着整个企业达到了那个水平,这里面的水分相当大。
曾经有一段时间,IT人士经常争论“CMM好不好”、“值不值得推广CMM”等话题。
现在业界关注的焦点则是“企业如何以比较低的代价有效地提高软件过程能力”,攻克这个难题必将产生巨大的经济效益和社会效益,这正是作者致力研究的课题。
二、SPP介绍
一般地,为了真正提高软件过程能力,企业至少要做三件最重要的事情:
✧首先制定适合于本企业的软件过程规范。
✧对员工们进行培训,指导他们依据规范来开发产品。
✧购买一些软件工程和项目管理工具,提高员工们的工作效率。
本书作者根据上述需求,研制了一套“软件过程改进解决方案”(Software Process Improvement Solution, SPIS)。
SPIS的主要组成部分有:
✧基于CMMI 3级的软件过程改进方法与规范,命名为“精简并行过程”(Simplified
Parallel Process, SPP)。
✧基于SPP的一些培训教材,包括软件工程、项目管理、高质量编程等。
✧基于Web的项目管理工具,包括项目计划、项目监控、质量管理、配置管理、
需求管理等功能,命名为Future。
SPP是SPIS的方法论,它由众多的过程规范和模板组成。
SPP 2.0共有19个关键过程域(如下表所示),基本满足CMMI 3级要求。
SPP模型是三层结构,上层是项目管理过程的集合,中层是技术过程的集合,下层是支撑过程的集合。
这种模型很直观,高级经理、项目经理、开发人员、质量保证员等人根据SPP模型很容易知道自己“应该在什么时候做什么事情,以及按照什么规范去做事情”。
SPP 采用CMMI 而不是CMM 作为参考标准,主要原因如下:
CMM的核心是十年前创作的,十年来IT产业有了长足的发展,相应的工业规范必然要不断地改进。
在总结CMM应用的大量经验教训的基础之上,SEI推出了CMMI。
CMMI 重大的改进在于它不仅完善了CMM本身,而且充分考虑了软件工程与系统工程的集成,使得该规范不再局限于软件范畴。
由于CMMI 1.1问世不久,人们了解和采用CMMI需要一定的时间,但是CMMI将取代CMM这是必然的趋势。
三、软件过程改进体会
✧要想提高企业的软件过程能力,本质上是靠规范化的企业管理。
而管理混乱向来是
中国企业最大的病痛,这是个非常复杂的问题。
同时,软件过程改进不是一次性买卖,不能靠“革命”,只能靠持续地改良,不进则退。
这些道理实践者一定要明白,并且要有心理准备。
✧企业要根据自身实力(人力、物力、财力)和商业目标来改进软件过程能力,不可
为了追求CMMI高级别而过分加重开发人员和管理人员的负担。
✧软件开发是如此的灵活,如果没有规范来指导与制约,就容易因无序而导致混乱。
但是规范如果不切实际或者太严密了,就容易畸变成为死板的教条,会扼杀开发人员生机勃勃的创造力。
软件过程规范应当力求简单实用。
✧要考虑中西方文化的差异。
例如CMMI中的质量保证关键过程域并不能容易地在国
内IT企业中实施,因为质量保证员在国内企业中是个非常尴尬的角色。
大部分项目经理不仅要管理项目,还要参加技术开发。
这些都是不容忽视的国情。
✧CMMI是个了不起的规范,但是仍然有很多不足之处。
CMMI对于项目管理很有指导
价值,但是它对技术开发过程的论述却不够深入。
对于大多数软件项目而言,技术开发占总工作量的70%以上,而项目管理占总工作量的30%以下。
对大多数企业而言,技术开发过程的规范化比项目管理过程的规范化尤为重要与迫切,这个问题不是单靠CMMI能解决的。
所以不要死搬硬套CMMI。
✧实施CMMI时要对全员进行培训,不能对职务高的人“网开一面”。
我们曾对试点
单位的所有项目经理和软件开发人员作了大量培训,并作了考核,群众基础相当好。
那些高级经理由于事务繁忙,不愿参加培训,导致他们不懂规范,依旧凭感觉指挥。
虽然他们口头上表示支持,但是有时反而起到了带头“破坏规矩”的作用。
✧采用一些管理工具,帮助工作人员提高效率,降低负担。
选择管理工具不必追求最
先进,简单实用就是“最好”。
四、成功的软件过程改进的关键因素
✧高层管理者应设定切实可行的目标
✧要从管理的角度提供足够的支持
✧成功地改进离不开项目经理以及软件工程师的参与
✧过程改进应被当作真正的项目加以对待
✧过程改进计划时参考过程改进规划图加以制定的
✧持续的过程改进是一条漫漫长路
✧队成员工作业绩的评估与奖励应与过程的实施效果挂钩
✧过程的实施效果应加以评估
✧确保在整个实施过程中过程目标、项目目标以及企业目标三者一致性✧组织中的每个成员均应参与到过程改进活动中来。