软件过程管理复习提纲_第1页
软件过程管理复习提纲_第2页
软件过程管理复习提纲_第3页
软件过程管理复习提纲_第4页
软件过程管理复习提纲_第5页
已阅读5页,还剩251页未读 继续免费阅读

下载本文档

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

文档简介

1、fhq_赵红赵红1软件过程管理软件过程管理n-Ch.1 软件过程规范软件过程规范 童先群童先群xq_2总成绩分布总成绩分布n平时:平时:10%出勤出勤n作业:作业:30%,公式:实交作业次数,公式:实交作业次数/布置布置作业总次数作业总次数30n注:注:作业作业,课堂上完成,作为期末复习材料,课堂上完成,作为期末复习材料n期末:期末:60% 3内容概览内容概览全书共分为全书共分为1010章,以全面阐述软章,以全面阐述软件过程管理的各个方面。首先说明了件过程管理的各个方面。首先说明了软件过程规范、成熟度及其相关的概软件过程规范、成熟度及其相关的概念和理论,包括软件过程标准体系。念和理论,包括软件

2、过程标准体系。然后在此基础上,深入讨论了软件过然后在此基础上,深入讨论了软件过程的组织管理、需求管理、项目管理、程的组织管理、需求管理、项目管理、质量管理、技术管理和集成管理等流质量管理、技术管理和集成管理等流程、方法和实践,并进一步探讨了软程、方法和实践,并进一步探讨了软件过程评估和改进的框架、模型和实件过程评估和改进的框架、模型和实施细节,最后通过具体的应用实践对施细节,最后通过具体的应用实践对软件过程管理做了全方位的阐释。软件过程管理做了全方位的阐释。4课程目标课程目标n通过本课程的学习,可以了解并掌握:通过本课程的学习,可以了解并掌握:n软件过程规范的内容、影响和作用软件过程规范的内容

3、、影响和作用 n软件过程不成熟的特点、软件过程成熟的标准软件过程不成熟的特点、软件过程成熟的标准 n软件过程的可视性和过程能力软件过程的可视性和过程能力 n软件过程文化、环境和过程框架软件过程文化、环境和过程框架 n如何定义组织过程并对过程剪裁以获得项目过程如何定义组织过程并对过程剪裁以获得项目过程 n软件过程的需求管理软件过程的需求管理 、项目管理和质量管理、项目管理和质量管理n软件过程的技术管理和集成管理软件过程的技术管理和集成管理 n如何实施软件过程的评估和改进如何实施软件过程的评估和改进n 5软件过程管理不当软件过程管理不当-软件危机软件危机n绝大多数软件企业长期面临绝大多数软件企业长

4、期面临“产品质量产品质量低下、进度延误、成本高昂低下、进度延误、成本高昂”的共性问的共性问题,就像患了恶劣的慢性病,难以根除。题,就像患了恶劣的慢性病,难以根除。n1969年,年,“软件危机软件危机”,数十年后,司,数十年后,司空见惯,习以为常了。空见惯,习以为常了。n软件过程管理的目的:最大限度地提高软件过程管理的目的:最大限度地提高软件产品的质量与软件开发过程的生产软件产品的质量与软件开发过程的生产率。率。6本章提纲本章提纲n1.1 过程的定义过程的定义n1.2过程规范过程规范n1.3 软件生命周期的过程软件生命周期的过程需求需求n1.4 软件生命周期标准软件生命周期标准n1.5 软件过程

5、建模软件过程建模71.1 过程的定义过程的定义p牛津简明词典中,“过程过程”被定义为活动被定义为活动与操作的集合,与操作的集合,例如一系列的生产阶段或操作。p书氏大词典定义“过程过程”是用于产生某结是用于产生某结果的一整套操作、一系列的活动、变化以及作果的一整套操作、一系列的活动、变化以及作为最终结果的功能。为最终结果的功能。pIEEE-Std-610定义“过程过程”是为完成一个特定是为完成一个特定的目标而进行的一系列操作步骤,如软件开发的目标而进行的一系列操作步骤,如软件开发过程。过程。pSEICMM 定义过程是用于软件开发及维护的过程是用于软件开发及维护的一系列活动、方法及实践。一系列活动

