﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-走好脚下的路,让别人去说吧!-随笔分类-项目管理－CMMI</title><link>http://www.blogjava.net/human2008/category/28803.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 08 Jan 2008 11:47:54 GMT</lastBuildDate><pubDate>Tue, 08 Jan 2008 11:47:54 GMT</pubDate><ttl>60</ttl><item><title>CMM的结构和基本内容 </title><link>http://www.blogjava.net/human2008/archive/2008/01/08/173749.html</link><dc:creator>灵!</dc:creator><author>灵!</author><pubDate>Tue, 08 Jan 2008 11:18:00 GMT</pubDate><guid>http://www.blogjava.net/human2008/archive/2008/01/08/173749.html</guid><wfw:comment>http://www.blogjava.net/human2008/comments/173749.html</wfw:comment><comments>http://www.blogjava.net/human2008/archive/2008/01/08/173749.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/human2008/comments/commentRss/173749.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/human2008/services/trackbacks/173749.html</trackback:ping><description><![CDATA[<p><span style="font-family: 新宋体">CMM描述了五个级别的软件过程成熟度（<a href="http://www.8848software.com/cmmchina/whatiscmm/paper4.html#BM1"><font color="#002c99">初始级</font></a><a href="http://www.8848software.com/cmmchina/whatiscmm/paper4.html#BM2"><font color="#002c99">可重复级</font></a><a href="http://www.8848software.com/cmmchina/whatiscmm/paper4.html#BM3"><font color="#002c99">已定义级</font></a><a href="http://www.8848software.com/cmmchina/whatiscmm/paper4.html#BM4"><font color="#002c99">已管理级</font></a><a href="http://www.8848software.com/cmmchina/whatiscmm/paper4.html#BM5"><font color="#002c99">优化级</font></a></span> <span style="font-family: 新宋体">，成熟度反映了软件过程能力(Software Process Capability)的大小，任何一个软件机构的软件过程必定属于其中某个级别。除了第一级以外，每级成熟度又由若干<u><span style="color: black">关键过程域</u>(Key Process Area)构成。五个成熟度及其关键过程领域如图所示： </span></span></p>
<p style="margin-left: 144pt; margin-right: 144pt"><span style="font-family: System"><img id="_x0000_i1025" height="368" src="http://www.8848software.com/cmmchina/image/cmm2.gif" width="591" border="0" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/Image2.gif"  alt="" /> </span></p>
<p><span style="font-family: 新宋体">图中的每个关键过程域分别针对软件过程的某一方面，具体描述了某级成熟度下软件过程在该方面所应达到的的一组目标和实现这些目标的一组<u>关键活动</u>（Key Practice）。所有关键活动被划分为五类，分别为完成该组目标所需的承诺（Commitment to Perform）、前提条件（Ability to Perform）、实际动作（Activities performed）、度量分析（Measurement and Analysis）以及验证（Verifying Implementation）。上述五方面被称为五个Common Features。</span> </p>
<p><span style="font-family: 新宋体">CMM的结构如图所示：</span> </p>
<p style="text-align: center" align="center"><span style="font-family: System"><img id="_x0000_i1026" height="450" src="http://www.8848software.com/cmmchina/image/cmm1.gif" width="640" border="0" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/Image1.gif"  alt="" /> </span></p>
<p><span style="font-family: System">　</span> </p>
<p><span style="font-family: 新宋体">需要提出的是，任何一个成熟度级别的关键过程域集都是本级描述的关键过程域集和所有下级的关键过程域集的并集。如3级的关键过程域就应有13个不同的域，其中7个是3级自己包含的，6个属于2级成熟度，而4级应有15个域。</span> </p>
<p><font size="3"><strong><span style="font-size: 18pt; font-family: 新宋体">第一级：初始级（</span> </strong><strong><span style="font-size: 18pt; font-family: Arial">The Initial Level</span> </strong><strong><span style="font-size: 18pt; font-family: 新宋体">）</span> </strong></font></p>
<p><span style="font-family: 新宋体">初始级的软件机构缺乏对软件过程的有效管理，其软件项目的成功来源于个人英雄主义而非机构行为，因此它不是可重复的。</span> </p>
<p><font size="3"><strong><span style="font-size: 18pt; font-family: 新宋体">第二级：可重复级（</span> </strong><strong><span style="font-size: 18pt; font-family: Arial">The Repeatable Level</span> </strong><strong><span style="font-size: 18pt; font-family: 黑体">）</span> </strong></font></p>
<p><strong><span style="font-size: 18pt; font-family: 新宋体"><font size="3">概述：</font> </span></strong></p>
<p><span style="font-family: 新宋体">第二级软件机构的主要特点是：项目计划和跟踪的稳定性，项目过程的可控性和以往成功的可重复性。更具体的说：</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">机构建立了管理软件项目的策略和实现这些策略的过程。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">新项目的计划和管理基于类似项目的经验。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">过程能力的增强基于以各个项目为基础的有纪律的基本过程管理。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">不同的项目可有不同的过程，而对机构的要求是具有指导项目建立适当管理过程的策略。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">每个项目都确定了基本的软件管理控制，包括：</span>
    <ul type="circle">
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">基于前面项目的经验和新项目特点，做出现实的项目承诺（如预算、交付期、软件质量等）；</span>
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">软件项目管理者要跟踪开支、日程、软件功能；</span>
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">满足承诺的过程中的出现的问题要及时发现，妥善解决；</span>
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">定义了软件项目标准，且机构确保其被遵守。</span> </li>
    </ul>
    </li>
