第二次课-软件生存周期过程与过程体系(9.11)_第1页
第二次课-软件生存周期过程与过程体系(9.11)_第2页
第二次课-软件生存周期过程与过程体系(9.11)_第3页
第二次课-软件生存周期过程与过程体系(9.11)_第4页
第二次课-软件生存周期过程与过程体系(9.11)_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二讲第二讲 软件生存周期过程软件生存周期过程一、软件过程一、软件过程 开发逻辑开发逻辑, ,是获取正确软件的关键是获取正确软件的关键. .本次课我们要掌握: 什么是软件生命周期?(掌握) 什么是软件生命周期过程?任务与活动?(掌握) 基本过程、支持过程和组织过程(了解)软件开发软件开发本质本质软软件件生生存存周周期期过过程程定义定义软软件件生生存存周周期期模模型型软软件件工工程程生生存存周周期期过过程程支支持持过过程程方方向向(活活动动与与定定序序)的的建建立立形形成成软件开发方法学软件开发方法学 结构化方法结构化方法 面向对象方法面向对象方法 面向数据结构面向数据结构 方法方法 维也纳开发

2、方维也纳开发方 法(法(VDM)给给出出实实现现开开发发过过程程的的途途径径支持支持/管理技术与方法管理技术与方法作用于作用于1 1 软件生存周期过程软件生存周期过程 1)基本概念基本概念 软件生存周期软件生存周期是从软件构思一直到软件被废弃或升级替换的是从软件构思一直到软件被废弃或升级替换的全过程。全过程。 具体来说,共分为八个阶段:问题提出,可行性分析;需求具体来说,共分为八个阶段:问题提出,可行性分析;需求分析;概要设计;详细设计;软件实现;软件测试;维护。分析;概要设计;详细设计;软件实现;软件测试;维护。为了表述软件开发需要做什么为了表述软件开发需要做什么,引入了以下三个概念:引入了

3、以下三个概念: 软件过程软件过程(process):活动的一个集合;:活动的一个集合; 活动活动(activity):任务的一个集合;:任务的一个集合; 注注:”软件过程软件过程”和和”活动活动”相当于复合映射相当于复合映射. 任务任务(task): 将输入转换为输出的操作。将输入转换为输出的操作。 注注:”任务任务”相当于原子映射相当于原子映射. 2) 2) 过程分类过程分类 按过程的主体按过程的主体, ,可分为三类过程可分为三类过程: (1)(1)基本过程基本过程(primary processes)(primary processes) 是指那些与是指那些与软件生产软件生产直接相关的活动