6、、方法及实践。 8实现、管理和支持过程之间的关系实现、管理和支持过程之间的关系n过程一般可分为实现过程、管理过程、过程一般可分为实现过程、管理过程、支持过程支持过程。9软件过程包括?软件过程包括?n软件过程软件过程(software process),是人们,是人们用来开发和维护软件及产品的活动、方用来开发和维护软件及产品的活动、方法、实践和改进的集合。法、实践和改进的集合。n软件过程包括?(作业软件过程包括?(作业1)n需求分析、概要设计、详细设计、编码、需求分析、概要设计、详细设计、编码、测试、测试、n上面几点仅属于基本过程。上面几点仅属于基本过程。101.1.2 软件过程的分类和组成软件

7、过程的分类和组成n软件基本过程(实现过程):软件获取、软件基本过程(实现过程):软件获取、供应、开发、运行和维护的过程,包括供应、开发、运行和维护的过程,包括需求分析、软件设计、编码需求分析、软件设计、编码等过程。等过程。n软件支持过程:包括文档编制过程、配软件支持过程:包括文档编制过程、配置管理过程、质量保证过程、验证和确置管理过程、质量保证过程、验证和确认过程(测试过程)、评审过程等。认过程(测试过程)、评审过程等。n软件组织过程:对软件主要过程和支持软件组织过程:对软件主要过程和支持过程的组织保证过程,包括管理过程、过程的组织保证过程,包括管理过程、基础设施过程、改进过程和培训过程。基础

8、设施过程、改进过程和培训过程。11IEC12207软件生存周期过程软件生存周期过程国际电工委员会(国际电工委员会(International Electro technical Commission,简称,简称IEC) 12软件过程的基本组成示意图软件过程的基本组成示意图n 工程过程工程过程(Engineering Process, ENG)n支持过程支持过程(Support Process, SUP)n管理过程管理过程(Management Process, MAN)n组织过程组织过程(Organization Process, ORG)n客户客户-供应商过程供应商过程(Customer-s

9、upplier Process, CUS)关键关键核心核心基础基础13ISO/IEC15504软件生存周期过程软件生存周期过程基本过程基本过程组织过程组织过程5个过程并行执行个过程并行执行141.1.3 软件过程定义的层次性软件过程定义的层次性p 公共(通用)软件过程。公共(通用)软件过程。p 组织标准软件过程。组织标准软件过程。p 项目自定义的软件过程。项目自定义的软件过程。 大学模型大学模型我校情况我校情况我系情况我系情况151.3 软件生命周期的过程需求软件生命周期的过程需求n1.3.1 软件工程过程软件工程过程n1.3.2 软件支持过程软件支持过程n1.3.3 软件管理过程软件管理过程

10、n1.3.4 软件组织过程软件组织过程n1.3.5 软件客户供应商的过程软件客户供应商的过程161.3.1 软件工程过程软件工程过程n工程过程是软件系统、产品的定义、设计、实现工程过程是软件系统、产品的定义、设计、实现以及维护的过程。以及维护的过程。P10n开发过程:开发过程:定义并开发软件产品的活动过程,包定义并开发软件产品的活动过程,包括需求分析、软件设计(功能性与非功能性)和括需求分析、软件设计(功能性与非功能性)和编程等。编程等。n运行过程运行过程:在规定的环境中为其用户提供运行计:在规定的环境中为其用户提供运行计算机系统服务的活动过程,包括软件部署算机系统服务的活动过程,包括软件部署

11、n维护过程维护过程:提供维护软件产品服务的活动过程,:提供维护软件产品服务的活动过程,也就是通过软件的修改、变更,使软件系统保持也就是通过软件的修改、变更,使软件系统保持合适的运行状态,这一过程包括软件产品的移植合适的运行状态,这一过程包括软件产品的移植和退役。和退役。 171.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确认p 联合评审联合评审p 审核审核p 问题解决问题解决 p明确如何写文档(明确如何写文档(标准标准)?写)?写什么什么文档文档(各类文档)?(各类文档)?p规定文档的内容?相关的输出规定文档的内容?相关的输

12、出产品?产品?p根据定义的根据定义的标准标准与已确定的计与已确定的计划来编写、审查、修改和发布划来编写、审查、修改和发布所有文档。所有文档。p按已定义的按已定义的标准标准和具体的规则和具体的规则维护文档。维护文档。 p文献综述、开题报告、毕业论文文献综述、开题报告、毕业论文p内容及系统内容及系统p阶段性的检查阶段性的检查p答辩答辩181.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确认p 联合评审联合评审p 审核审核p 问题解决问题解决 p进行进行配置管理配置管理最低要求是保最低要求是保证重要工作成果不发生混乱。证重要工作成果

13、不发生混乱。p如果没有配置管理?最大的如果没有配置管理?最大的麻烦就是工作成果被覆盖。麻烦就是工作成果被覆盖。新的覆盖老的版本,后果?新的覆盖老的版本,后果?pCheck out/ check in,时,时间间隔?间间隔?(例:例:ghost)p如同入库出库,必须做好所如同入库出库,必须做好所有记录,严格坚持出入库检有记录,严格坚持出入库检查。查。p确保配置项的完全性与一致确保配置项的完全性与一致性性。P126191.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确认p 联合评审联合评审p 审核审核p 问题解决问题解决 p健康定

14、义,古代健康定义,古代/现代?现代?p最高境界:最高境界:“零缺陷零缺陷”?pMicrosoft,航空航天,航空航天p什么时间进行?什么时间进行?p制定出计划与进度表。制定出计划与进度表。p确定有关标准、方法、规确定有关标准、方法、规程与工具,所需的资源、程与工具,所需的资源、组织及其组织成员的职责。组织及其组织成员的职责。p保证各类相关的计划进度保证各类相关的计划进度保持一致保持一致 。 201.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确认p 联合评审联合评审p 审核审核p 问题解决问题解决 p根据需要验证的工作产品所制

15、定根据需要验证的工作产品所制定的规范(如产品规格说明书)实的规范(如产品规格说明书)实施必要的检验活动:施必要的检验活动:p有效地发现各类阶段性产品所存有效地发现各类阶段性产品所存在的缺陷,并跟踪和消除缺陷。在的缺陷,并跟踪和消除缺陷。p验证强调的是在开发过程中对工验证强调的是在开发过程中对工作产品进行检查,尽早发现问题。作产品进行检查,尽早发现问题。p验证(验证(VER):保证做的对,验证):保证做的对,验证规格需求规格需求p按钮响应时间为按钮响应时间为1秒秒211.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确认p 联合评

16、审联合评审p 审核审核p 问题解决问题解决 p确认强调的是,确认强调的是,在真实的使在真实的使用环境中,确保软件能达到用环境中,确保软件能达到 预期的效果。预期的效果。如:尽快发出如:尽快发出一个小版本,在实际环境中一个小版本,在实际环境中运行起来,尽快发现确认其运行起来,尽快发现确认其中的问题。中的问题。 p一般来说,调试、试用、验一般来说,调试、试用、验收测试等都是确认的工作。收测试等都是确认的工作。 p确定(确定(VAL):保证做对的产品):保证做对的产品 ,属于性能,属于性能需求。需求。p大容量存储,响应时间为大容量存储,响应时间为1秒(多线程后台秒(多线程后台处理来解决这个问题处理来

17、解决这个问题 )221.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确认p 联合评审联合评审p 审核审核p 问题解决问题解决 p与客户、供应商以及其他与客户、供应商以及其他利益相关方(或独立的第利益相关方(或独立的第三方)对开发的活动和产三方)对开发的活动和产品进行评估品进行评估 。p为联合评审的实施制定相为联合评审的实施制定相应的计划与进度,跟踪评应的计划与进度,跟踪评审活动,直至结束审活动,直至结束 。231.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确

18、认p 联合评审联合评审p 审核审核p 问题解决问题解决 p判断是否与指定的需求、判断是否与指定的需求、计划以及合同相一致计划以及合同相一致 。p由合适的、独立的一方来由合适的、独立的一方来安排对产品或过程的审核安排对产品或过程的审核工作工作 。p以确定其是否符合特定需以确定其是否符合特定需求求 241.3.2 软件支持过程软件支持过程p 文档编制文档编制p 配置管理配置管理p 质量保证质量保证p 验证验证p 确认确认p 联合评审联合评审p 审核审核p 问题解决问题解决 p 提供及时的、有明确职责提供及时的、有明确职责的以及文档化的方式,以的以及文档化的方式,以确保所有发现的问题都经确保所有发现

19、的问题都经过相应的分析并得到解决过相应的分析并得到解决 。p 提供一种相应的机制,以提供一种相应的机制,以识别所发现的问题并根据识别所发现的问题并根据相应的趋势采取行动相应的趋势采取行动 。251.3.3 软件管理过程软件管理过程 对其它四个过程对其它四个过程的实践活动提供的实践活动提供指导、跟踪和监指导、跟踪和监控的过程。控的过程。261.3.3 软件的管理过程软件的管理过程n 项目管理过程项目管理过程是计划、跟踪和协调项目执行及是计划、跟踪和协调项目执行及生产所需资源的管理过程。生产所需资源的管理过程。n立项管理是决策行为,决策是指立项管理是决策行为,决策是指“做正确的事情做正确的事情”n

20、立项后,目标是立项后,目标是“正确地做事情正确地做事情”(正确(正确= =¥)¥)n为过程和执行制定计划,进行项目规划为过程和执行制定计划,进行项目规划(城市规划)(城市规划)n制定进度表;项目监控;成本估计;项目间接口等制定进度表;项目监控;成本估计;项目间接口等n结项管理与立项管理相对应结项管理与立项管理相对应271.3.3 软件的管理过程软件的管理过程n 质量管理质量管理过程是对项目产品和服务的质量加以过程是对项目产品和服务的质量加以管理,从而获得最大的客户满意度。管理,从而获得最大的客户满意度。n以客户的质量需要为基础;以客户的质量需要为基础;n定义质量度量标准并实时检查;定义质量度量

21、标准并实时检查;n未达到质量目标要及时采取相应的措施等未达到质量目标要及时采取相应的措施等n 281.3.3 软件的管理过程软件的管理过程n 风险管理过程风险管理过程,在整个项目的生命周期中对风险不断,在整个项目的生命周期中对风险不断的识别、诊断和分析,回避风险、降低风险或消除风险,的识别、诊断和分析,回避风险、降低风险或消除风险,并在项目以及组织层次上建立有效的风险管理机制并在项目以及组织层次上建立有效的风险管理机制 n被刻画为风险的事件最终可能发生也可能不发生。被刻画为风险的事件最终可能发生也可能不发生。人们对待风险有两种态度:人们对待风险有两种态度:n被动态度(被动态度(“救火模式救火模

22、式”)n主动态度(主动态度(“防火模式防火模式”)=风险管理属于风险管理属于“防火模式防火模式”n量化管理风险:风险严重性,风险可能性,风险量化管理风险:风险严重性,风险可能性,风险系数系数291.3.3 软件的管理过程软件的管理过程n子合同商管理过程子合同商管理过程,选择合格的子合同商并对其,选择合格的子合同商并对其进行管理的过程进行管理的过程 n软件管理的四个过程?(作业软件管理的四个过程?(作业2)301.3.4 软件组织过程软件组织过程(全局规划全局规划)n组织过程是软件组织用来建立和实现由组织过程是软件组织用来建立和实现由相关的相关的生命周期过程生命周期过程和和人员组成的基础人员组成

23、的基础结构结构并不断改进这种结构的过程。并不断改进这种结构的过程。 n业务规划过程业务规划过程n定义过程定义过程n改进过程改进过程n人力资源和培训过程人力资源和培训过程n基础设施过程基础设施过程311.3.4 软件组织过程软件组织过程(全局规划全局规划)n业务规划过程业务规划过程是为组织与项目成员提供对远景是为组织与项目成员提供对远景的描述以及企业文化的介绍,从而使项目成员的描述以及企业文化的介绍,从而使项目成员能更有效地工作。能更有效地工作。 (明确保每个人都有明确(明确保每个人都有明确定义的工作)定义的工作)n定义过程定义过程是建立一个可重复使用的过程定义库,是建立一个可重复使用的过程定义

24、库,指导其他四个过程指导其他四个过程(裁剪裁剪)n改进过程改进过程是为了满足业务变化的需要,提高过是为了满足业务变化的需要,提高过程的效率与有效性,而对软件过程进行持续的程的效率与有效性,而对软件过程进行持续的评估、度量、控制和改善的过程评估、度量、控制和改善的过程 (进一步裁(进一步裁剪)剪)321.3.4 软件组织过程软件组织过程(全局规划全局规划)n人力资源和培训过程人力资源和培训过程,为项目或其它组,为项目或其它组织过程提供培训合格的人员所需的活动织过程提供培训合格的人员所需的活动 n基础设施过程基础设施过程是建立生存周期过程基础是建立生存周期过程基础结构、为其他过程建立和维护所需基础

25、结构、为其他过程建立和维护所需基础设施的过程设施的过程 (软件工程环境)(软件工程环境)331.3.5 软件客户供应商的过程软件客户供应商的过程n客户供应商过程是内部直接影响到客户、外客户供应商过程是内部直接影响到客户、外部直接影响开发、向客户交付软件以及软件正部直接影响开发、向客户交付软件以及软件正确操作与使用的过程,包括:确操作与使用的过程,包括:n获取过程获取过程n客户需求管理过程客户需求管理过程n供应过程供应过程n软件操作过程软件操作过程n客户支持过程客户支持过程341.3.5 软件客户供应商的过程软件客户供应商的过程n获取过程获取过程:以客户为主导的。以客户的需求为以客户为主导的。以

26、客户的需求为起点,以客户对产品或服务的认同与接受为终起点,以客户对产品或服务的认同与接受为终点。点。n从确定需要获取的软件系统、产品或服务开始,从确定需要获取的软件系统、产品或服务开始,然后制定和发布标书、选择供方和管理获取过然后制定和发布标书、选择供方和管理获取过程,直到验收软件系统、产品或服务程,直到验收软件系统、产品或服务 。n该过程的成功实施会导致最终生成一个明确的该过程的成功实施会导致最终生成一个明确的合同或条约合同或条约,清楚地描述出客户与供应方的期,清楚地描述出客户与供应方的期望、职责与义务。望、职责与义务。351.3.5 软件客户供应商的过程软件客户供应商的过程 客户需求管理过

27、程客户需求管理过程:在整个软件生命周期中,:在整个软件生命周期中,针对不断变化的客户需求加以收集、处理和跟针对不断变化的客户需求加以收集、处理和跟踪踪,并建立软件需求的,并建立软件需求的基准线基准线,以作为项目中,以作为项目中软件开发活动过程和产品度量和变更管理的基软件开发活动过程和产品度量和变更管理的基础础 收集,处理,跟踪同样重要。收集,处理,跟踪同样重要。 需求是产品的根源,需求工作的优劣对产品影需求是产品的根源,需求工作的优劣对产品影响最大。响最大。(河流污染)(河流污染)361.3.5 软件客户供应商的过程软件客户供应商的过程n供应过程供应过程:按客户、事先规定的要求对软件进:按客户

28、、事先规定的要求对软件进行包装、发布与安装的活动过程行包装、发布与安装的活动过程 n确定包装、发布以及安装软件的有关要求。确定包装、发布以及安装软件的有关要求。n软件有效地被安装与使用。软件有效地被安装与使用。n软件达到需求定义中所规定的质量水平。软件达到需求定义中所规定的质量水平。371.3.5 软件客户供应商的过程软件客户供应商的过程n软件操作过程软件操作过程:n确定和管理由于引入并发操作软件而带来的操确定和管理由于引入并发操作软件而带来的操作上的风险。作上的风险。n按要求的步骤和在要求的操作环境中运行软件。按要求的步骤和在要求的操作环境中运行软件。n提供操作上的技术支持,以便解决操作过程

29、中提供操作上的技术支持,以便解决操作过程中出现的问题出现的问题n确保软件(或主机系统)有足够的能力满足用确保软件(或主机系统)有足够的能力满足用户的需求。户的需求。381.3.5 软件客户供应商的过程软件客户供应商的过程n客户支持过程:客户支持过程:基于实施情况,确定客户所需基于实施情况,确定客户所需要的支持服务。要的支持服务。n通过提供适当的服务来满足客户的需求。通过提供适当的服务来满足客户的需求。n针对客户对产品本身及其相应的支持服务的满针对客户对产品本身及其相应的支持服务的满意程度进行持续的评估意程度进行持续的评估39作业作业1.软件过程包括?软件过程包括?2.软件管理的四个过程?软件管

30、理的四个过程?3.软件项目管理包括哪几个主要管理,了软件项目管理包括哪几个主要管理,了解项目经理的职能。(上网或查资料,解项目经理的职能。(上网或查资料,要求写满一页)要求写满一页)fhq_赵红赵红40软件过程管理软件过程管理n-Ch.2 软件过程成熟度软件过程成熟度 童先群童先群xq_41本章提纲本章提纲n2.1 过程成熟度标准过程成熟度标准n2.2 能力成熟度模型概述能力成熟度模型概述n2.3 过程成熟度级别过程成熟度级别n2.4 软件过程的可视性软件过程的可视性n2.6 软件过程框架软件过程框架422.1 过程成熟度标准过程成熟度标准n2.1.1 软件过程不成熟的特软件过程不成熟的特点点

31、n2.1.2 软件过程成熟的标准软件过程成熟的标准n软件过程软件过程能力能力n软件过程软件过程性能性能n软件过程成熟度软件过程成熟度 3个基本概念个基本概念43软件过程能力软件过程能力n软件过程能力软件过程能力:遵循软件过程后能够实现遵循软件过程后能够实现预期结果的程度。预期结果的程度。(关注预期结果)(关注预期结果)n该指标是对能力的一种衡量,用它可以预测该指标是对能力的一种衡量,用它可以预测一个组织(企业)在承接下一个软件项目时,一个组织(企业)在承接下一个软件项目时,所能期望得到的最可能的结果。所能期望得到的最可能的结果。n如果能按要求完成三年的高中学习,你如果能按要求完成三年的高中学习

32、,你有能力考上大学。有能力考上大学。44软件过程性能软件过程性能n软件过程性能:表示遵循一个软件过程软件过程性能:表示遵循一个软件过程后所得到的实际结果。后所得到的实际结果。(关注已得到的(关注已得到的结果)结果)n由于项目要求和客观环境的差异,导致预期由于项目要求和客观环境的差异,导致预期和结果不相符合。和结果不相符合。n软件过程性能不可能充分反应软件过程整体软件过程性能不可能充分反应软件过程整体能力,即软件过程能力受限于它的环境。能力,即软件过程能力受限于它的环境。n如果没考上大学,不代表你的能力不行,如果没考上大学,不代表你的能力不行,可能是其它原因引起的。可能是其它原因引起的。45软件

33、过程软件过程成熟度成熟度n是指是指一个具体的软件过程一个具体的软件过程被明确地定义、被明确地定义、管理、评价、控制和管理、评价、控制和产生实效的产生实效的程度程度 。n成熟度成熟度表明了组织(企业)实施软件过程表明了组织(企业)实施软件过程的实际水平。的实际水平。n组织软件过程成熟度能力的提高组织软件过程成熟度能力的提高=n从而提高软件过程能力从而提高软件过程能力n从而使软件的质量、生产率和生产周期得到改从而使软件的质量、生产率和生产周期得到改善。善。n从而达到良好的软件过程性能从而达到良好的软件过程性能462.1.2 软件过程成熟的标准软件过程成熟的标准n软件过程能力高:软件过程能力高:能达

34、到预期结果,不断能达到预期结果,不断提高自身能力。提高自身能力。n软件过程性能可预见性软件过程性能可预见性:积累了有关过程性积累了有关过程性能的大量历史数据能的大量历史数据,对效率,成本,质量,对效率,成本,质量能做出准确的估计。能做出准确的估计。n过程的可视性过程的可视性:n软件组织的能力是已知的软件组织的能力是已知的/ /软件过程定义清晰软件过程定义清晰n过程的每个阶段进出的标准,执行的方法和规过程的每个阶段进出的标准,执行的方法和规则清楚则清楚/ /人员职责清楚。人员职责清楚。n过程的稳定性过程的稳定性:有纪律的过程有纪律的过程472.1.2 软件过程成熟的标准软件过程成熟的标准n软件过

35、程规范化软件过程规范化:过程定义、方法和规则过程定义、方法和规则等文档化,所有过程标准化,有规则可循等文档化,所有过程标准化,有规则可循。n过程的一致性过程的一致性:软件过程被正确无误地传:软件过程被正确无误地传递到不同的团队。递到不同的团队。已定义的过程是真正的已定义的过程是真正的标准。标准。n过程的丰富性过程的丰富性:各种子过程各种子过程n过程的不断改进过程的不断改进:通过可控的先导性试验和通过可控的先导性试验和成本效率分析对过程进行持续改进。(成本效率分析对过程进行持续改进。(可可持续发展持续发展)482.2 能力成熟度模型概述能力成熟度模型概述n2.2.1 CMM的基本内容的基本内容n

36、2.2.2 系统工程能力模型系统工程能力模型n2.2.3 集成化产品开发模型集成化产品开发模型n2.2.4 CMMI介绍介绍492.2.1 CMM的基本内容的基本内容P33nCMM是是软件过程软件过程能力成熟度模型能力成熟度模型(Capacity Maturity Model,CMM)的简)的简称,称,1991年正式推出了年正式推出了CMM 1.0 版。版。 nCMM描述一条描述一条从从无序的、混乱的过程无序的、混乱的过程到到成成熟的、有纪律的过程的改进途径熟的、有纪律的过程的改进途径。nCMM建立起一个标准,对照这个标准就能建立起一个标准,对照这个标准就能以可重复的方式以可重复的方式判断组织

37、软件过程的成熟判断组织软件过程的成熟度度50CMM的起源和结构的起源和结构nCMM建立的目的建立的目的:确定成熟度,找改进策确定成熟度,找改进策略略。nCMM的起源的起源P34 n内容和结构内容和结构n(缩写(缩写 )51内容和结构内容和结构n每个成熟度等级由若干个关键过程域(每个成熟度等级由若干个关键过程域(KPA)组成组成 。不同的成熟度关注的过程域不同。不同的成熟度关注的过程域不同。n下一层为上一层的基础,先有物质文明,后有下一层为上一层的基础,先有物质文明,后有精神文明。精神文明。n每个每个KPA用若干关键实践(用若干关键实践(KP)加以描述。)加以描述。实施这些关键实践,就实现了关键

38、过程区域的实施这些关键实践,就实现了关键过程区域的目标。目标。(Flash中的关键帧)中的关键帧)n关键实践以关键实践以5个共同特点(个共同特点(Common Features)加以组织)加以组织: 执行约定、执行能力、执行约定、执行能力、执行的活动、测量和分析、验证实施。执行的活动、测量和分析、验证实施。52n 执行约定(执行约定(Commitment to Perform,简称,简称CO):):企业为了保证过程建立和继续起作用必须采取的一些措企业为了保证过程建立和继续起作用必须采取的一些措施。例:建立机构策略。施。例:建立机构策略。n 执行能力(执行能力(Ability to Perfor

39、m,简称,简称AB):组织和):组织和项目实施软件过程的先决条件。执行能力一般指项目实施软件过程的先决条件。执行能力一般指提供资提供资源源、分派职责和人员培训。、分派职责和人员培训。n 执行的活动(执行的活动(Activities Performed,简称,简称AC):):指实施关键过程区域所必需的角色和规程。执行的活动指实施关键过程区域所必需的角色和规程。执行的活动一般包括制订计划和规程、一般包括制订计划和规程、执行活动执行活动、跟踪与监督并在、跟踪与监督并在必要时采取纠正措施。必要时采取纠正措施。(只有此条与项目执行相关只有此条与项目执行相关)n 测量和分析(测量和分析(Measureme

40、nt and Analysis,简称,简称ME):):对过程进行测量对过程进行测量和对测量结果和对测量结果进行分析进行分析。n 验证实施(验证实施(Verifying Implementation,简称,简称VE):):保证按照已建立的过程执行活动的步骤。例:保证按照已建立的过程执行活动的步骤。例:评审和审评审和审计计。53三合一三合一n十几年来,十几年来,CMM的改进工作一直不断地的改进工作一直不断地进行。美国国防部希望把现在所有的、进行。美国国防部希望把现在所有的、以及将被开发出来的各种能力成熟度模以及将被开发出来的各种能力成熟度模型,型,集成集成到一个框架中去。到一个框架中去。n到到20

41、00年,年,CMM演化成为演化成为CMMI(Capability Maturity Model Integration,能力成熟度模型集成)。,能力成熟度模型集成)。nCMMI不仅适合软件,而且适合于软件硬不仅适合软件,而且适合于软件硬件结合的系统,这是对件结合的系统,这是对CMM最大的改进。最大的改进。 542.2.4 CMMI介绍介绍模型学科模型学科源模型源模型软件软件 SW-CMM,草案版本,草案版本2.0系统工程系统工程 EIA/IS 731集成化产品集成化产品与过程开发与过程开发 IPD-CMM, 版本版本0.98CMMI55nCMMI项目的成就之一就是在软件和系统项目的成就之一就是

42、在软件和系统工程之间实现了较高的集成化程序。工程之间实现了较高的集成化程序。n软件和系统工程集成后产生了一个公共软件和系统工程集成后产生了一个公共的过程域集。的过程域集。562.3 过程成熟度级别过程成熟度级别n2.3.1 成熟度等级的行为特征成熟度等级的行为特征n2.3.2 理解成熟度等级理解成熟度等级n2.3.3 成熟度等级的过程特征成熟度等级的过程特征n2.3.4 CMMI过程域过程域n2.3.5 CMM和和CMMI过程域的比较分过程域的比较分析析57CMM/CMMI成熟度的成熟度的5个等级个等级 582.3.1 成熟度等级的行为特征成熟度等级的行为特征n初始级初始级具有明显的不成熟过程

43、的特点具有明显的不成熟过程的特点 n(1)软件过程的特点是杂乱无章,有时甚至软件过程的特点是杂乱无章,有时甚至混乱,几乎没有定义过程的规则或步骤。混乱,几乎没有定义过程的规则或步骤。所谓所谓“过程过程”,往往是,往往是“就这么干就这么干”而言。而言。n(2)开发过程中不断地出现危机,以及不断开发过程中不断地出现危机,以及不断的的“救火救火”。甚至遇到危机就。甚至遇到危机就放弃原计划放弃原计划过程过程,反复编码和测试。,反复编码和测试。n(3)偶尔成功完全依赖个人努力和杰出的专偶尔成功完全依赖个人努力和杰出的专业人才,能力只是个人的特性,而不是开业人才,能力只是个人的特性,而不是开发组织的特性。

44、一旦发组织的特性。一旦优秀人物优秀人物离去,项目离去,项目就无法继续。就无法继续。591、初始级、初始级n(4)过分的承诺过分的承诺,常作出良好的承诺:如,常作出良好的承诺:如“按照软件工程方式,有序的工程来工按照软件工程方式,有序的工程来工作作”;或达到高目标的许诺。但实际上;或达到高目标的许诺。但实际上却出现一系列问题。却出现一系列问题。n(5)软件过程是不可确定的和不可预见的软件过程是不可确定的和不可预见的。(过程是随意的)。这类组织也在开发(过程是随意的)。这类组织也在开发产品,但其成果是不稳定的,不可预见产品,但其成果是不稳定的,不可预见的,不可重复的。也就是说,软件的计的,不可重复

45、的。也就是说,软件的计划、预算、功能和产品的质量都是不可划、预算、功能和产品的质量都是不可确定和不可预见的。确定和不可预见的。n做事情(考研)要有计划,有跟踪,有做事情(考研)要有计划,有跟踪,有文档可查。文档可查。602、可重复级、可重复级/受管理级受管理级n根据多年的经验和教训,人们总结出软件根据多年的经验和教训,人们总结出软件开发的首要问题不是技术问题而是管理问开发的首要问题不是技术问题而是管理问题。因此,第二级的焦点集中在软件管理题。因此,第二级的焦点集中在软件管理过程上。过程上。n可重复级可重复级/受管理级受管理级建立了管理软件项目的建立了管理软件项目的方针和实施这些方针的规程,使软

46、件项目方针和实施这些方针的规程,使软件项目的有效管理过程制度化,有能力去跟踪成的有效管理过程制度化,有能力去跟踪成本、进度和质量。本、进度和质量。n一个有效过程可特征化为已文档化的、已一个有效过程可特征化为已文档化的、已实施的、可培训的和可测量的软件过程。实施的、可培训的和可测量的软件过程。达到二级证明已经进入规模开发。达到二级证明已经进入规模开发。612、可重复级、可重复级/受管理级(特征)受管理级(特征)n(1)进行较为现实的承诺,可按进行较为现实的承诺,可按以前在同类项目以前在同类项目上的成功经验上的成功经验建立的必要过程准则来建立的必要过程准则来确保再一确保再一次的成功次的成功。n(2

47、)主要是主要是逐个项目逐个项目地建立基本过程管理条例来地建立基本过程管理条例来加强过程能力。加强过程能力。 n(3)建立了建立了基本的项目管理过程基本的项目管理过程来跟踪成本、进来跟踪成本、进度和功能。度和功能。 n(4)管理工作管理工作主要跟踪软件经费支出、进度及功主要跟踪软件经费支出、进度及功能。识别在承诺方面出现的问题。能。识别在承诺方面出现的问题。n(5)采用采用基线基线(BASELINE)来标志进展、控制)来标志进展、控制完整性。完整性。 623、已定义级、已定义级n第二级中存在的问题:第二级中存在的问题:n仅仅定义了管理的基本过程定义了管理的基本过程,而没有定义执行,而没有定义执行

48、的步骤标准的步骤标准n按项目制定软件过程,而不是总结各种项目按项目制定软件过程,而不是总结各种项目的成功经验,使之规则化的成功经验,使之规则化n已定义级包含一组协调的、集成的、适已定义级包含一组协调的、集成的、适度定义的度定义的软件工程过程和管理过程软件工程过程和管理过程,具,具有良好的文档化、标准化,使软件过程有良好的文档化、标准化,使软件过程具有可视性、一致性、稳定性和可重复具有可视性、一致性、稳定性和可重复性,软件过程被集成为一个有机的整体性,软件过程被集成为一个有机的整体 633、已定义级(特征)、已定义级(特征)n(1)无论无论管理方面管理方面或或工程方面工程方面的软件过程都已文的软

49、件过程都已文件化、标准化,并综合成软件开发组织的标准件化、标准化,并综合成软件开发组织的标准软件过程。软件过程。n(2)软件过程标准被应用到软件过程标准被应用到所有的工程所有的工程中,用于中,用于编制和维护软件。有的项目也可根据实际情况,编制和维护软件。有的项目也可根据实际情况,对软件开发组织的标准软件过程进行剪裁。对软件开发组织的标准软件过程进行剪裁。n(3)在从事一项工程时,产品的生产过程、花费、在从事一项工程时,产品的生产过程、花费、计划以及功能都是计划以及功能都是可以控制的可以控制的,从而软件质量,从而软件质量也也可以控制可以控制。 n(4)软件工程过程组负责软件活动。软件工程过程组负

50、责软件活动。n(5)在全组织范围内安排培训计划。在全组织范围内安排培训计划。 642.3.2 理解成熟度等级理解成熟度等级nCMM是一个描述模型,或者说是一个规是一个描述模型,或者说是一个规范。范。CMM处在调试的抽象层次上,使之处在调试的抽象层次上,使之不不会过多会过多限制限制一个组织一个组织如何去实施软件如何去实施软件过程过程,而是告诉一个组织应该达到的软,而是告诉一个组织应该达到的软件过程能力和框架。件过程能力和框架。n相当于学英语时的英语大纲,告诉你应相当于学英语时的英语大纲,告诉你应该达到的什么水平,但不会限制你如何该达到的什么水平,但不会限制你如何去学习。去学习。652.3.2 理

51、解可重复级和已定义级理解可重复级和已定义级n等级等级2:可重复级:可重复级n技术问题技术问题n焦点焦点:项目管理过程、项目管理过程、项目过程自身的改进。项目过程自身的改进。n等级等级3:已定义级已定义级n组织体系和管理问题组织体系和管理问题 n焦点:全组织范围内焦点:全组织范围内过程规范化过程规范化转向转向项目规模和复杂性增长项目规模和复杂性增长664、已管理级、已管理级n已管理级的软件过程是已管理级的软件过程是量化的管理过程量化的管理过程。n在上述已定义级的基础上,可以在上述已定义级的基础上,可以建立建立有有关软件过程和产品质量的、一致的度量关软件过程和产品质量的、一致的度量体系体系,采集详

52、细的数据进行分析,从而,采集详细的数据进行分析,从而对软件产品和过程进行有效的对软件产品和过程进行有效的定量控制定量控制和管理和管理。 (量化控制将使软件开发真正(量化控制将使软件开发真正变成为一种工业生产活动变成为一种工业生产活动 )n第四级软件产品是高质量的。第四级软件产品是高质量的。 674、已管理级(特征)、已管理级(特征)n(1)制定了软件过程和产品质量的详细而具制定了软件过程和产品质量的详细而具体的度量标准,体的度量标准,软件过程软件过程和和产品质量产品质量都都可可以被理解和以被理解和控制控制。n(2)软件组织的能力是软件组织的能力是可预见可预见的,原因是软的,原因是软件过程是被明

53、确的度量标准所度量和操作。件过程是被明确的度量标准所度量和操作。超过限制范围时,采取措施予以而使软件超过限制范围时,采取措施予以而使软件产品具有可预测的高质量。产品具有可预测的高质量。n(3)具有良好定义及一致数据库,保存收集具有良好定义及一致数据库,保存收集到的数据,可用于各项目的软件过程。到的数据,可用于各项目的软件过程。 684、已管理级(需要改进的地方)、已管理级(需要改进的地方)n(1)缺陷防范,不仅仅在发现了问题时能缺陷防范,不仅仅在发现了问题时能及时改进,而且应采取特定行动防止将及时改进,而且应采取特定行动防止将来出现这类缺陷。来出现这类缺陷。n(2)主动进行技术变动管理、标识、

54、选择主动进行技术变动管理、标识、选择和评价新技术,使有效的新技术能在开和评价新技术,使有效的新技术能在开发组织中施行。发组织中施行。n(3)进行过程变动管理,定义过程改进的进行过程变动管理,定义过程改进的目的,经常不断地进行过程改进。目的,经常不断地进行过程改进。695、优化级、优化级n第五级的目标是达到第五级的目标是达到一个持续改善的境界一个持续改善的境界,所谓持续改善是指可根据过程执行的反馈信所谓持续改善是指可根据过程执行的反馈信息来改善下一步的执行过程,即息来改善下一步的执行过程,即优化执行步优化执行步骤骤。 n优化级优化级n不断改善组织的软件过程能力和项目的过程性能不断改善组织的软件过

55、程能力和项目的过程性能n利用来自过程和来自新思想、新技术的先导性试利用来自过程和来自新思想、新技术的先导性试验的定量反馈信息,使验的定量反馈信息,使持续过程改进持续过程改进成为可能。成为可能。n为了预防缺陷出现,组织有办法识别出弱点并预为了预防缺陷出现,组织有办法识别出弱点并预先针对性地加强过程先针对性地加强过程 702.3.3 成熟度等级的过程特征成熟度等级的过程特征n第第4级,对软件产品的质量、开发进度和级,对软件产品的质量、开发进度和其它开发目标进行有效的评估和预测其它开发目标进行有效的评估和预测 (量化管理)(量化管理)n第第5级,其焦点是级,其焦点是软件过程的持续改进软件过程的持续改

56、进 n成熟度各个级别的软件过程特征,如表成熟度各个级别的软件过程特征,如表2-2所示。所示。 712.3.4 CMMI过程域过程域722.3.4 CMMI过程域过程域732.6.3 PSP/TSP和和CMM组成的软件过程框架组成的软件过程框架n个体软件过程(个体软件过程(Personal Software Process,PSP) 帮助帮助软件开发团队中软件开发团队中的个体的个体-软件工程师改善其个人能力和软件工程师改善其个人能力和素质的组织过程素质的组织过程nPSP告诉软件工程师:告诉软件工程师:n如何计划要做的工作如何计划要做的工作n如何有效的按照计划来执行工作如何有效的按照计划来执行工作

57、n如何按照计划跟踪自己的性能如何按照计划跟踪自己的性能n如何提高程序质量如何提高程序质量 74团队软件过程团队软件过程TSPn团队软件过程团队软件过程 (Team Software Process,TSP) 属于团队软件开发过程:属于团队软件开发过程:n用于指导项目组中的成员用于指导项目组中的成员如何有效地规划和如何有效地规划和管理管理所面临的项目开发任务所面临的项目开发任务n并且告诉管理人员并且告诉管理人员如何指导如何指导软件开发队伍。软件开发队伍。始终以最佳状态来完成工作。始终以最佳状态来完成工作。nTSP实施实施集体管理集体管理与与自己管理自己自己管理自己相结相结合的原则。合的原则。75

58、2.6.3 PSP/TSP76PSP/TSP/CMM之间的关系之间的关系PSPTSPCMM77组织的过程目标组织的过程目标 78作业作业1.举出一些具体的例子说明过程不成熟性。举出一些具体的例子说明过程不成熟性。2.通过查找资料,通过查找资料,详细详细介绍介绍CMM的第二、的第二、三、四、五等等级的核心过程域三、四、五等等级的核心过程域 ?3.PSP/TSP/CMM之间的关系?之间的关系?79复习:复习:CMM/CMMI成熟度的成熟度的5个等级个等级 802.4 软件过程的可视性软件过程的可视性81复习:复习:CMM/CMMI成熟度的成熟度的5个等级个等级 822.3.2 理解可重复级和已定义

59、级理解可重复级和已定义级n等级等级2:可重复级:可重复级n技术问题技术问题n焦点焦点:项目管理过程、项目管理过程、项目过程自身的改进。项目过程自身的改进。n等级等级3:已定义级已定义级n组织体系和管理问题组织体系和管理问题 n焦点:全组织范围内焦点:全组织范围内过程规范化过程规范化转向转向项目规模和复杂性增长项目规模和复杂性增长fhq_赵红赵红83软件过程管理软件过程管理n-Ch.3 软件过程的组织管理软件过程的组织管理童先群童先群xq_84CMM组成组成853.1 组织过程焦点组织过程焦点n1. 执行约定执行约定n2. 执行能力执行能力n3. 执行活动执行活动n4. 测量与分析测量与分析n5

60、. 验证实施验证实施86组织过程焦点组织过程焦点-执行约定执行约定n(1)组织应该遵循一个文档化的关于协)组织应该遵循一个文档化的关于协调软件流程的制定和改进活动的调软件流程的制定和改进活动的组织方针组织方针n(2)高级管理人员高级管理人员发起发起对软件过程制定对软件过程制定和改进的组织活动和改进的组织活动n(3)高级管理人员高级管理人员监督监督软件过程的制定软件过程的制定和改进的组织活动和改进的组织活动87组织过程焦点组织过程焦点-执行能力执行能力n(1)建立一个负责整个组织的软件过)建立一个负责整个组织的软件过程活动的程活动的工作组工作组n(2)为软件过程活动提供足够的)为软件过程活动提供

温馨提示

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

评论

0/150

提交评论