</ul>
<p><strong><span style="font-size: 18pt; font-family: 新宋体"><font size="3">构成：</font> </span></strong></p>
<p><span style="font-family: 新宋体">本级的关键过程领域（KPA）包括：</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l2_rm.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l2_rm.html"><font color="#002c99"><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">需求管理（Requirements Management<span style="font-family: 新宋体">）</span></font> </font></a></span></li>
</ul>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">客户的需求是软件项目的基础。软件需求管理的目的是在客户和软件项目之间达成对客户需求的一致理解。</span> </p>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l2_spp.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l2_spp.html"><font color="#002c99"><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">软件项目计划（Software Project Planning<span style="font-family: 新宋体">）</span></font> </font></a></span></li>
</ul>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">为软件工程和项目管理建立一个合理的计划。</span> </p>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l2_spto.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l2_spto.html"><font color="#002c99"><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">软件项目的跟踪和监督（Software Project Tacking and Oversight<span style="font-family: 新宋体">）</span></font> </font></a></span></li>
</ul>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">使管理者对实际的软件项目进展过程有足够的了解，以在项目效能偏离计划太多是采取有效措施。</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l2_ssm.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l2_ssm.html"><span style="font-size: 13.5pt; font-family: 新宋体"><font color="#002c99" size="3">软件子合同管理（Software Subcontract Management）</font> </a></span></li>
</ul>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">选择合格的分包商，并有效管理之。</span> </p>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l2_sqa.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l2_sqa.html"><span style="font-size: 13.5pt; font-family: 新宋体"><font color="#002c99" size="3">软件质量保证（Software Quality Assurance）</font> </a></span></li>
</ul>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">对软件项目过程及其间生产的各个产品进行监管以保证最终软件质量。</span> </p>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l2_scm.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l2_scm.html"><span style="font-size: 13.5pt; font-family: 新宋体"><font color="#002c99" size="3">软件配置管理（Software Configuration Management）</font> </a></span></li>
</ul>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">在整个软件生命周期里建立并维护软件项目的工作产品的完整性。</span> </p>
<p style="margin-left: 36pt; margin-right: 36pt"><span style="font-family: 新宋体">　</span> </p>
<p><font size="3"><strong><span style="font-size: 18pt; font-family: 新宋体">第三级：已定义级（</span> </strong><strong><span style="font-size: 18pt; font-family: Arial">The Defined Level</span> </strong><strong><span style="font-size: 18pt; font-family: 新宋体">）</span> </strong></font></p>
<p><strong><span style="font-size: 18pt; font-family: 新宋体"><font size="3">概述</font> </span></strong></p>
<p><span style="font-family: 新宋体">第三级的主要特征在于软件过程已被提升成标准化过程，从而更加具有稳定性、可重复性和可控性。处于第三级的企业具有如下一些特征：</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">机构采用标准的软件过程，软件工程和管理活动被集成为一个有机的整体。标准化的目的是使之可使管理者和技术人员有效工作。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">有一组人员专门负责机构的软件过程，并且在机构中有培训计划来确保</span> stuff <span style="font-family: 新宋体">和</span> manager <span style="font-family: 新宋体">有知识和技能完成所赋予的角色。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">标准的软件过程结合项目的特点即形成定义的软件过程，它包括一组集成的定义良好的软件工程和管理过程。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">一个定义良好的过程包括就绪准则、输入、完成工作过程、验证机制、输出和完成准则。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">在已建立的产品线上</span> cost, schedule, functionality <span style="font-family: 新宋体">均可控制，软件质量被加以跟踪。</span>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">过程能力体现在在机构范围内对一个定义的软件过程活动、角色和责任的共同理解。</span> </li>
</ul>
<p><strong><span style="font-size: 18pt; font-family: 新宋体"><font size="3">构成</font> </span></strong></p>
<p><span style="font-family: 新宋体">第三级主要处理以下的</span> KPA： </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l3_opf.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l3_opf.html"><font color="#002c99">机构过程关注（Organization Process Focus）</font> </a></li>
</ul>
<p><span style="font-family: 新宋体">确立机构对于改进机构的软件过程能力的软件过程活动的责任。</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l3_opd.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l3_opd.html"><font color="#002c99">机构过程定义（Organization Process Definition）</font> </a></li>
</ul>
<p>开发和维护一组有用的软件过程assets和提供一个用于定义定量过程管理的有意义的数据的基础</p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l3_tp.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l3_tp.html"><font color="#002c99">培训计划（Training Program）</font> </a></li>
</ul>
<p><span style="font-family: 新宋体">开发个体的技能和知识以使他们能够更加有效的完成他们的角色</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l3_ism.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l3_ism.html"><font color="#002c99">集成软件管理（Integrated Software Management）</font> </a></li>
</ul>
<p>基于业务环境和项目的技术需要，从机构的标准软件过程和相关的过程assets经过剪裁，将软件工程和管理活动集成为一个有机的定义的软件过程。</p>
<p>　</p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l3_spe.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l3_spe.html"><span style="font-family: 新宋体"><font color="#002c99">软件产品工程（Software Product Engineering）</font> </a></span></li>
</ul>
<p><span style="font-family: 新宋体">一致地完成定义良好的工程过程。它描述了项目的技术活动，如需求分析，设计，编码和测试。</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l3_ic.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l3_ic.html"><span style="font-family: 新宋体"><font color="#002c99">组间协调（Intergroup Coordination）</font> </a></span></li>
</ul>
<p><span style="font-family: 新宋体">确立软件工程组主动介入其它工程组以便项目能更好满足客户要求的手段</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l3_pr.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l3_pr.html"><span style="font-family: 新宋体"><font color="#002c99">同行评审（Peer Reviews）</font> </a></span></li>
</ul>
<p><span style="font-family: 新宋体">早而且有效的排除软件工作产品中的缺陷。它可通过</span> inspection,structured walkthrough等手段进行。 </p>
<p>　</p>
<p><span style="font-family: 新宋体">概括来说，第三级企业的重点是</span> <font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">Engineering processes and organizational support</span> <span style="font-size: 13.5pt">。</span> </font></p>
<p><span style="font-family: 新宋体">　</span> </p>
<p><font size="3"><strong><span style="font-size: 18pt; font-family: 新宋体">第四级：已管理级（</span> </strong><strong><span style="font-size: 18pt; font-family: Arial">The Managed Level</span> </strong><strong><span style="font-size: 18pt; font-family: 黑体">）</span> </strong></font></p>
<p><strong><span style="font-size: 18pt; font-family: 新宋体"><font size="3">概述：</font> </span></strong></p>
<p><span style="font-family: 新宋体">第四级的软件机构中软件过程和软件产品都有定量的目标，并被定量地管理，因而其软件过程能力是可预测的，其生产的软件产品是高质量的。具体地说，第四季的机构具有如下特征：</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">软件过程和产品有定量质量目标。</span>
    <ul type="circle">
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">重要的软件过程活动均配有生产率和质量度量；</span>
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">数据库被用来收集和分析定义软件过程的数据；</span>
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">项目的软件过程和质量的评价有定量的基础；</span> </li>
    </ul>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">项目的产品和过程控制具有可预测性。</span>
    <ul type="circle">
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">缩小过程效能落在可接受的定量界限内的偏差；</span>
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">可区分过程效能的有效偏差和随机偏差；</span>
        <li style="tab-stops: list 72.0pt"><span style="font-family: 新宋体">面向新领域的风险是可知并被仔细管理；</span> </li>
    </ul>
    </li>
