春秋战国志吧 关注:11,621贴子:336,159

回复:软件能力成熟模型cmm

只看楼主收藏回复

软件项目处理。与顾客的协议是策划(正如在软件项目策划中所描述的)和管理(正
如在软件项目跟踪和监督中所描述的)软件项目的基础。对与顾客关系的控制依靠
遵循有效的更改控制过程(正如在配置管理中所描述的)。
?? 软件项目策划的目的是制定进行软件工程和管理软件项目的合理的计划。这些计划
是管理软件项目的必要基础(正如在软件项目跟踪和监督中所描述的)。没有切合
实际的计划不可能实施有效的项目管理。
?? 软件项目跟踪和监督的目的是建立适当的对实际进展的可视性,使管理者在软件项
目性能显著偏离软件计划时能采取有效的措施。
?? 软件子合同管理的目的是选择合格的软件子承包商,并有效地管理它们。它把用于
基本管理控制的需求管理、软件项目策划、以及软件项目跟踪和监督等关键过程
区域所关注的事情与软件质量保证和软件配置管理等过程区域中的必不可少的协
调结合在一起,并且当合适时对于承包商实施这项管理。
?? 软件质量保证的目的是给管理者提供对于软件项目正采用的过程和正在构造的产
品的恰当的可视性。软件质量保证是绝大多数软件工程过程和管理过程的不可缺少
的部分。
?? 软件配置管理的目的是在项目的整个软件生存周期中建立和维护软件产品的完整
性。软件配置管理是绝大多数软件工程过程和管理过程的不可缺少的部分。


