CMM说明与关键过程域
- 格式:doc
- 大小:29.50 KB
- 文档页数:5
第1章软件开发过程包括软件需求、软件设计、软件实现、软件集成、软件测试、软件维护等各阶段的管理。
5、过程改进机会: 过程的改进机会通过以下机构进行1成本管理2计划管理3质量管理6、过程改进的工作以上机构独立于任何机构,完成改进机构改进过程改进各个开发人员的性能和能力7、软件特殊性的需要: 软件的三个层次:1个体层次:程序、数据及文档。
2整体层次:特定系统中个体层次软件的总称。
3学科层次:所涉及的理论、方法、技术所构成的学科。
8、软件过程评估的必要性1软件成本的提高2软件开发进度难于控制3软件工作量的估计困难4软件质量难于保证5软件的个性与维护困难6 软件应用中出现的问题7 软件特殊性的需要9、软件开发的风险大的原因: 1改进软件过程的需要2过程能力低3软件过程管理水平低缺乏工程实践和管理实践10、软件用户或采购者软件组织或提供商降低软件风险的需要11、软件成功的十条经验中的三要素:1 CMM对软件需求管理的需要 2 有效的用户参与3明确的业务目标4稳定的基本需求12、软件需求必须形成文档。
软件需求必须能够控制,进而建立工程和管理的基线。
成员必须接受软件需求管理培训。
建立衡量软件需求状态的信息。
CMM2级对软件需求管理的指导13 、CMM3级对软件需求管理的指导需求分析→确保需求的完整性、一致性、可测试性。
需求设计→编码、测试实例都能够回溯到相应的源头,需求发生实质变更之前,能够判别该变更所带来的潜在的影响。
需求修订→应遵从统一的流程,需求的变更应自始至终被跟踪;需求文档→应当通过配置和变更管理工具进行管理。
14软件质量是捉摸不定的概念提高软件产品质量的需要某某软件好用, 不好用;某某软件功能全、结构合理;某某软件功能单一、操作困难;15 产品质量,包括软件质量,是人们实践产物的属性和行为,是可以认识,可以科学地描述的。
可以通过一些方法和人类活动,来改进质量。
实施CMM是改进软件质量的有效方法:控制软件生产过程、提高软件生产者组织性和软件生产者个人能力的有效合理的方法16 软件工程的相关领域和因素需求工程(RE:REQUIREMENTS ENGINEERING)。
对CMMI3的学习和思考【IT168 专稿】近来笔者所在公司正在为过CMMI3做各种准备,对公司的员工进行了一些相关的培训,作为项目管理人员的我,在学习CMMI3的过程中,也有了自己的一点对于CMMI3的思考。
CMMI将软件过程中的很多步骤都通过步骤规范起来,它并没有告诉我们应该怎么去做,而只是告诉我们应该做些什么。
因为软件过程中的每一步都需要经过思考、决策、有依据才能得出过程的结果,所以减少了每一步发生错误的可能性。
一.CMMI概述CMMI是Capacity Maturity Model Integrated的简称,即集成的软件能力成熟度模型,CMM是CMMI的早期版本,它主要用于软件工程,而CMMI是一种综合性模型,它是工程实施和管理方法,它在软件与系统集成以外的如科研、工程等领域都得到了广泛的应用。
CMMI是一个由理论和经验部分组成的模型。
它有连续式和阶段式两种表述方式,其中连续式主要用于衡量一个企业的项目能力,而阶段式主要用来衡量一个企业的成熟度。
在连续式表述下,企业在接受评估时可以选择自己希望评估的项目来进行评估,所以评估通过率相对比较大,但它反映的那个相对比较窄,因为它仅仅反映该企业的该项目或类似项目达到了对应的等级。
而用阶段式来进行评估时,需由评估师自己来挑选内部的任何项目或其中的某一部分来进行评估。
阶段式的CMMI有5个等级,如下:第一级(初始级):在该等级下,项目的目标虽然得以实现,但它的实现带有很多的偶然性和风险性,该级对人员的依赖性比较大,性能依赖个人的能力,且随个人固有的性能、知识和动机的不同而变化。
第二级(受管理级):在该等级下,意味着组织要确保策划、文档化、执行、监督和控制项目级的过程,并且需要为过程建立明确的目标,并能实现成本、进度和质量目标等。
在这种情况下,组织已经营造了一个稳定的、受控的开发环境,项目已经在受控制的状态下运行。
该级包括如下7个过程域:需求管理(RM)、项目策划(PP)、项目监督与控制(PMC)、供方协定管理(SAM)、测量与分析(MA)、过程和产品质量保证(PPQA)和配置管理(CM)。
CMMI3级过程域一共有18个PA,分别是:过程管理1、OPD:(Organizational Process Definition)组织级过程定义。
建立和维护有用的组织过程资产。
2、OPF:(Organizational Process Focus)组织级过程焦点。
在理解现有过程强项和弱项的基础上计划和实施组织过程改善。
3、OT:(Organizational Training)组织培训管理。
增加开发人员的技能和知识,使他们能有效地执行他们的任务。
项目管理:4、PP:(Project Plan)项目计划。
保证在正确的时间有正确的资源可用。
为每个人员分配任务。
协调人员。
根据实际情况,调整项目。
5、PMC:(Project Monitoring and Control)项目监督与控制。
通过项目的跟踪与监控活动,及时反映项目的进度、费用、风险、规模、关键计算机资源及工作量等情况,通过对跟踪结果的分析,依据跟踪与监控策略采取有效的行动,使项目组能在既定的时间、费用、质量要求等情况下完成项目。
6、SAM:(Supplier Agreement Management)供应商协议管理。
旨在对以正式协定的形式从项目之外的供方采办的产品和服务实施管理。
7、IPM:(Integrated Project Management)集成项目管理。
根据从组织标准过程剪裁而来的集成的、定义的过程对项目和利益相关者的介入进行管理。
8、RSKM:(Risk Management)风险管理。
识别潜在的问题,以便策划应对风险的活动和必要时在整个项目生存周期中实施这些活动,缓解不利的影响,实现目标。
工程管理:9、REQM:(Requirements Management)需求管理。
需求管理的目的是在客户和软件项目之间就需要满足的需求建立和维护一致的约定。
10、RD:(Requirement Development)需求开发。
需求开发的目的在于定义系统的边界和功能、非功能需求,以便涉众(客户、最终用户)和项目组对所开发的内容达成一致。
CMM是指“能力成熟度模型”,其英文全称为Capability Maturity Model for Software,英文缩写为SW-CMM,简称CMM。
它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。
CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。
CMM是是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。
CMM分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。
CMM是由美国卡内基梅隆大学软件工程研究所1987年研制成功的,是目前国际上最流行最实用的软件生产过程标准和软件企业成熟度等级认证标准。
目前,我国已有软件企业通过了CMM标准认证。
SW-CMM(Capability Maturity Model For Software 软件生产能力成熟度模型,以下简称"CMM"),是87年由美国卡内基梅隆大学软件工程研究所(CMU SEI)研究出的一种一种用于评价软件承包商能力并帮助改善软件质量的方法,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。
其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件生产中的困难。
CMM它是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了众多国家以及国际软件产业界的认可,成为当今企业从事规模软件生产不可缺少的一项内容。
CMM目前通用流行的版本是1.1(Version1.1)。
《按照软件工程研究所(SEI)的原来计划,CMM的改进版版本2.0(V2.0)是要在1997年的11月完成的。
但是,美国国防部办公室要求软件工程研究所(SEI)延迟发放公布CMM版本2.0,直至他们完成另一个更为紧迫的项目-CMMI。
CMM 什么意思CMM 什么意思?是指“”,其英文全称为,英文缩写为SW-CMM,简称CMM。
它是对于组织在定义、实施、、控制和改善其的实践中各个发展阶段的描述。
CMM的核心是把视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。
CMM是是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。
CMM分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。
CMM是由美国卡内基梅隆大学研究所1987年研制成功的,是目前国际上最流行最实用的软件生产过程标准和软件企业成熟度等级认证标准。
目前,我国已有软件企业通过了CMM标准认证。
SW-CMM(Capability Maturity Model For Software 软件生产能力成熟度模型,以下简称"CMM"),是87年由美国卡内基梅隆大学软件工程研究所(CMU SEI)研究出的一种一种用于评价软件承包商能力并帮助改善软件质量的方法,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。
其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件生产中的困难。
CMM它是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了众多国家以及国际软件产业界的认可,成为当今企业从事规模软件生产不可缺少的一项内容。
CMM目前通用流行的版本是1.1(Version1.1)。
《按照软件工程研究所(SEI)的原来计划,CMM的改进版版本2.0(V2.0)是要在1997年的11月完成的。
但是,美国国防部办公室要求软件工程研究所(SEI)延迟发放公布CMM版本2.0,直至他们完成另一个更为紧迫的项目-。
CMM 综述论文CMM产生的背景软件是将思想用某中形式表达出来的过程,它涉及的多是无形的东西,既看不到质,也看不到量,从而使项目管理的难度极大。
软件开发是耗费资金的项目,但到底投入多少,能达到什么样的地步?都是未知数,从而使得其投资风险系数较大。
项目管理的质量与软件产品有着直接的对应关系。
提高项目管理能力对于软件生产力的提高是最为重要的。
随着软件行业的迅猛发展,一些问题和危机逐步暴露出来,例如,手工作坊式的软件开发、项目时间总是推迟、无法保证按期交付、项目预算成倍超过、项目人员不断流动等等,都是软件开发商面临的一些问题。
客户可能要面临这样的问题:为什么项目要这么多费用、为什么开发时间要这么长、主要开发人员是否能得以保证、提交的系统错误太多等等。
上述问题主要原因是缺乏软件过程能力。
为了解决这类软件工厂问题,美国软件工程研究所SEI 自1986年开始研究软件过程成熟框架,1991年提交了能力成熟模型(Capability Maturity Model )CMMMV1.0,该版本经过多方软件专家评审,发布了V1.1版,并更名为SW-CM。
1999年底发布了V2.0版。
它强调企业软件开发能力取决于企业的过程能力而不是个人的能力、强调持续的过程能力的改善,是衡量软件企业软件开发管理水平的重要参考,即可以作为拥护平谷软件项目承包商的依据。
外包的诱惑世界上第一家通过CMM5认证的并非美国公司,而是来自印度的WIPRO。
同时,WIPRO还是全球第一个通过人力成熟度模型(PCMM)5级认证的软件及服务公司。
WIPRO对CMM的热衷并非偶然,其实整个印度软件业对ISO9000、CMM等认证一直非常重视。
据SEI统计,目前有大约300家印度软件公司通过了CMM认证,其中通过最高质量等级CMM5的有50余家,占全球的60%以上。
高品质的管理决定了高品质的产品,从而也确立了印度在美国外包市场的垄断地位。
所谓“外包”,就是指企业把整个工作或工作的一部分交由其它公司去做。
CMM的结构和基本内容来源:北京联高软件CMM描述了五个级别的软件过程成熟度(初始级可重复级已定义级已管理级优化级,成熟度反映了软件过程能力(Software Process Capability)的大小,任何一个软件机构的软件过程必定属于其中某个级别。
除了第一级以外,每级成熟度又由若干关键过程域(Key Process Area)构成。
五个成熟度及其关键过程领域如图所示:图中的每个关键过程域分别针对软件过程的某一方面,具体描述了某级成熟度下软件过程在该方面所应达到的的一组目标和实现这些目标的一组关键活动(Key Practice)。
所有关键活动被划分为五类,分别为完成该组目标所需的承诺(Commitment to Perform)、前提条件(Ability to Perform)、实际动作(Activities performed)、度量分析(Measurement and Analysis)以及验证(Verifying Implementation)。
上述五方面被称为五个Common Features。
CMM的结构如图所示:需要提出的是,任何一个成熟度级别的关键过程域集都是本级描述的关键过程域集和所有下级的关键过程域集的并集。
如3级的关键过程域就应有13个不同的域,其中7个是3级自己包含的,6个属于2级成熟度,而4级应有15个域。
第一级:初始级(The Initial Level)初始级的软件机构缺乏对软件过程的有效管理,其软件项目的成功来源于个人英雄主义而非机构行为,因此它不是可重复的。
第二级:可重复级(The Repeatable Level)概述:第二级软件机构的主要特点是:项目计划和跟踪的稳定性,项目过程的可控性和以往成功的可重复性。
更具体的说:机构建立了管理软件项目的策略和实现这些策略的过程。
新项目的计划和管理基于类似项目的经验。
过程能力的增强基于以各个项目为基础的有纪律的基本过程管理。
模型规范级别及其过程域成熟度1级:初始级①软件过程的特点是无序的,偶尔甚至是混乱的。
几乎没有什么过程是经过定义的,成功依赖于个人的努力;②一般不提供开发和维护软件的稳定环境,在危机时刻,项目一般抛弃预定的规程,回复到仅做编码和测试,性能依赖于个人的能力,且随个人固有的技能、知识和动机的不同而变化。
成熟度2级:受管理级①在成熟度等级2上,意味着组织要确保策划、文档化、执行、监督和控制项目级的过程;②为过程建立明确的目标,并能实现所确定的诸如成本、进度和质量目标等目标。
③换言之,组织已经营造出稳定的、受控的开发环境,项目是在受控状态下运行。
受管理级过程域•需求管理(REQM)•项目策划(PP)•项目监督与控制(PMC)•供方协定管理(SAM)•测量和分析(MA)•过程和产品质量保证(PPQA)•配置管理(CM)成熟度3级:已定义级在成熟度等级3上,项目执行过程是通过剪裁组织的标准过程集合和组织过程财富产生的“已定义过程”,并具备与该过程相适应的运行环境。
其与成熟度等级2的区别在于标准、过程描述、规程的应用范围是全组织级的。
•需求开发(RD)•技术解决(TS)•产品集成(PI)•验证(VER)•确认(V AL)•组织过程聚焦(OPF)•组织过程定义(OPD)•组织培训(OT)•集成项目管理(IPM)•风险管理(RSKM)•决策分析和决定(DAR)成熟度4级:定量管理级在成熟度等级4上,组织建立了关于产品质量、服务质量及过程性能的定量目标,运用统计技术和其他定量目标作为判断过程管理成功与否的标准。
在过程的整个生存周期里,对产品质量、服务质量和过程性能做到统计意义上的了解和管理。
•组织过程性能(OPP)•定量项目管理(QCM)成熟度5级:持续改进级成熟度等级5 的突出特征是过程性能的持续改进。
组织建立起整个组织的定量过程改进目标,并且把它们作为过程改进管理成功与否的判断标准;这些目标将适时修改,以反映不断变化的本组织的业务目标。
CMM介绍及关键过程域的分析 一、cmm介绍 CMM它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。CMM是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。CMM分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。 CMM它是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了众多国家以及国际软件产业界的认可,成为当今企业从事规模软件生产不可缺少的一项内容。CMM有助于组织建立一个有规律的、成熟的软件过程。改进的过程将会生产出质量更好的软件,使更多的软件项目免受时间和费用的超支之苦。 软件过程包括各种活动、技术和用来生产软件的工具。因此,它实际上包括了软件生产的技术方面和管理方面。CMM明确地定义了5个不同的“成熟度”等级,一个组织可按一系列小的改良性步骤向更高的成熟度等级前进。 成熟度等级1:初始级(Initial)。处于这个最低级的组织,基本上没有健全的软件工程管理制度。每件事情都以特殊的方法来做。如果一个特定的工程碰巧由一个有能力的管理员和一个优秀的软件开发组来做,则这个工程可能是成功的。然而通常的情况是,由于缺乏健全的总体管理和详细计划,时间和费用经常超支。结果,大多数的行动只是应付危机,而非事先计划好的任务。处于成熟度等级1的组织,由于软件过程完全取决于当前的人员配备,所以具有不可预测性,人员变化了,过程也跟着变化。结果,要精确地预测产品的开发时间和费用之类重要的项目,是不可能的。 成熟度等级2:可重复级(Repeatable)。在这一级,有些基本的软件项目的管理行为、设计和管理技术是基于相似产品中的经验,故称为“可重复”。在这一级采取了一定措施,这些措施是实现一个完备过程所必不可缺少的第一步。典型的措施包括仔细地跟踪费用和进度。不像在第一级那样,在危机状态下方行动,管理人员在问题出现时便可发现,并立即采取修正行动,以防它们变成危机。关键的一点是,如没有这些措施,要在问题变得无法收拾前发现它们是不可能的。在一个项目中采取的措施也可用来为未来的项目拟定实现的期限和费用计划。 成熟度等级3:已定义级(Defined)。在第3级,已为软件生产的过程编制了完整的文档。软件过程的管理方面和技术方面都明确地做了定义,并按需要不断地改进过程,而且采用评审的办法来保证软件的质量。在这一级,可引用CASE环境来进一步提高质量和产生率。而在第—级过程中,“高技术”只会使这一危机驱动的过程更混乱。 成熟度等级4:已管理级(Managed)。一个处于第4级的公司对每个项目都设定质量和生产目标。这两个量将被不断地测量,当偏离目标太多时,就采取行动来修正。利用统计质量控制,管理部门能区分出随机偏离和有深刻含义的质量或生产目标的偏离(统计质量控制措施的一个简单例子是每千行代码的错误率。相应的目标就是随时间推移减少这个量)。 成熟度等级5:优化级(Optimizing)。—个第5级组织的目标是连续地改进软件过程。这样的组织使用统计质量和过程控制技术作为指导。从各个方面中获得的知识将被运用在以后的项目中,从而使软件过程融入了正反馈循环,使生产率和质量得到稳步的改进。 整个企业将会把重点放在对过程进行不断的优化,采取主动的措施去找出过程的弱点与长处,以达到预防缺陷的目标。同时,分析各有关过程的有效性资料,作出对新技术的成本与效益的分析,并提出对过程进行修改的建议。达到该级的公司可自发的不断改进,防止同类缺陷二次出现。 二、CMM关键过程域介绍 Cmm2的关键过程是:需求管理、软件项目计划、软件项目跟踪和监控、软件转包合同、软件质量保证、软件配置管理。这六个关键过程域主要涉及建立基本项目管理和控制方面的内容。 需求管理:在顾客和顾客要求的软件项目之间建立一种一致的、共同的理解,控制系统对软件的需求,为软件工程和管理建立基线,保持软件计划、产品和活动与分配需求的一致性。共同理解是计划和管理软件项目的基础,所以需求管理要求需求文档化,并对需求进行评审。在整个软件生命周期中,当用户需求改变时,记录全部改变,并进行评审。 软件项目计划:为实施软件工程和管理软件项目制订合理计划。估计软件产品的规模和所需资源,制定开发进度计划,确定并评估风险,协商有关约定。 软件项目跟踪与监控:对软件项目的执行进行跟踪、监督与控制,以便随时掌握软件项目的实际开发过程。当项目的执行活动与软件项目计划偏离时,项目经理能够采取有效的措施进行处理。 软件转包合同:选择高质量的软件子项目承包者,并对子合同的执行进行有效的管理,并对其进行过程监督。 软件质量保证:对软件项目和产品质量进行监督和控制,为管理者监控软件项目的过程和产品质量提供适度的可视性。通过评审和审核软件产品和活动,验证是其否与应用的标准和规程一致。出现的问题尽可能在软件项目组内部解决。内部不能解决的问题,由质量保证组进行适当的解决。 3级CMM在2级的基础上增加了七个KPA 组织过程焦点:软件组织建立负责软件过程活动的责任和机制,为改进软件组织的整体软件过程能力提供组织上的保证。 组织过程定义:由负责软件过程活动的组开发和维护一组能提高项目软件过程整体效能的软件过程资源的集合,并为在定量过程管理中确定有意义的数据提供基础。 培训大纲:为提高个人的技能和知识进行培训,使其更有效地完成任务。 集成软件管理:协调软件工程活动和软件管理活动,将二者集成为密切相关、定义完整的软件过程。 软件产品工程:协调一致地执行经过定义并综合了所有软件工程活动的工程过程,以便高效地生产出稳定的软件产品。任务:分析分配给软件的系统需求、制定软件需求、开发软件体系结构、设计软件、编码、测试、集成等,检验其是否满足分配需求。 组间协调:开发软件项目的各小组积极合作,以便使项目更好、更有效地满足用户需求。 同行评审:由同一级别的其他人员对该软件项目产品系统地检测,以便能较早地和有效地发现软件产品中存在的错误,并改正它们。 4级CMM在3级的基础上增加了两个KPA,关注焦点是建立起对软件过程和产生的软件产品的定量理解。 定量过程管理:在软件项目过程中的各个阶段进行定量控制。目的是定量地控制软件项目的过程性能,在一个可测量的稳定的过程范围内鉴别出变化的特殊原因,并且适时改正促使变化出现的环境。为组织过程定义、集成软件管理、组间协调和同行评审的实践增加一个内容丰富的测量计划。 软件质量管理:定量地评价软件产品的质量,实现具体的质量目标。包括确定软件产品的质量目标,制定实现这些目标的计划,监控及调整软件计划、软件工作产品、活动和质量目标,以满足客户和最终用户对高质量产品的需要和期望。 5级CMM在4级的基础上增加了3个KPA,关注的焦点是为了 实施连续不断的和可测量的软件过程改进,组织和项目所必须解决的问题。 缺陷防范:在软件过程中能识别出产品产生缺陷的原因,并采取防范措施,防止它们再次发生。为了能识别缺陷,一方面要分析以前所遇到的问题和隐患,另一方面要对各种可能出现缺陷的情况加以分析和跟踪,从中找出可能出现缺陷和复发缺陷的类型,并对缺陷产生的根本原因进行确认,同时对未来的活动预测可能产生的错误趋势。 技术改革管理: 确定新技术(包括工具、方法和过程),将其有序地引入到组织的各种软件过程中去。同时,对由此引起的各种标准变化进行处理,使之适应新的需要。 过程变更管理:不断改进组织的软件过程,提高生产率和软件质量,缩短软件产品开发周期。目的是改进软件质量、提高生产率和缩短产品开发周期, 只有持续不断地改进组织中所采用的软件过程才能实现这一目标。既采用缺陷预防的增量式改进,又采用技术改革管理 的创新式改进,并使得整个组织可以共享这些改进的成果。活动包括定义过程改进目标、不断地改进和完善组织的标准软件过程和项目定义软件过程,制定培训和激励的计划,促使组织中的每个人都能自觉地参与过程改进活动。 对cmm2到cmm5的关键过程域的分析,需求管理、软件项目计划、软件项目跟踪和监控、软件转包合同、软件质量保证、软件配置管理是cmm的基础。 三、需求管理分析 本人认为这六项里面,需求管理是最为关键,也是一个项目是否能实施、完成的重要基础。对需求管理与需求工程进行如下分析:需求开发和需求管理是需求工程的两部分,如果没有做好需求开发,那么从需求管理的角度看就会出现重复性的工作。导致需求开发欠佳的主要原因有以下几点: 1、缺乏良好的需求规格说明编写模板 分析一些企业的CMM实施过程,从表面上看,它们的确遵循了先推荐方案再进行评审的基本选择原则,但由于缺乏经验,实际选定的方案常常缺乏客观性,同时在企业的工程和管理机制里又缺乏实践反馈的方法和过程来不断地改进原有的方案。一般来说,大家在一起工作的时间长了,就会形成一种“默契”,而这很可能给以后的工程和管理工作埋下很多隐患,一旦出现意见分歧时,这种默契就不复存在。如果按CMM的要求去做,大量类似的重复工作就会因此出现。改进的方法之一是在整个工程和管理过程中,既保持文档和产品的一致性,又反向追踪需求规格说明更改的程度,并持续改进需求规格说明编写模板。 2、较严重地忽略了非功能性需求