4、集。直接相关的活动集。 (2(2)支持过程)支持过程(supporting processes )(supporting processes ) 是有关各方按其目标所从事的一系列是有关各方按其目标所从事的一系列支持支持活动集。活动集。 (3(3)组织过程)组织过程(institutional processes)(institutional processes) 是指那些与是指那些与软件生产组织软件生产组织有关的活动集。有关的活动集。 基本过程基本过程支持过程支持过程组织过程组织过程(1(1)基本过程基本过程 又按过程中活动的不同主体,将基本过程(类)分又按过程中活动的不同主体,将基本过程(类

5、)分 为为5 5个过程个过程:获取过程、供应过程、开发过程、:获取过程、供应过程、开发过程、 运行过程、维护过程运行过程、维护过程 获取过程获取过程基本过程基本过程支持过程支持过程组织过程组织过程组织为组织为供应过程供应过程开发过程开发过程运行过程运行过程维护过程维护过程1 1、获取过程、获取过程 获取过程是获取者所从事的活动和任务。获取过程是获取者所从事的活动和任务。 其目的是获得满足客户所表达的那些要求的产品或服务。其目的是获得满足客户所表达的那些要求的产品或服务。 功能需求和非功能需求功能需求和非功能需求 约束和满足条件约束和满足条件2 2、供应过程、供应过程 供应过程是供方为了向客户提

6、供满足需求的软件产品供应过程是供方为了向客户提供满足需求的软件产品或服务所从事的一系列活动和任务。或服务所从事的一系列活动和任务。 其目的是向客户提供一个满足已达成需求的产品或服务。其目的是向客户提供一个满足已达成需求的产品或服务。 该过程的启动,或通过为应答需方的招标书而开始编制该过程的启动,或通过为应答需方的招标书而开始编制投标书的决定,或通过与需方签订一项提供系统、软件投标书的决定,或通过与需方签订一项提供系统、软件产品或软件服务的合同。产品或软件服务的合同。 继之,确定为管理和保证项目所需的规程和资源,包括继之,确定为管理和保证项目所需的规程和资源,包括编制项目计划,执行计划,一直到将

7、系统、软件产品或编制项目计划,执行计划,一直到将系统、软件产品或软件服务交付给需方为止。软件服务交付给需方为止。3、开发过程开发过程 是是软件开发者软件开发者所从事的一系列活动。所从事的一系列活动。 包括包括13个活动:个活动: 过程的实施准备过程的实施准备 系统需求分析系统需求分析 系统结构设计系统结构设计 软件需求分析软件需求分析 软件体系结构设计软件体系结构设计 软件详细设计软件详细设计 软件编码和测试软件编码和测试 软件集成软件集成 软件合格测试软件合格测试 系统集成系统集成 系统合格测试系统合格测试 软件安装软件安装 软件验收支持软件验收支持 4、运行过程、运行过程 运行过程是系统操

8、作者所从事的一系列活运行过程是系统操作者所从事的一系列活动和任务。动和任务。 包含如下四个活动:包含如下四个活动: 过程实现;过程实现; 运行测试;运行测试; 系统运行;系统运行; 用户支持。用户支持。5、维护过程、维护过程 维护过程是维护者所从事的一系列的活动和任维护过程是维护者所从事的一系列的活动和任务。务。 包括如下活动:包括如下活动: 过程实现;过程实现; 问题和修改分析;问题和修改分析; 修改实修改实现;现; 维护评审维护评审/验收;验收; 迁移;迁移; 软件退役。软件退役。(2 2)支持过程支持过程 又按过程中活动的不同主体,将支持过程(类)分为又按过程中活动的不同主体,将支持过程

9、(类)分为 8 8个过程个过程:文档过程、配置管理过程、质量保证、验证过程、文档过程、配置管理过程、质量保证、验证过程、确认过程、联合评审、审计过程、确认过程、联合评审、审计过程、 问题解决等。问题解决等。文档过程文档过程基本过程基本过程支持过程支持过程组织过程组织过程组织为组织为配置管理过程配置管理过程质量保证过程质量保证过程验证过程验证过程联合评审过程联合评审过程确认过程确认过程审计过程审计过程问题解决过程问题解决过程1:1:文档过程文档过程 是记录由某一过程或活动所产生信息的过程 4个活动:过程的实施准备 设计与开发 制作与发行 维护 2:配置管理过程:配置管理过程 是应用管理上和技术上

10、的规程来支持整个软件生存周期的过程。 6个活动: 过程实现 配置标识 配置控制 配置状态统计 配置评价 发布管理和交付3:3:质量保证过程质量保证过程 是为项目生存周期内的软件过程和软件产品提供适当保障的过程。 4个活动:过程实现 产品保证 过程保证 质量体系保证 4:验证过程:验证过程 证实一个过程或项目的每一软件工作产品或服务是否恰当第反映了已规定的需求。 2个活动: 过程实现 验证5:5:确认过程确认过程 是一个确定需求和最终的、已建成的系统或软件产品是否满足特定预期用途的过程。 2个活动:过程实现 确认6:联合评审过程:联合评审过程7:审计过程:审计过程8:问题解决过程:问题解决过程(

11、3)(3)组织过程组织过程(Organizational life cycle processesOrganizational life cycle processes)分为分为4 4个过程个过程:管理过程、基础设施过程、培训过程、改进过程管理过程、基础设施过程、培训过程、改进过程 管理过程管理过程基本过程基本过程支持过程支持过程组织过程组织过程组织为组织为基础设施过程基础设施过程培训过程培训过程过程改进过程过程改进过程1 1:管理过程:管理过程 管理过程包括由管理其对应过程的任何一方所执行的一般性活动和任务,管理人员负责:产品管理;项目管理对所应用的那些过程(例如,获取、供应、开发、运行、维

12、护或支持过程)的任务管理。 主要活动包括: 过程的启动和范围定义; 规划; 实施与控制 ; 评审与评估; 测量; 表决(closure) 2 2:基础设施基础设施过程过程 基础设施过程是为其他过程建立和维护所需基础设施的过程。基础设施可以包括用于开发、运行或维护的硬件、软件、工具、技术、标准和设施。包括下述活动: a) 过程实施的准备; b) 建立基础设施; c) 维护基础设施。 3 3:改进过程改进过程 是一个建立、评估、测量、控制和改进软件生存周期过程的过程。 主要活动: 过程建立 过程评估过程改进 4 4:培训过程培训过程 是为组织和项目提供具有技能和知识人员的过程。 主要活动:过程实现