</ul>
<p><font size="3"><strong><span style="font-size: 18pt; font-family: 新宋体">构成</span> </strong>： </font></p>
<p><span style="font-family: 新宋体">本级的关键过程领域包括：</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l4_qpm.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l4_qpm.html"><span style="font-size: 13.5pt; font-family: 新宋体"><font color="#002c99" size="3">定量过程管理（Quantitative Process Management）</font> </a></span></li>
</ul>
<p><span style="font-family: 新宋体">　　　　</span> <span style="font-family: 新宋体">定量地控制软件项目的过程效能。</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l4_sqm.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l4_sqm.html"><span style="font-size: 13.5pt; font-family: 新宋体"><font color="#002c99" size="3">软件质量管理（Software Quality Management）</font> </a></span></li>
</ul>
<p><span style="font-family: 新宋体">　　　　　</span> <span style="font-family: 新宋体">定量了解项目软件产品的质量，并达到既定的质量目标。</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<p><span style="font-family: 新宋体">　</span> </p>
<p><font size="3"><strong><span style="font-size: 18pt; font-family: 新宋体">第五级：</span> </strong><strong><span style="font-size: 18pt; font-family: Arial">The Optimizing Level</span> </strong></font></p>
<p><strong><span style="font-size: 18pt; font-family: 新宋体"><font size="3">概述</font> </span></strong></p>
<p><span style="font-family: 新宋体">概括来说，第五级的主要特点是技术和过程改进被作为常规的业务活动加以计划和管理。处于第五级的企业具有如下一些特征：</span> </p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">机构集中于连续的过程改进</span>
    <ul type="circle">
        <li style="tab-stops: list 72.0pt"><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">具有标识弱点和增强过程的手段。</span> </font>
        <li style="tab-stops: list 72.0pt"><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">采用过程数据分析使用新技术的代价效益并提出改进。</span> </font>
        <li style="tab-stops: list 72.0pt"><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">项目队伍能够分析出错原因并防止其再次出现。</span> </font>
        <li style="tab-stops: list 72.0pt"><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">防止浪费是第五级的重点。</span> </font></li>
    </ul>
    <li style="tab-stops: list 36.0pt"><span style="font-family: 新宋体">改进的途径在于已有过程的增量改进和使用新技术和新方法的革新</span> </li>