31楼2009-10-11 17:13
回复
    软件项目处理。与顾客的协议是策划(正如在软件项目策划中所描述的)和管理(正
    如在软件项目跟踪和监督中所描述的)软件项目的基础。对与顾客关系的控制依靠
    遵循有效的更改控制过程(正如在配置管理中所描述的)。
    ?? 软件项目策划的目的是制定进行软件工程和管理软件项目的合理的计划。这些计划
    是管理软件项目的必要基础(正如在软件项目跟踪和监督中所描述的)。没有切合
    实际的计划不可能实施有效的项目管理。
    ?? 软件项目跟踪和监督的目的是建立适当的对实际进展的可视性,使管理者在软件项
    目性能显著偏离软件计划时能采取有效的措施。
    ?? 软件子合同管理的目的是选择合格的软件子承包商,并有效地管理它们。它把用于
    基本管理控制的需求管理、软件项目策划、以及软件项目跟踪和监督等关键过程
    区域所关注的事情与软件质量保证和软件配置管理等过程区域中的必不可少的协
    调结合在一起,并且当合适时对于承包商实施这项管理。
    ?? 软件质量保证的目的是给管理者提供对于软件项目正采用的过程和正在构造的产
    品的恰当的可视性。软件质量保证是绝大多数软件工程过程和管理过程的不可缺少
    的部分。
    ?? 软件配置管理的目的是在项目的整个软件生存周期中建立和维护软件产品的完整
    性。软件配置管理是绝大多数软件工程过程和管理过程的不可缺少的部分。
    等级3 的关键过程区域既阐述项目的问题,又阐述组织的问题,这是因为组织建立起便
    对所有项目有效的软件工程过程和管理过程规范化的基础设施。下面列出对等级3 上每个关
    键过程区域的描述:
    ?? 组织过程焦点的目的是规定组织在改进其整体软件过程能力的软件过程活动方面
    的职责。组织过程焦点活动的主要结果是一组软件过程财富(它们在组织过程定义
    中加以描述。正如集成软件管理中所描述的,这些财富供软件项目使用。
    ?? 组织过程定义的目的是开发和保持一组便于使用的软件过程财富,它们能改进横跨
    项目的过程性能,并且为组织能获得积累性的、长期得益奠定基础、这些财富提供
    一组稳定的基本原则,通过诸如培训等机制就能使其成为制度。培训在培训大纲中
    加以描述。
    ?? 培训大纲的目的是培育个人的技能和知识,使得他们能有效地和效率高地执行其任
    务。尽管培训是组织的责任,但是软件项目应该识别出他们所需要的技能、当项目
    需求独特时,该项目应提供所需要的培训。
    ?? 集成软件管理的目的是将软件工程活动和管理活动集成为一个协调的、已定义的软
    件过程,该过程是剪


    32楼2009-10-11 17:14
    回复
      2025-08-22 21:58:20
      广告
      不感兴趣
      开通SVIP免广告
      集成软件管理的目的是将软件工程活动和管理活动集成为一个协调的、已定义的软
      件过程,该过程是剪裁组织的标准软件过程和组织过程定义中所描述的相关的过程
      财富而得到的。剪裁基干项目的经营环境和技术需要,正如在软件产品工程中所描
      述的那样。集成软件管理是从等级2 的软件项目策划和软件项目跟踪和监督进化而
      得到的。
      ?? 软件产品工程的目的是一致地执行一个妥善定义的工程过程,为了能有效地和效率
      高地生产正确的、一致的软件产品,该工程过程集成全部软件工程活动。软件产品
      工程描述项目的技术活动,例如,需求分析、设计、编码和测试.
      ?? 组间协调的目的是为软件工程组积极参与其它工程组工作制定一种方法,使得项目
      更能有效地和效率高地满足顾客的需求。组间协调是集成软件管理的一个涉及多
      学科的方面,它延伸到软件工程之外;不仅应该集成软件过增而且软件工程组和其
      它组之间的相互作用也必须加以协调和控制。
      ?? 同行评审的目的是及早和高效地除去软件工作产品中的缺陷、一个重要的必然结果
      是增强对软件工作产品和可预防的缺陷的了解、同行评审是一种重要而又有效的工


      33楼2009-10-11 17:15
      回复
        程方法,在软件产品工程中调用此方法,可通过法根式审查(Fagan-style 审查)
        [Fagan86〕、结构化走查、或者一些其它的学院式的评审方法下[Freedman 90]加以
        实施。
        等级4 上的关键过程区域的关注焦点是建立起对软件过程和正在构造的软件工作产品
        的定量了解。正如以下所述,该等级上的两个关键过程区域——定量过程管理和软件质量管
        理——是互相紧密依赖的:
        ?? 定量过程管理的目的是定量地控制软件项目的过程性能。软件过程性能表示遵循一
        个软件过程所得到的实际结果。焦点是在一个可测的稳定的过程范围内鉴别出变化
        的特殊原因,并且适当时改正那些促使瞬时变化出现的环境.定量过程管理给组织
        过程定义、集成软件管理、组间协调、和同行评审的实践附加一个内容丰富的测量
        计划。
        ?? 软件质量管理的目的是建立对项目的软件产品质量的定量了解和实现特定的质量
        目标。软件质量管理对软件产品工程中所描述的软件工作产品实施内谷丰富的测量
        计划。


        34楼2009-10-11 17:15
        回复
          等级5 上的关键过程区域包括那些为了实施连续不断的和可测的软件过程改进。组织和
          项目都必须解决的问题。下面列出等级5 的每个关键过程区域的描述。
          ?? 缺陷预防的目的是鉴别缺陷的原因并防止它们再次出现.正如在集成软件管理中所
          描述的,软件项目分析缺陷、鉴别其原因并更改项目定义软件过程。正如在过程复
          政管理中所描述的,应将具有普遍价值的过程更改通知给其它软件项目。
          ?? 技术改革管理的目的是识别出能获利的新技术(即工具、方法和过程),并以有序
          的方式将它引进到组织中去,正如在过程更改管理中所描述的那样。技术改革管理
          的关注焦点是在不断变化的环境里高效率地进行创新。
          ?? 过程更改管理的目的是出于改进软件质量、提高生产率和缩短产品开发周期的目的
          持续不断地改进组织中所采用的软件过程。过程更改管理既采用缺陷预防的增量式
          改进,又采用技术改革管理的创新式改进,并使得整个组织可以享用这些改进。


          35楼2009-10-11 17:16
          回复
            3.4 共同特点
            为方便起见,关键过程区域按共同特点加以组织。共同特点是表明一个关键过程区域的
            实施和规范化是否有效、可重复且持久的一些属性。五个共同特点列举如下:
            执行约定执行约定描述组织保证过程得以建立和继续起作用所必须采取的行动。执
            行约定一般包含制定组织的方针和规定高级管理者的支持。
            执行能力执行能力描述为了能实施软件过程,项目或组织中必须存在的先决条件。
            执行能力一般包括资源、组织结构和培训。
            执行的活动执行的活动描述为实现一个关键过程区域所必须的角色和规程。执行的活
            动一般包括制定计划和规程,进行工作,跟踪它,并在需要时采取纠正措施。
            测量和分析测量和分析描述对过程进行测量和对测量结果进行分析的需要。测量和分
            析一般包括一些为了确定所执行活动的状态和有效性所能采用的测量的例子。
            验证实施验证实施描述那些能保证遵照已建立的过程进行活动的措施。验证一般包
            括管理者和软件质量保证部门所作的评审和审计。
            在执行的活动这一共同特点中的实践描述为了建立过程能力必须作些什么。而其它的实
            践作为一个整体形成了使组织能将执行的活动中所描述的实践规范化的基础。


            36楼2009-10-11 17:44
            回复
              3.5 关键实践
              每个关键过程区域用一些能对实现其目标作贡献的关键实践加以描述。关键实践描述对
              关键过程区域的有效实施和规范化贡献最大的基础设施和活动。


              37楼2009-10-11 17:44
              回复
                每个关键实践的组成是:一个单个句子,常常紧跟着较为详细的描述,后者可能包括例
                子和详细细节。前者,又称为顶层关键实践,说明关键过程区域的基本方针、规程和活动。
                进行详细描述的分量常称作于实践。图3.3 给出软件项目策划关键过程区域中一个关键实
                践的内部结构的例子。
                正如图3.3 所示,为了保证一致地实现提供用于策划和跟踪项目的计划文件这一目标,


                38楼2009-10-11 17:45
                回复
                  2025-08-22 21:52:20
                  广告
                  不感兴趣
                  开通SVIP免广告
                  组织必须建立一个文档化的规程用以导出对软件规模的估计。由于从来不明确阐述测定规模
                  时假定上的许多差别,如果不是用文档化的规程导出这些估计,那么估计值可以在很大范围
                  内变化。在这样的规程中所期待的详细描述包括使用以前的规模数据、对假定提供文件说明、
                  和对信号进行评审。这些准则对是否遵循一个合理的规模估计规程作出判断提供指导。
                  关键实践描述应做“什么”,而不应解释为强制要求应该“如何”实现目标。替代的实
                  践也可能实现该关键过程区域的目标。应该合理地解释关键实践以便判断关键过程区域的目
                  标是否已被有效地实现,尽管实现目标的方式可能不同。“能力成熟度模型的关键实践1.1
                  版”〔Panlk 93b〕中收纳了关键实践,以及有关他们的解释的指南。


                  39楼2009-10-11 17:45
                  回复
                    4.1 软件过程评估和软件能力评价方法
                    软件过程评估集中关注在组织自身的软件过程中识别出改进的优先组。评估组采用
                    CMM 去指导他们对调查发现进行鉴别和优先级排序。这些调查发现与CMM 中的关键实践
                    所提供的指导一起被(例如,软件工程过程小组)用来规划组织的改进策略。
                    软件能力评价集中关注识别与一项在进度要求和预算内构造出高质量软件的特定项目
                    或合同相联系的风险。在采购过程中可以对投标者进行软件能力评价。评价的发现,正如
                    CMM 所设计的那样,可以用于确定在挑选特定承包商方面的风险.也可对现有的合同进行
                    评价以便监控它们的过程性能,其目的是在承包商的软件过程中识别出潜在的可改进之处。
                    CMM 为进行软件过程评估和软件能力评价建立一个共用的参考框架。虽然此两个方法
                    的目的不同,但均采用CMM 作为评估软件过程成熟度的根据。图4.l 概要描述评估和评
                    价中的共同步骤。


                    40楼2009-10-11 17:46
                    回复
                      其第一步是选择一个群组。该群组应该接受在CMM 基本概念和评估或评价方法的细节
                      方面的培训。该群组的成员应是具有丰富软件工程和管理方面知识的专业人员。
                      第二步是让来自待评估或评价单位的代表完成成熟度提问单的填写和其它诊断工具的
                      要求。一旦完成此项活动,评估或评价组就对提问单响应进行分析(第三步),即对提问响
                      应进行统计,并识别出必须作进一步探查的区域。待探查的区域与CMM的关键过程区域相
                      对应。
                      现在该群组已准备好去访问被评估或评价单位的现场(第四步)。从响应分析的结果着
                      手,该群组进行会谈和评审文档以便了解该现场所遵循的软件过程。CMM 中的关键过程区
                      域和关键实践对该群组成员在提问、倾听、评审和综合得自会见和文档中的信息等方面提供
                      指导。在确定现场的关键过程区域的实施是否满足相关的关键区域的目标⑦方面,该群组运
                      用专业性的判断。当CMM的关键实践与现场的实践问存有明显差异时,该群组必须用文件
                      记下用于判断此关键过程区域的理论依据。
                      在现场工作阶段结束时,该群组生成一个调查发现清单(第五步),标识出该组织软件


                      41楼2009-10-11 17:48
                      回复
                        过程的强项和弱项。在软件过程评价中,该调查发现成为提出过程改进建议的基础;在软件
                        能力评价中调查发现成为采购单位所作的风险分析的一部分。
                        最后,该群组作出一份关键过程区域剖面图(第六步),指出该组织已满足和尚未满足
                        关键过程区域目标的那些区域。一个关键过程区域可能是已满足的.但仍有一些相关的调查
                        发现,假定这些调查发现没有识别出能阻止实现该关键过程区域的任何一个目标的主要问
                        题。
                        总之,软件过程评估和软件能力评价方法两者均:
                        ?? 采用成熟度提问单作为现场访问的出发点;
                        ?? 采用CMM 作为指导现场调查研究的路线图;
                        ?? 利用CMM 中的关键过程区域生成标识软件过程强项和弱项的调查发现;
                        ?? 在对关键过程区域目标满足情况进行分析的基础上,推导出一个剖面;
                        ?? 根据调查发现和关键过程区域剖面,向合适的对象提出结论意见。


                        42楼2009-10-11 17:49
                        回复
                          4.2 软件过程评估和软件能力评价之间的差异
                          尽管有这些相似之处,但软件过程评估或软件能力评价的结果可能不同,甚至在相继运
                          用相同的方法接连进行评估(或评价)的情况下也是如此。
                          一个原因是评估或评价的范围可能变化。首先。必须确定受调查的组织情况。对一个大
                          公司而言,对“组织”有几种不同的定义是完全可能的。范围可以基于有共同的高级管理者、
                          共同的地理位置、指明为一个盈亏中心、共同的应用领域或者其它考虑。其次,甚至在似乎
                          是相同的组织中,所选项目的样本也可能影响范围。评估可能对公司中的一个部门进行,那
                          么评估组基于全部门的范围得出其调查发现。后来,可能对该部门中的一条产品纷进行评价,
                          此时评价组所得出的调查发现基于窄得多的范围。没有了解上下文就在这些结果问作比较是
                          成问题的。
                          软件过程评估和软件能力评价在动机、目的、输出和结果的所有权上均不同。这些因素
                          导致在会谈目的、询问的范围、所采集的信息和结果的表示方式上有本质的不同。如果考察
                          所采用的详细规模,那么评估和评价的方法大不相同。评估培训并不使得该组作好完成评价
                          工作的准备,反之亦然。
                          软件过程评估都是在开放、合作的环境中进行的,评估的成功取决于管理者和专业人员
                          两方面对改进组织的支持。评估目的在于暴露问题和帮助经理和工程师改进他们的组织。尽
                          管提问单在使评估组的注意力集中于成熟度等级问题上是有价值的,但是重点仍应放在作为
                          了解组织软件过程的工具的结构化和非结构化的会谈上。除了识别组织所面临的软件过程问
                          题外,评估的最有价值的结果还有为改进而作的买进,全组织范围关注过程,以及执行改进
                          行动计划上的动力和热情。
                          另一方面,软件能力评价在更为面向审计的环境中进行。评价目的与金钱密切相关,因
                          为评价群组的推荐将帮助挑选承包商或设置奖金。重点放在巴文档化的审计记录上,它们能
                          揭示组织实际执行的软件过程。
                          可是这并不意味着软件过程评估和软件能力评价一定不能比较。由于两者均基于
                          CMM,类似点和不同点应该是明显的且可以解释的。


                          43楼2009-10-11 17:50
                          回复
                            4.3 CMM 在过程改进方面的其它用法
                            对软件工程过程组(SEPG)或试图改进其软件过程的其它组来说,CMM 在改进措施
                            的策划上,措施计划的实施上、和过程定义上有着特殊的价值。在策划改进措施期间,具有
                            有关其软件过程问题和经营环境的知识的软件工程过程组的成员,可将CMM 中关键过程区
                            域的目标与其当前的实践相比较。应该考察与公司目标、管理优先级、实践运行的层次、实
                            施每次实践对组织的价值、以及该组织在其文化背景下实施一个实践的能力等方面有关的关
                            键实践。
                            接下来软件工程过程组必须确定需要作哪些过程改进,如何实现更改、以及如何获得所
                            需要的买进。CMM 通过给有关过程改进的讨论提供讨论的出发点,并且帮助揭示与通用软
                            件工程实践所采用的那些假定完全不同的假定,从而对这项活动提供帮助。在实施行动计划
                            时,过程组可用CMM 和关键实践来构造部分可操作的行动计划和定义软件过程。


                            44楼2009-10-11 17:51
                            回复
                              2025-08-22 21:46:20
                              广告
                              不感兴趣
                              开通SVIP免广告
                              5 CMM 的未来发展方向
                              实现软件过程成熟度的较高等级是增量式进化过程,要求对不断改进过程有长期的支
                              持。软件组织可能用十年或更长的时间去建立持续过程改进的基础和文化。虽然对绝大多数
                              美国公司来说,长达十年的过程改进计划是陌生的,但是为了成为成熟软件组织,这种层次
                              的努力是必须的。这个时间框架与其它工业部门(例如美国的汽车制造业)的经验相一致,
                              它们在过程成熟度上已取得重大的进展[Gabor 90]。


                              45楼2009-10-11 17:51
                              回复