13、定义培训需求补充合格的员工 评估员工业绩 建立项目团队需求 知识管理 3) 3) 软件过程之间的关系软件过程之间的关系获取过程获取过程获取过程供应过程供应过程管理过程管理过程运行过程运行过程开发过程开发过程维护过程维护过程获取者获取者供应者供应者管理者管理者运行者运行者用用 户户开发者开发者维护者维护者开发者开发者维护者维护者组织过程:管理、改进组织过程:管理、改进.支持过程:文档、质量保证、支持过程:文档、质量保证、 配置管理配置管理 .合合同同使使用用合同观点合同观点管理观点管理观点运行观点运行观点开发观点开发观点支持观点支持观点小结小结 软件生命周期软件生命周期 软件生命周期过程软件生命

14、周期过程 基本过程、支持过程、组织过程基本过程、支持过程、组织过程2.2 软件生存周期模型软件生存周期模型) )基本概念基本概念 软件生存周期模型软件生存周期模型IEEE Standard 12207.0-1996 把一个软件生存周期模型描述为:一个包括软件产品开把一个软件生存周期模型描述为:一个包括软件产品开发、运行和维护中有关过程、活动和任务的框架,覆盖了从该发、运行和维护中有关过程、活动和任务的框架,覆盖了从该系统的需求定义到系统的使用终止。系统的需求定义到系统的使用终止。中国计算机科学与技术百科全书中国计算机科学与技术百科全书 称软件生存周期模型为称软件生存周期模型为“软件开发模型软件

15、开发模型”,并把它定义为:,并把它定义为:软件过程、活动、任务的结构框架。软件过程、活动、任务的结构框架。典型的软件生存周期典型的软件生存周期需求分析需求分析软件设计软件设计测试测试编码编码运行维护运行维护可行性研究可行性研究开发开发时期时期运行时期运行时期计划计划时期时期)瀑布模型瀑布模型()()项目的开发依次经过:需求、设计、编码和单元测试、项目的开发依次经过:需求、设计、编码和单元测试、 集成以及维护集成以及维护 这一基本路径。这一基本路径。 ()在每一阶段提交以下产品:软件需求规约、设计文档、()在每一阶段提交以下产品:软件需求规约、设计文档、 实际代码、测试用例、最终产品等。工作产品