</ul>
<p><strong><span style="font-size: 18pt; font-family: 新宋体"><font size="3">构成</font> </span></strong></p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l5_dp.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l5_dp.html"><span style="font-family: 新宋体"><font color="#002c99">缺陷预防（Defect Prevention）</font> </a></span></li>
</ul>
<p><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">识别出错原因，防止错误再现</span> <span style="font-size: 13.5pt">(通过改变定义的软件过程)</span> </font></p>
<p><span style="font-size: 13.5pt; font-family: 新宋体"><font size="3">　</font> </span></p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l5_tcm.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l5_tcm.html"><font color="#002c99">技术变更管理（Technology Change Management）</font> </a></li>
</ul>
<p><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">识别有益的新技术</span> <span style="font-size: 13.5pt">(工具、方法和过程)，并按有序的方式将其转移至机构之中。其重点在于在变化的世界中有效的完成革新。</span> </font></p>
<p><span style="font-size: 13.5pt"><font size="3">　</font> </span></p>
<ul type="disc">
    <li style="tab-stops: list 36.0pt"><a href="http://www.8848software.com/cmmchina/whatiscmm/kpa_l5_pcm.html" tppabs="http://moon.nju.edu.cn/CMMChinese/WhatIsCMM/kpa_l5_pcm.html"><span style="font-size: 13.5pt; font-family: 新宋体"><font color="#002c99" size="3">过程变更管理（Process Change Management）</font> </a></span></li>
