软件工程第12章-软件过程与软件过程改进课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程第12章-软件过程与软件过程改进课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 12 软件 过程 改进 课件
- 资源描述:
-
1、第12章 软件过程与软件过程改进 软件过程概述软件过程概述 软件生存期过程国际标准软件生存期过程国际标准 软件过程成熟度软件过程成熟度 软件能力成熟度模型软件能力成熟度模型 软件过程改进软件过程改进第12章 软件过程与软件过程改进 尽管软件工程项目的具体情况各有不同,但影响软件产品尽管软件工程项目的具体情况各有不同,但影响软件产品质量和软件项目生产率的共同因素主要有质量和软件项目生产率的共同因素主要有3 3个:人员、技个:人员、技术和过程。术和过程。如果把音乐会演出视为软件项目,则乐队和指挥就相当于如果把音乐会演出视为软件项目,则乐队和指挥就相当于参与项目的人员;舞台和乐器相当于支持开发的环境
2、条件、参与项目的人员;舞台和乐器相当于支持开发的环境条件、技术和工具;而乐谱相当于软件项目的过程。技术和工具;而乐谱相当于软件项目的过程。12.1 软件过程概述 过程概念过程概念做任何事,完成任何工作都需要有步骤、有顺序地进行。做任何事,完成任何工作都需要有步骤、有顺序地进行。这些步骤和顺序都是由事务和工作的规律决定的,不可任这些步骤和顺序都是由事务和工作的规律决定的,不可任意打乱。意打乱。以传统的制造业为例,从原材料开始直至得到用户所需要以传统的制造业为例,从原材料开始直至得到用户所需要的产品,经历了完整的生产过程。经过进一步分析,生产的产品,经历了完整的生产过程。经过进一步分析,生产过程由
3、许多生产子过程组成。过程由许多生产子过程组成。12.1 软件过程概述1.直接子过程(或称基本过程)直接子过程(或称基本过程)(1)(1)市场调查:了解用户和市场的需求,对需求信息进行分市场调查:了解用户和市场的需求,对需求信息进行分析,以确定生产产品的型号、功能和性能;析,以确定生产产品的型号、功能和性能;(2)(2)产品设计:把需求变成可实现的方案;产品设计:把需求变成可实现的方案;(3)(3)生产制作:获得产品;生产制作:获得产品;(4)(4)检验包装:准备出厂;检验包装:准备出厂;(5)(5)仓储运输:送到用户手中。仓储运输:送到用户手中。12.1 软件过程概述2间接子过程(或称支持过程
4、)间接子过程(或称支持过程)(1)(1)检测手段的控制:如量测仪表的校准和调整;检测手段的控制:如量测仪表的校准和调整;(2)(2)不合格品的控制:如不合品的标识、隔离和处置;不合格品的控制:如不合品的标识、隔离和处置;(3)(3)人员培训:提高人员技能;人员培训:提高人员技能;(4)(4)质量体系的建立与审核:实施质量管理规范化。质量体系的建立与审核:实施质量管理规范化。12.1 软件过程概述 过程要素过程要素过程应具有以下几个构成元素,如图所示:过程应具有以下几个构成元素,如图所示:(1)(1)输入;输入;(2)(2)输出;输出;(3)(3)活动及进一步分解的任务(或作业);活动及进一步分
5、解的任务(或作业);(4)(4)资源是支持活动执行所必须的,包括人资源是支持活动执行所必须的,包括人员、设备及相关的耗费;员、设备及相关的耗费;(5)(5)测量与验证能保证过程中的相关元素是测量与验证能保证过程中的相关元素是合格的(在图中这些过程元素标有记合格的(在图中这些过程元素标有记号);号);(6)(6)过程目标,如活动取得的效果是增值。过程目标,如活动取得的效果是增值。12.1 软件过程概述 过程思维过程思维过程思维是近年来人们总结出的思维模式,它和已有几百过程思维是近年来人们总结出的思维模式,它和已有几百年历史的任务思维有着本质的区别。年历史的任务思维有着本质的区别。面向过程的思维注
6、重的是总体目标、各部分工作的协调性面向过程的思维注重的是总体目标、各部分工作的协调性和一致性,从而消除了各部分工作之间的冲突,提高了总和一致性,从而消除了各部分工作之间的冲突,提高了总体的工作效率,从而有效地达到工作的总体目标。体的工作效率,从而有效地达到工作的总体目标。而面向任务的思维作为一种传统的思维模式,通常注重于而面向任务的思维作为一种传统的思维模式,通常注重于任务、作业、人员和组织结构。它首先将任务分解,然后任务、作业、人员和组织结构。它首先将任务分解,然后指派人员去完成。这样做必然会忽略了目标和整体。当各指派人员去完成。这样做必然会忽略了目标和整体。当各个局部工作之间出现矛盾和冲突
7、时,再着手解决,这样做个局部工作之间出现矛盾和冲突时,再着手解决,这样做无法避免低效率运行现象的出现。无法避免低效率运行现象的出现。12.1 软件过程概述 软件过程软件过程尽管软件危机最早于上个世纪六十年代已经提出,业内人尽管软件危机最早于上个世纪六十年代已经提出,业内人士确已投入了大量人力和物力,试图摆脱软件业长期的发士确已投入了大量人力和物力,试图摆脱软件业长期的发展之痛。然而,事实表明,问题至今还未得到很好地解决。展之痛。然而,事实表明,问题至今还未得到很好地解决。在近十几年的大量研究和实践之后,许多人逐渐认识到,在近十几年的大量研究和实践之后,许多人逐渐认识到,从软件过程的改进来解决可
8、能是有效的方法之一。从软件过程的改进来解决可能是有效的方法之一。12.1 软件过程概述 软件过程软件过程著名的软件工程专家,也是著名的软件工程专家,也是CMM的主要创始人的主要创始人Watts Humphrey提出了以下几个重要论点:提出了以下几个重要论点:(1)软件系统的质量取决于用以开发和改进它的过程质量。)软件系统的质量取决于用以开发和改进它的过程质量。(2)解决软件问题的重要一步是把整个软件工作当作一个)解决软件问题的重要一步是把整个软件工作当作一个过程来对待,使其能够控制、度量和改进。过程来对待,使其能够控制、度量和改进。(3)软件过程是我们用以开发软件产品的一套工具、方法)软件过程
9、是我们用以开发软件产品的一套工具、方法和实践。和实践。(4)软件过程管理的目标是按计划生产产品,同时提高软)软件过程管理的目标是按计划生产产品,同时提高软件组织的能力,以利于生产出好的产品。件组织的能力,以利于生产出好的产品。12.1 软件过程概述 软件过程软件过程(5)成本估算和开发期安排的承诺应该是比较合理的,开)成本估算和开发期安排的承诺应该是比较合理的,开发出的产品应该在功能和质量方面都能满足用户的期望。发出的产品应该在功能和质量方面都能满足用户的期望。(6)有效的软件管理必须考虑所要完成的任务,所采用的)有效的软件管理必须考虑所要完成的任务,所采用的方法和工具,以及参与工作人员的技能
10、、培训和积极性。方法和工具,以及参与工作人员的技能、培训和积极性。(7)有效的软件过程必须是可预测的。)有效的软件过程必须是可预测的。12.2 软件生存期过程国际标准 19951995年年8 8月,国际标准化组织(月,国际标准化组织(ISOISO)和国际电工委员会)和国际电工委员会(IECIEC)联合发布了国际标准)联合发布了国际标准ISOISOIEC 12207 IEC 12207 Information Technology Software Life Cycle Information Technology Software Life Cycle ProcessesProcesses。2
11、0082008年,这两个国际标准化机构又联合了美国电气与电子年,这两个国际标准化机构又联合了美国电气与电子工程师学会(工程师学会(IEEEIEEE),共同发布了该标准的第二版:),共同发布了该标准的第二版:ISOISOIEC 12207:2008IEC 12207:2008(IEEE Std.12207-2008IEEE Std.12207-2008)Systems and software engineeringSystems and software engineeringSoftware life Software life cycle processescycle processes。
12、12.2 软件生存期过程国际标准 结构结构由于越来越多的软件作为系统的一部分开发和运行,因此由于越来越多的软件作为系统的一部分开发和运行,因此我们在研究和处理软件问题时,建立系统的观念是十分必我们在研究和处理软件问题时,建立系统的观念是十分必要的。软件项在系统中的位置如下图所示。要的。软件项在系统中的位置如下图所示。基于这一观念,该标准分为两部分:基于这一观念,该标准分为两部分:1)1)与系统相关的过程;与系统相关的过程;2)2)软件特有过程。软件特有过程。系统元素系统元素12.2 软件生存期过程国际标准 与系统相与系统相 关的过程关的过程12.2 软件生存期过程国际标准 软件特有过程软件特有
13、过程12.3 软件过程成熟度 什么是软件过程成熟度什么是软件过程成熟度 过程制度化过程制度化12.3.1 什么是软件过程成熟度 软件过程成熟度的概念软件过程成熟度的概念任何一个软件组织,在完成自身的开发、维护等工作中,任何一个软件组织,在完成自身的开发、维护等工作中,都有自己的软件过程。这种过程有可能是初级的、低效的,都有自己的软件过程。这种过程有可能是初级的、低效的,也可能是高效的,在其成熟性方面存在差异,这当然是相也可能是高效的,在其成熟性方面存在差异,这当然是相互比较而言的。互比较而言的。软件过程成熟度(软件过程成熟度(Software Process MaturitySoftware
14、Process Maturity)是软件)是软件过程改进的一个重要概念,它是指:过程改进的一个重要概念,它是指:一个特定软件过程一个特定软件过程得到清晰的定义、管理、测量、控制的有效程度。成熟度得到清晰的定义、管理、测量、控制的有效程度。成熟度意味着能力的增长具有潜力,并表示组织软件过程是珍贵意味着能力的增长具有潜力,并表示组织软件过程是珍贵的,他在组织内所有项目中的应用是一致的。的,他在组织内所有项目中的应用是一致的。12.3.1 什么是软件过程成熟度 不成熟过程与成熟过程的对比不成熟过程与成熟过程的对比1)角色与职责角色与职责不成熟过程不成熟过程成熟过程成熟过程l没有明确规定角色和职责没有
15、明确规定角色和职责l每个人做自己认为要做的每个人做自己认为要做的事事l常会发生重叠和不清楚的常会发生重叠和不清楚的所属关系和责任所属关系和责任l明确规定角色和职责明确规定角色和职责l相互关系无重叠相互关系无重叠l有明确的目标和测量方法有明确的目标和测量方法l能够体现持续改进过程的能够体现持续改进过程的机制机制2)处理变更的方式处理变更的方式不成熟过程不成熟过程成熟过程成熟过程l每个人都按自己的想每个人都按自己的想法做事法做事l遵循一个规划好的文遵循一个规划好的文件化过程件化过程l可分享取得的经验可分享取得的经验12.3.1 什么是软件过程成熟度3)对发生问题的反应对发生问题的反应不成熟过程不成
16、熟过程成熟过程成熟过程l无秩序的混乱现象随处可无秩序的混乱现象随处可见见l“救火救火”方式解决出现问方式解决出现问题的情况经常发生题的情况经常发生l每个人都想当英雄每个人都想当英雄l根据已有的知识和专业规根据已有的知识和专业规则对发生的问题进行分析则对发生的问题进行分析和处理和处理12.3.1 什么是软件过程成熟度4)可信性可信性不成熟过程不成熟过程成熟过程成熟过程l有时延迟交付产品或超出有时延迟交付产品或超出预算预算l如有估算也不可靠如有估算也不可靠l估算准确估算准确l项目得到有效的控制和管项目得到有效的控制和管理理l目标一般能够达到目标一般能够达到12.3.1 什么是软件过程成熟度5)对工
17、作人员的奖励对工作人员的奖励不成熟过程不成熟过程成熟过程成熟过程l奖励的对象是奖励的对象是“救火救火”队队员员l“如果你第一次就把事情如果你第一次就把事情做好了,那是你的本分,做好了,那是你的本分,没有人理睬,但你若先把没有人理睬,但你若先把事情搞乱,然后再去解决,事情搞乱,然后再去解决,你就成了英雄。你就成了英雄。”_Deming,1986l奖励那些生产高质量产品奖励那些生产高质量产品的团队的团队l奖励那些防火者而不是救奖励那些防火者而不是救火者火者12.3.1 什么是软件过程成熟度6)预见性预见性不成熟过程不成熟过程成熟过程成熟过程l质量不可把握,它依赖于质量不可把握,它依赖于个人个人l进
18、度和预算不能根据以往进度和预算不能根据以往的经验确定的经验确定l项目的进度和产品的质量项目的进度和产品的质量均可预见均可预见l进度和预算可根据以往项进度和预算可根据以往项目的经验确定,并且是符目的经验确定,并且是符合实际的合实际的12.3.1 什么是软件过程成熟度12.3.2 过程制度化 过程认同与过程制度化过程认同与过程制度化软件开发过程决定了在接受软件工程项目后工作人员的行软件开发过程决定了在接受软件工程项目后工作人员的行动方式和反应方式。为了实现某个既定的目标,人们的行动方式和反应方式。为了实现某个既定的目标,人们的行为、活动和任务都要遵循为达到此目标所经历的过程。为、活动和任务都要遵循
19、为达到此目标所经历的过程。规范化的过程体现了一系列有序的和协调一致的行为模式,规范化的过程体现了一系列有序的和协调一致的行为模式,无论这个过程是由一个人来完成或是由一个团队人员共完无论这个过程是由一个人来完成或是由一个团队人员共完成都是如此。成都是如此。12.3.2 过程制度化 过程认同与过程制度化过程认同与过程制度化当一个规范化过程已经渗入组织的日常生活之中,过程的当一个规范化过程已经渗入组织的日常生活之中,过程的要求已经变成全体员工的自觉行动,得到大家的认同和坚要求已经变成全体员工的自觉行动,得到大家的认同和坚持遵循时,过程便成为制度化的(持遵循时,过程便成为制度化的(process in
20、stitutionalization)。)。做到这一点并不容易,要靠过程文化和过程基础设施的支做到这一点并不容易,要靠过程文化和过程基础设施的支持,如图所示。持,如图所示。12.3.2 过程制度化 过程文化过程文化过程文化是指人们的习惯和行为受到过程思维和过程管理过程文化是指人们的习惯和行为受到过程思维和过程管理原则的影响。人们对于规范化过程是完全认同的,就是说,原则的影响。人们对于规范化过程是完全认同的,就是说,人们的活动自觉地按过程要求去作。人们的活动自觉地按过程要求去作。过程文化应具有自己的特性。过程文化应具有自己的特性。12.3.2 过程制度化 过程文化过程文化12.3.2 过程制度化
21、 过程基础设施过程基础设施对于软件过程来说,基础设施指的是支持软件过程的基础对于软件过程来说,基础设施指的是支持软件过程的基础框架和结构基础。它不仅包括组织和管理的岗位和职责,框架和结构基础。它不仅包括组织和管理的岗位和职责,而且包括支持定义过程、开展过程活动、获取和分析过程而且包括支持定义过程、开展过程活动、获取和分析过程有关绩效反馈以及不断进行过程改进活动所必须的技术工有关绩效反馈以及不断进行过程改进活动所必须的技术工具和平台。具和平台。事实上,过程基础设施包含了事实上,过程基础设施包含了 组织和管理基础设施、技术基组织和管理基础设施、技术基 础设施两个方面,如图所示。础设施两个方面,如图
展开阅读全文