16、(又称可实际代码、测试用例、最终产品等。工作产品(又称可提交的产品,提交的产品,DeliverablesDeliverables) 流经流经“正向正向”开发的基本步开发的基本步骤路径。骤路径。 ()()“反向反向”步骤流表示对前一个可提交产品的重复变更(又步骤流表示对前一个可提交产品的重复变更(又称为称为“返工返工”(Rework)(Rework)) 。 由于所有开发活动的非确定性,因此是否需要重复变由于所有开发活动的非确定性,因此是否需要重复变更,这仅在下一个阶段或更后的阶段才能认识到。更,这仅在下一个阶段或更后的阶段才能认识到。 返工不仅在以前阶段的某一地方需要,而且对当前正返工不仅在以前

17、阶段的某一地方需要,而且对当前正在进行的工作也是需要的。在进行的工作也是需要的。关于瀑布模型的几点说明关于瀑布模型的几点说明( ()瀑布模型的优点)瀑布模型的优点 虽然瀑布模型是一个比较虽然瀑布模型是一个比较“老老”的、甚至过时的开发模型,的、甚至过时的开发模型,但其优点为:但其优点为: 在决定系统怎样做之前,存在一个需求阶段,鼓励对系在决定系统怎样做之前,存在一个需求阶段,鼓励对系 统统“做什么做什么”进行规约(即设计之前的规约)。进行规约(即设计之前的规约)。 在建造构件之前,存在一个设计阶段,鼓励规划系统结在建造构件之前,存在一个设计阶段,鼓励规划系统结 构(即编码之前的设计)。构(即编

18、码之前的设计)。 在每一阶段结束时进行复审,允许获取方和用户的参与。在每一阶段结束时进行复审,允许获取方和用户的参与。 允许基线和配置早期接受控制。允许基线和配置早期接受控制。 前一步工作产品可作为下一步被认可的、文档化的基线。前一步工作产品可作为下一步被认可的、文档化的基线。()()瀑布模型存在的不足瀑布模型存在的不足 客户必须能够完整、正确和清晰地表达他们的需求;开发客户必须能够完整、正确和清晰地表达他们的需求;开发 人员一开始就必须理解其应用。人员一开始就必须理解其应用。 在开始的两个或三个阶段中,很难评估真正的进度状态在开始的两个或三个阶段中,很难评估真正的进度状态; ; 设计、编码和

19、测试阶段都可能发生延期。设计、编码和测试阶段都可能发生延期。 在一个项目的早期阶段,过分地强调了基线和里程碑处在一个项目的早期阶段,过分地强调了基线和里程碑处 的文档的文档; ;可能要花费更多的时间,用于建立一些用处不可能要花费更多的时间,用于建立一些用处不 大的文档。大的文档。 当接近项目结束时,出现了大量的集成和测试工作。当接近项目结束时,出现了大量的集成和测试工作。 直到项目结束之前,都不能演示系统的能力。直到项目结束之前,都不能演示系统的能力。(3)瀑布模型适用的情况瀑布模型适用的情况在开发中,向下、渐进的路径占支配地位。也就是说,在开发中,向下、渐进的路径占支配地位。也就是说, 需求

20、已被很好地理解;需求已被很好地理解; 过程设计人员也很清楚:开发组织非常熟悉为实现这一模过程设计人员也很清楚:开发组织非常熟悉为实现这一模 型所需要的过程(或经过培训后,熟悉什么时候来支持这型所需要的过程(或经过培训后,熟悉什么时候来支持这 一项目,以实现这一模型所需要的过程)。一项目,以实现这一模型所需要的过程)。因此为了避免产生过多因此为了避免产生过多的反复迭代工作,增加开发成本,的反复迭代工作,增加开发成本,一般在准备采用瀑布模型一般在准备采用瀑布模型(也包括其他模型也包括其他模型)时,需要考虑以下时,需要考虑以下2个问题:第一个问题是,过程设计人员必须对初始产品个问题:第一个问题是,过

21、程设计人员必须对初始产品(通常通常 是软件需求规约,是软件需求规约,SRS)的不确定性进行评估。的不确定性进行评估。 另一个问题是,组织是否具有熟练实施每个活动和另一个问题是,组织是否具有熟练实施每个活动和 任务的历史经验。任务的历史经验。二、软件过程改进1.过程改进的“IDEAL”模型特许基础设施发 启设置关联激励变更当前的与 预期的状 态特征化推荐 设置 优先 顺序 确定改进途径策划行动提出解决 方案试用并检查 解决方案 改进解决方案 实施 解决方案分析与 确认提出后续行动建议 启动InitiatingDianosing 诊断建立Establishing行动Acting Learning

22、提高2.软件过程改进框架 四个组成部四个组成部 - - 软件过程基础设施软件过程基础设施 - - 软件过程改进路线图软件过程改进路线图 - - 软件过程评估方法软件过程评估方法 - - 软件过程改进计划软件过程改进计划 四部分关系四部分关系 - - 互相联系,缺一不可互相联系,缺一不可- - 基础设施是条件基础设施是条件- - 评估是改进的推动力评估是改进的推动力- - 路线图为改进指向路线图为改进指向- - 全部活动需全部活动需18-2418-24个月个月 B.软件过程改进路线图C.软件过程评估方法D.软件过程改进A.基础设施A.A.软件过程基础设施软件过程基础设施 什么是软件过程基础设施什

23、么是软件过程基础设施 - 支持软件过程的基础框架和结构基础包括: 机构和管理的岗位和职责 必要的技术工具和平台 - 作用:用于支持 定义过程 实施过程活动 获取和分析有关过程执行情况的信息 开展过程改进活动 - 分类: 组织和管理基础设施 技术基础设施 组织和管理基础设施组织和管理基础设施 -建立、实施、监控过程活动所需的岗位及其职责 -机构级:如软件工程过程组SEPG -项目级或关键过程域级 技术基础设施技术基础设施 -支持过程改进的技术平台、工具 -工具类型 数据和文档存储和检索工具 检索和决策支持工具 过程实施支持平台、过程模板B.软件过程改进路线图 - CMM/CMMI- CMM/CM

24、MI是典型的过程改进路线图,其特点:是典型的过程改进路线图,其特点: 能表明过程有效性不同的等级能表明过程有效性不同的等级/ /成熟度等级成熟度等级混乱的持续改进的规范化的标准和协调的可预见的 能给出每一等级的属性/关键域和特点 ISO/IEC15504是另一种2维的平面路线图C.C.软件过程评估软件过程评估 - 评估是给机构定位,只有定位才能明确改进的方向。 - 评估要证实机构是否利用了使过程有效的各种机制以 及利用的程度。 - 评估的要求: 不仅限于文档 要考察培训的情况 要证实过程的有效性 不应只利用提问单,还要配合其它方法 评估前对评估组成员进行培训 参考路线图D.软件过程改进计划 -

25、 以评估结果为基础(已明确了强项和弱项) - 应包括进度、资源投入、负责人、质量计划、 配置管理计划等 - 必须明确界定改进范围和边界,有明确的目标 - 必须明确人员的责任3.3.建立有效的软件过程建立有效的软件过程 条件 过程文件得到充分的理解、遵循和实施 得到管理者的切实有效支持 并不停留在口头上,文件上 理解到过程的实施最终是与业务目标是一致的 不是为给别人看的,是给自己用的 要明确过程的责任人和所有者 过程不能没有责任人和所有者,否则会出现混乱必须作培训,并有针对性地对不同人员作不同的培训:必须作培训,并有针对性地对不同人员作不同的培训:过程培训对象过程培训内容主管人员过程对业务效益的

26、意义培训过程组人员具体过程、方法和技术培训项目经理过程管理及过程改进认识培训职能经理过程认识和过程管理培训项目组和职能人员具体的过程、方法和技术培训基础设施人员具体的基础设施和支持培训质量保证组人员具体的过程检验和监控培训过程实施结果的度量和反馈过程实施结果的度量和反馈 及时地对过程实施情况进行度量对理解过程的效果 十分重要 度量可分为过程的有效性、过程效率和过程适用性 三个方面过程度量的类型过程度量的类型类型类型量量 度度 MetricsMetrics过程的有效性过程的有效性性能性能 PerformancePerformance可靠性可靠性 RelibilityRelibility可用性可用

27、性 UsabilityUsability过程活动的成本过程活动的成本 响应度响应度 ResponsivenessResponsiveness可信性可信性 DependabilityDependability适应性适应性 ApplicabilityApplicability结果的精确性结果的精确性 Accuracy of resuitsAccuracy of resuits得到产品的质量得到产品的质量过程效率过程效率处理时间处理时间单位输出所耗资源单位输出所耗资源单位输出的成本效益比单位输出的成本效益比 Ratio of cost and benefitRatio of cost and ben

28、efit规定时间内报告错误修正率规定时间内报告错误修正率 Ratio of improvementRatio of improvement过程适用性过程适用性各种规模项目的适合性各种规模项目的适合性 SuitabilitySuitability不同类型产品的适合性不同类型产品的适合性 SuitabilitySuitability满足不同需求的可定制性满足不同需求的可定制性 CustomizabilityCustomizability满足不同用户期望的适用性满足不同用户期望的适用性 AdaptabilityAdaptability适应不同方法、技术和工具的灵活性适应不同方法、技术和工具的灵活性

29、FlexibilityFlexibility过程应用者的反馈过程应用者的反馈 反馈意见收集形式: 普遍调查 重点访问 主动反映 征询反馈的问题举例: 过程对你是个帮手还是障碍? 在你的工作中是怎样帮你或妨碍你的吗? 在什么情况下,过程对你有用? 过程的哪些方面需要改进? 你认为过程应该怎样改进? 是什么因素让你遵循过程?吸收来自外部信息吸收来自外部信息 考虑过程运行中周边业务环境的影响过程的推行和检查机制过程的推行和检查机制 发现不符合现象,加以纠正和预防 检查的形式可以多种多样业务成果所有者过程定义活动及工具有效的过程环境过程改进技术进步反馈度量及反馈培训建立过程文化建立过程文化 过程制度化

30、:过程思维已渗入整个组织的日常活动 过程制度化的两个支柱 过程文化 过程基础设施过程文化技术工具管理机构过程基础设施过程制度化过程文化过程文化 文化:特定人群在特定时间内表现出的习惯和文明 过程文化:人们的习惯和行为受到过程思维和过程管理原则的影响 是人们公认的 并非勉强的和强加的 不是停留在口头上的 过程文化的特征过程文化的特征特征特征表表 现现 可见性可见性软件过程主管领导明确,过程文件和过程所有者明确软件过程主管领导明确,过程文件和过程所有者明确过程定义和过程职责明确过程定义和过程职责明确规范性规范性全体人员遵循过程的要求全体人员遵循过程的要求制度化制度化过程的要求体现在方针和规程中过程

31、的要求体现在方针和规程中管理者承诺管理者承诺最高管理者和各级管理者的全力支持最高管理者和各级管理者的全力支持推行推行过程的实施是有力度的,也应是有成效的,应有报告反映不符过程的实施是有力度的,也应是有成效的,应有报告反映不符合现象合现象所有者所有者SEPGSEPG人员的责任明确,工作有效人员的责任明确,工作有效反馈反馈反馈机制保证能有效地采集开发人员、项目组成员的反应反馈机制保证能有效地采集开发人员、项目组成员的反应效果评估效果评估评估过程目标达到的程度评估过程目标达到的程度培训培训对全体开发人员的过程培训是强制性的对全体开发人员的过程培训是强制性的对项目新成员的过程入门培训是强制性的对项目新

32、成员的过程入门培训是强制性的改进改进全体相关人员参与软件过程改进的策划与实施全体相关人员参与软件过程改进的策划与实施 过程基础设施是必要的保证条件建立过程数据库建立过程数据库 建立收集过程实施情况信息的机制 包括成功和失败的经验与教训信息 对倡导当前项目的顺利开展和未来项目的成功均有意义过程改进的原则过程改进的原则 软件过程改进的6条基本原则(Humphrey,1989) 对软件过程的重大变更必须是自上而下的 每个人都必须参与 有效的变更需有现行过程的目标和对它的深入了解 变更要持续进行 软件过程变更如果没有自觉的努力和定期的强化将不会持久 软件过程改进需要有必要的投入 不遵循上述原则可能导致

33、的后果 过程改进的积极性因高层领导支持不力而失败 过程变更计划由于其目标未明确规定而失败 过程变更计划因缺少每个员工的参与而失败软件过程公用模型或软件过程国际标准组织定义的专用软件过程 组织或领域的特性 注重:适用性效率注重:稳定性灵活性组织特定的剪裁由国际标准或公用模型得到组织定义的过程组织的标准过程 项目定义的软件过程反馈项目特性 注重:适用性效率注重: 稳定性 灵活性 通过对组织标准过程剪裁得到的项目过程项目专用剪裁 软件过程国际标准软件过程国际标准软件过程公用模型软件过程公用模型举举 例例 ISO/IEC 15504ISO/IEC 15504ISO9001(ISO90003)ISO90

34、01(ISO90003)ISO/IEC 12207ISO/IEC 12207CMM/CMMICMM/CMMITrilliumTrilliumV-ModelV-Model制定、发布和维护制定、发布和维护者者国际标准化机构(国际标准化机构(ISOISO、IECIEC)或国家标准化机构或国家标准化机构专业性组织(专业性组织(SEISEI、BELLBELLCanadaCanada)等)等规定的内容规定的内容是实施的组织必须达到的基本要求是实施的组织必须达到的基本要求是实施的参考,有一定的灵活性是实施的参考,有一定的灵活性是否达到规定的要是否达到规定的要求要通过求要通过审核审核 AuditAudit认证

35、认证 CertificateCertificate评估评估 AssessmentAssessment评价评价 EvaluateEvaluate对实施组织检查的对实施组织检查的结果结果权威机构颁发的认证证书权威机构颁发的认证证书主任评估员签发的证件主任评估员签发的证件(并在专业性组织备案)(并在专业性组织备案)实施组织的主要目实施组织的主要目的的取得用户信任、达到商业目标取得用户信任、达到商业目标鉴定和提升组织的过程能力鉴定和提升组织的过程能力对实施组织检查的对实施组织检查的方式方式第三方审核:检查是否严格按标准实施第三方审核:检查是否严格按标准实施 自我评估自我评估 能力评价能力评价实施的范围

36、实施的范围整个组织或部分组织整个组织或部分组织组织中的某个项目或整个组织组织中的某个项目或整个组织 4.软件过程改进的标准与模型三、三、CMMICMMI简介简介过程模型什么是过程模型什么是过程模型 过程模型是一组结构化的实践过程模型是一组结构化的实践 这些实践描述了有效过程的一些特征这些实践描述了有效过程的一些特征 这些实践已被证明是有效的,是经验的总结这些实践已被证明是有效的,是经验的总结怎样使用过程模型怎样使用过程模型 可用来帮助制定过程改进目标,并参照它确可用来帮助制定过程改进目标,并参照它确定过程改进的优先顺序定过程改进的优先顺序 可用以帮助获得稳定的和成熟的过程可用以帮助获得稳定的和

37、成熟的过程 过程模型是项目过程和组织过程改进的指导过程模型是项目过程和组织过程改进的指导 可用以诊断组织当前实践的状态,进行过程可用以诊断组织当前实践的状态,进行过程估价估价(Appraisal) Appraisal) 使用过程模型可以使用过程模型可以指明过程改进的起点指明过程改进的起点提供行业的先进经验提供行业的先进经验给出优先开展过程改进的框架给出优先开展过程改进的框架帮助组织走上过程改进的道路帮助组织走上过程改进的道路的产生和演化什么是什么是CMM/CMMICMM/CMMI CMM CMM Capability Maturity Model Capability Maturity Mod

38、el - - 它是含有个等级的模型,成熟度由低到高它是含有个等级的模型,成熟度由低到高- - 适用于计算机软件适用于计算机软件 - - “软件组织可通过它来定义、实践、度量、控软件组织可通过它来定义、实践、度量、控 制和改进自己的软件过程制和改进自己的软件过程”(PaulkPaulk,19941994) - - “软件系统的质量是由开发它所遵循的过程质软件系统的质量是由开发它所遵循的过程质 量决定的量决定的”(Watts HumphreyWatts Humphrey) SEISEI与与CMMCMM - SEI - SEI:Software Engineering InstituteSoftwa

39、re Engineering Institute是是 CMMCMM的开发机构的开发机构 - SEI- SEI隶属于美国隶属于美国PennsylvaniaPennsylvania州州PittsburghPittsburgh 的的Carnegie-MellonCarnegie-Mellon大学大学 - - 成立于成立于19841984年,受美国军方资助年,受美国军方资助 - 1986- 1986年立项,目标是:年立项,目标是: 给出一种评估软件给出一种评估软件 承包商能力的办法协助软件组织改进其软承包商能力的办法协助软件组织改进其软 件过程,以解决软件开发中遇到的成本、件过程,以解决软件开发中遇到

40、的成本、 质量和拖延交付的问题质量和拖延交付的问题 CMMICMMICapability Maturity Model IntegrationCapability Maturity Model Integration - - 由于由于CMMCMM的成功,和软件相关的领域也提出了一些的成功,和软件相关的领域也提出了一些能力成熟度模型,如:能力成熟度模型,如: 系统工程能力成熟度模型系统工程能力成熟度模型 SE-CMMSE-CMM 集成化产品管理能力成熟度模型集成化产品管理能力成熟度模型 IPM-CMMIPM-CMM 人员管理成熟度模型人员管理成熟度模型 P-CMMP-CMM - - 多种相近模型

41、的实施对组织来说带来许多不便,于多种相近模型的实施对组织来说带来许多不便,于 是是SEISEI决定将相关的模型结合起来决定将相关的模型结合起来 CMM/CMMICMM/CMMI的发展的发展1986198719912006199320002002项目启动成熟度提问单CMM1.0CMM1.1CMMI1.0CMMI1.2CMMI1.1CMMI 涉及的知识领域1. 系统工程 (System Engineering)2. 软件工程 (Software Engineering)3. 集成化产品和过程开发 (Integrated Product and Process Development)4. 分包供应

42、 (或称外购 Supplier Sourcing )CMMICMMI的结构的结构CMMI 的两种表示1 1)较成熟度分级给出更)较成熟度分级给出更为细致和精确的考虑。为细致和精确的考虑。2 2)各过程域之间并没有)各过程域之间并没有互相依赖关系。互相依赖关系。3 3)组织可根据业务需求)组织可根据业务需求进行剪裁,从而集中力量进行剪裁,从而集中力量加强某些过程域的改进。加强某些过程域的改进。1 1)成熟度分级已为人们)成熟度分级已为人们熟悉,按顺序逐步升级能熟悉,按顺序逐步升级能使组织很好地受益。使组织很好地受益。2 2)易于在行业中与对手)易于在行业中与对手作横向比较。作横向比较。3 3)分