</ul>
<p><span style="font-size: 13.5pt; font-family: 新宋体"><font size="3">连续改进机构所采用的软件过程，以改进软件质量，提高生产率和减少产品开发时间</font> </span></p>
<p><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">概括来说，第五级企业的重点是连续的过程改进</span> <span style="font-size: 18pt">。</span>　</font> </p>
<p><font size="3"><span style="font-size: 18pt; font-family: 新宋体">　</span> </font></p>
<p><font size="3"><span style="font-size: 13.5pt; font-family: 新宋体">纵观整个</span> <span style="font-size: 13.5pt">CMM，软件企业提高自身成熟度的历程是一个从无序到有序，从特殊到一般，从定性到定量，最后不断自我完善的过程。</span></font></p>
<img src ="http://www.blogjava.net/human2008/aggbug/173749.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/human2008/" target="_blank">灵!</a> 2008-01-08 19:18 <a href="http://www.blogjava.net/human2008/archive/2008/01/08/173749.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CMM简介 </title><link>http://www.blogjava.net/human2008/archive/2008/01/08/173748.html</link><dc:creator>灵!</dc:creator><author>灵!</author><pubDate>Tue, 08 Jan 2008 11:17:00 GMT</pubDate><guid>http://www.blogjava.net/human2008/archive/2008/01/08/173748.html</guid><wfw:comment>http://www.blogjava.net/human2008/comments/173748.html</wfw:comment><comments>http://www.blogjava.net/human2008/archive/2008/01/08/173748.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/human2008/comments/commentRss/173748.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/human2008/services/trackbacks/173748.html</trackback:ping><description><![CDATA[<div class="postText">
<p>从第一台计算机出现至今，计算机的发展速度令人瞠目。在应用方面，计算机从由少数科学家从事数学计算到今天遍及社会生活的各个领域，人们可以通过它对弈，也可以通过它预测天气。在技术方面，计算机硬件的发展是日新月异，例如中央处理器（CPU）的速度是每隔6个月翻一倍，而成本则是每隔6个月减少一倍。但在计算机软件方面，其发展却是差强人意，虽然也有很多新的软件开发方法和技术不断提出，但软件无论在生产率还是在质量方面总是达不到预期效果。 </p>
<p>计算机软件开发的问题一直是困扰软件企业的关键问题。随着时代的发展人们开始意识到这些企业的基本问题不在于新技术是否使用，而在于软件过程的管理问题。软件过程包括两个方面，其一是软件开发的管理过程（Software Management Process），其二则是软件开发的工程过程（Software Engineering Process）。软件企业的开发机构在形成一套完整而成熟的软件过程后，软件的开发才能够步入正轨，才能保证在约定的期限内以固定的成本生产出客户满意的产品。 </p>
<p>软件机构形成一套完整而成熟的软件过程不是一蹴而就的，它需要一个从无序到有序，从特殊到一般，从定性到定量，最后再从静态到动态的历程，或者说软件机构在形成成熟的软件过程之前必须经历一系列的成熟阶段（Maturity Level）。软件机构首先要判断自己属于哪一个成熟阶段，然后再根据自身的实际情况决定应该重点采取哪一些活动（Activity）来更有效地改进自己的软件过程。其他企业在同软件企业订立软件开发合同时也可以根据该企业机构所处的成熟阶段判断其软件开发能力，进而判断相关的软件风险。所有这些都需要一个理论指导来作出相关判断，能力成熟度模型（CMM）就是这样一个理论模型，它规定了机构成熟阶段的框架，以及如何据之判断软件机构所处的成熟阶段和机构为改进自己的软件过程应该采取的办法。 </p>
<h1><strong><a name="CMMBG"></a></strong><font size="3">CMM产生背景 </font></h1>
<h2><font size="3">主要问题 </font></h2>
<p>在过去的二十年里，新的软件开发方法和技术的使用并未使软件生产率和生产质量得到有效的提高。软件生产商开始意识到他们的基本问题在于对软件的生产过程管理不力，主要体现在：软件产品不能按时完成、超出预算的成本、以及采用新的技术和工具后其好处难以体现。 </p>
<h2><font size="3">主要作用 </font></h2>
<p>CMM可以指导软件机构如何控制软件产品的开发和维护过程，以及如何向成熟的软件工程体系演化，并形成一套良性循环的管理文化。具体说来，一个企业要想改进其生产过程，应该采取如下策略和步骤：</p>
<ul>
    <li>确定软件企业当前所处的过程成熟级别；
    <li>了解对改进软件生产质量和加强生产过程控制起关键作用的因素；
    <li>将工作重点集中在有限几个关键目标上，有效达到改进机构软件生产过程的效果，进而可持续地改进其软件生产能力。 </li>
</ul>
<h1><strong><a name="CMMBC"></a></strong><font size="3">CMM的基本概念 </font></h1>
<ul>
    <li>
    <h2><a name="sp"></a><font size="3">软件过程 </font></h2>
    </li>
</ul>
<blockquote>
<p>人们在开发和维护软件及其相关产品时所涉及的各种活动、方法、实践和改革等。其中软件相关产品包括软件项目计划、设计文档、程序代码、测试用例和用户手册等。 </p>
</blockquote>
<ul>
    <li>
    <h2><font size="3">软件过程能力 </font></h2>
    </li>
</ul>
<blockquote>
<p>当遵循某个软件过程时所能达到的期望效果，它可以有效预测企业接收新的软件项目时可能得到的结果。 </p>
</blockquote>
<ul>
    <li>
    <h2><font size="3">软件过程性能 </font></h2>
    </li>
</ul>
<blockquote>
<p>当遵循某个软件过程时所达到的实际效果。它可以用于验证软件过程能力。 </p>
</blockquote>
<ul>
    <li>
    <h2><font size="3">软件过程成熟度 </font></h2>
    </li>
</ul>
<blockquote>
<p>指一个特定的软件过程被显式定义、管理、度量、控制和能行的程度。成熟度可以用于指示企业加强其软件过程能力的潜力。 当一个企业达到了一定的软件过程成熟级别后，它将通过制定策略、建立标准和确立机构结构使它的软件过程制度化。而制度化又促使企业通过建立基础设施和公司文化来支持相关的方法、实践和过程。从而使之可以持续并维持一个良性循环。 </p>
</blockquote>
<ul>
    <li>
    <h2><font size="3">成熟与不成熟 </font></h2>
    </li>