43、级的软件)分级的软件CMMCMM已广泛已广泛被接受。被接受。特点特点0-50-5级级 (CL0-CL5)CL0-CL5)1-51-5级级 (ML1-ML5)ML1-ML5)等级等级过程域过程域组织组织针对针对能力能力成熟度成熟度关注关注连续表示连续表示分级表示分级表示ML5ML4ML3ML2ML1分级表示连续表示CL0CL1CL2CL3CL4CL5分级表示的成熟度等级优化级量化管理级已定义级已管理级初始级 OptimizingQuantitatively ManagedML5ML4ML3ML2ML1DefinedManagedInitial连续表示的能力等级优化级量化管理级已定义级已管理级已实

44、施级不完全级optimizingQuantitatively ManagedDefinedManagedPerformedIncompleteCL5CL0CL1CL2CL3CL4分级表示的好处 给出了过程改进的顺序,从最基础的管理实践开始,通过 既定的和已证实的,按逐级提高的路径进行。每一级都作 为更高一级的基础。 可以在组织内部和组织之间进行成熟度级别的比较。 很容易从SW-CMM向CMMI转移。 为使用模型的组织提供一个能综合估价结果的明确等级 结论,可在不同的组织间进行比较。 采用连续式表示的好处 可按最为切合企业业务目标要求的过程改进次序,从 而降低了企业的风险。 可在组织内或是在组织