</ul>
<blockquote>
<p>企业要通过选择最关键的目标来进行过程改进，应该搞清成熟的软件过程和不成熟的过程之间的差异。 </p>
<p>不成熟的企业有如下标志：</p>
<ul>
    <li>缺乏确定的软件过程和相应的管理和控制；
    <li>即使给出了软件过程，也不严格的遵循和强制执行；
    <li>管理是完全被动的，管理者采用的策略是救火式的，即出了事才去解决，解决的时候也难以纵观全局，往往只顾眼前；
    <li>由于缺乏有依据的估算，制订软件预算和生产计划时往往跟着感觉走，实际生产时则常常超标；
    <li>如果强制在预定期限内完成，那么软件的功能和质量肯定是得不到保证；
    <li>缺乏评价软件产品质量和解决产品缺陷和过程问题的客观基础。 </li>
</ul>
<p>成熟的企业则有如下标志：</p>
<ul>
    <li>具有在企业范围内管理、控制软件开发和维护过程的能力；
    <li>现有人员和新进人员均了解所遵循的软件过程，且工作活动均按照事先的计划完成；
    <li>在定义好的软件过程中，所有项目和机构中的角色和责任分明；
    <li>制定的计划是有效的且与实际的工作进展一致；
    <li>软件过程在必要时可按照一定规则和程序加以修改；
    <li>软件产品和过程的具有一定的可控性。这主要体现在：
    <ol>
        <li>管理者能够监督软件产品的质量和生产过程；
        <li>具有客观的和定量化的措施来判断产品质量并分析产品与生产过程中的问题；
        <li>计划和预算有章可循，它是基于历史数据的，从而是实际可行的；
        <li>预算的结果，包括成本、时间表、产品功能和质量等，通常能够达到；
        <li>有关的参与者完全理解遵循软件过程的价值并认真地遵循之；
        <li>具有支撑软件过程的基础设施，如标准过程库、历史数据库等。 </li>
    </ol>
    </li>
</ul>
</blockquote>
<h1><strong><a name="CMMFL"></a></strong><font size="3">CMM的五级成熟度 </font></h1>
<blockquote>
<blockquote>
<h2><font size="3">基本前提 </font></h2>
<ul>
    <li>软件质量在很大程度上取决于产生软件的软件过程的质量和能力；
    <li>软件过程是一个可管理、可度量并不断改进的过程；
    <li>软件过程的质量受到用以支撑它的技术和设施的影响；
    <li>企业在软件过程中所采用的技术层次应适应于软件过程的成熟度。 </li>
</ul>
<h2><font size="3">基本原理 </font></h2>
<ul>
    <li>CMM强调连续的软件过程改进。该连续的改进基于多个演化步骤。CMM将这些演化步骤划分成五个级别。这种分级结构的理论依据是软件质量原理。
    <li>每一级别都包括若干目标。当满足某一目标后，软件过程的相应部分便确定下来。
    <li>五级成熟度定义了一个标准，用以度量机构的软件过程成熟度和评价其软件过程能力。 </li>
</ul>
<h2><font size="3">基本内容 </font></h2>
<p>CMM的成熟度理论目前主要涉及如下内容：</p>
<ul>
    <li>机构和资源的管理: 涉及机构本身的责任，人员和其它资源设施。
    <li>软件工程过程及其管理: 涉及软件工程过程，即软件过程的深度、范围和完整性以及如何度量、管理和改进这样的过程。
    <li>工具和技术: 软件工程过程中使用的开发工具和技术。 </li>
</ul>
<h2><font size="3">五个成熟度级别 </font></h2>
<ul>
    <li>初始级
    <li>可重复级：有规章的过程
    <li>定义级：标准化、一致的过程
    <li>管理级：可预测过程
    <li>优化级：可持续改进的过程 </li>
</ul>
<h2><font size="3">成熟度的行为刻划 </font></h2>
<h3><font size="3">第一级：初始级 </font></h3>
<ul>
    <li>成功来源于个人英雄主义而非机构行为，因此它不可重复，更换人员后成功便难以维持。 </li>