45、间逐个过程域作比较,也可与和其 等价的等级比较结果。 很容易从电子产业联盟(Electronic Industries Alliance) 的过渡标准(Interim Standard)EIA/IS 731 转换到CMMI. 很容易和过程改进的国际标准ISO/IEC 15504相比较,两者 的过程域相似。过程域 (Process Area PA ) 过程域是指对过程改进和提高组织过程能力十分重要的 一些过程,是过程能力的体现。 过程域分为4类,共计22个 1) 项目管理类 - 用于策划和监控项目的过程域 2) 工程类 - 用于产品开发和维护的过程域 3) 支持类 - 用于支持其它过程域实施的过

46、程域 4) 过程管理类 用于对过程进行策划、定义、实现、 评估、测量和改进的过程域。 过程域由一组目标以及为达到这些目标而要实施的 实践构成。分类PA 成熟度级别过程域12345项目管理PP项目策划 PMC项目监控 SAM供方合同管理 IPM集成项目管理 RM风险管理 QPM量化项目管理 工程需求管理 REQD=RD需求开发 TS技术方案 PI产品集成 VER验证 VAL确认 支持CM配置管理 PPQA过程与产品质量保证 MA测量与分析 DAR决策分析与解决 CAR原因分析与解决 过程管理OPF组织过程焦点 OPD组织过程定义 OT组织培训 OPP组织过程绩效 OID组织创新与推广 71122

47、各成熟度等级的过程域REQM等等级级FOCUS 类类PA过程域过程域PROCESS AREA 5优化优化 持续过程改进持续过程改进 CAR因果分析及解决因果分析及解决Causal Analysis & Resolution OID组织创新及推广组织创新及推广Organization Innovation & Deployment4量化量化管理管理 量化量化管理管理 QPM量化项目管理量化项目管理Quantitative Project Management OPP组织过程绩效组织过程绩效 Organization Process Performance 3已已定定义义 过程标准化过程标准化 OPF组织过程焦点组织过程焦点Organization Process Focus OPD组织过程定义组织过程定义 Organization Process Definition OT组织培训组织培训 Organization Training IPM集成化项目管理集成化项目管理 Integrated Project ManagementRM风险管理风险管理 Risk ManagementDAR 判定分析及解决判

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论