</ul>
<h3><font size="3">第二级：可重复级 </font></h3>
<ul>
    <li>针对特定软件项目建立管理该项目的策略和实现这些策略的过程。
    <li>新项目的计划和管理基于类似项目的经验。
    <li>软件过程能力主要通过管理单个项目的软件生产过程来得到提高和增强。
    <li>不同的项目可有不同的软件过程，机构应当建立一定的方针和策略以针对具体的项目选择合适的软件生产过程并进行管理。 </li>
</ul>
<p>可重复级的主要特点在于确定了基本的软件生产管理和控制，具体来讲，有：</p>
<ul>
    <li>结合已有项目的经验和新项目的特点来确定本项目的责任和承诺；
    <li>软件生产成本、时间表和实现的功能被有效跟踪；
    <li>识别实现承诺所需解决的关键问题；
    <li>定义软件项目过程标准，机构要确保其被遵守。 </li>
</ul>
<p>概括来说，第二级的主要特点是项目计划和跟踪是确定且有效的，项目的软件过程是可控的，以及已有的成功经验是可重复的。 </p>
<h3><font size="3">第三级：定义级 </font></h3>
<ul>
    <li>有一个机构范围内标准的软件过程，软件工程活动和管理活动被集成为一个有机的整体。标准化的目的是使高层管理者和软件技术人员能够有效合作。
    <li>有一个组例如软件工程组（SEPG）专门负责订立机构的标准软件过程，并且在机构中制定培训计划来确保相关人员和管理者有足够的知识和技能完成标准过程所赋予的角色。
    <li>标准的软件过程结合具体项目的特点经过裁剪即形成项目定义软件过程，它是一组集成的完善定义的软件工程和管理过程。
    <li>一个完善定义的软件过程应包括就绪准则、输入、工作过程、验证机制、输出和完成准则。
    <li>对于已建立的产品生产线，其成本、时间表和实现功能均可跟踪和控制，软件产品的质量可以得到保证。
    <li>软件过程能力的实现主要基于在机构范围内对一个定义软件过程的活动、角色和责任的共同理解。 </li>
</ul>
<p>概括来说，第三级的主要特征在于软件过程已被提升成标准化过程，从而更加具有稳定性、重复性和可控性。 </p>
<h3><font size="3">第四级：管理级 </font></h3>
<ul>
    <li>软件的过程和产品有定量的质量指标。
    <ul>
        <li>重要的软件过程活动均配有生产率和质量方面的度量指标；
        <li>应用数据库来收集和分析定义软件过程中涉及的各种数据；
        <li>对项目软件过程和软件质量的评价有定量的基准。 </li>
    </ul>
    <li>软件项目的产品和生产过程的控制具有可预测性。
    <ul>
        <li>将软件过程性能可能出现的偏差控制在可接受的量化界限内；
        <li>具体区分影响过程性能发生偏差的有效因素和偶然因素；
        <li>向新领域拓展的风险是可预知的并被仔细管理和权衡。 </li>
    </ul>
    </li>
</ul>
<p>概括来说，第四级的主要特征是定量化、可预测、异常控制和高质量。 </p>
<h3><font size="3">第五级：优化级 </font></h3>
<ul>
    <li>机构集中于持续的过程改进
    <ul>
        <li>具有标识过程缺陷和增强过程能力的有效手段。
        <li>利用试验数据分析使用新技术所需的代价和带来的效益，然后再有选择地采用。
        <li>当出现偏差时，软件项目人员能够分析出错原因并采取有效手段防止其再次出现。
        <li>防止不必要的浪费是第五级的重点。 </li>
    </ul>
    <li>改进的途径有两个，一个是对已有过程的渐进式改进；另一个则是有选择地使用新技术和新方法所带来的革新。 </li>
</ul>
<p>概括来说，第五级的主要特征是新技术的采用和软件过程的改进被作为日常的业务活动来加以计划和管理。</p>
</blockquote></blockquote></div>
<img src ="http://www.blogjava.net/human2008/aggbug/173748.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/human2008/" target="_blank">灵!</a> 2008-01-08 19:17 <a href="http://www.blogjava.net/human2008/archive/2008/01/08/173748.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>