软件质量概念软件质量保证软件可靠性软件配置管理.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《软件质量概念软件质量保证软件可靠性软件配置管理.ppt》由会员分享,可在线阅读,更多相关《软件质量概念软件质量保证软件可靠性软件配置管理.ppt(142页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、n n软件质量概念软件质量概念n n软件质量保证软件质量保证n n软件可靠性软件可靠性n n软件配置管理软件配置管理软件质量概念软件质量概念n n软件质量的定义软件质量的定义n n软件质量特性软件质量特性n n软件质量模型软件质量模型n n软件质量的度量和评价软件质量的度量和评价软件质量的定义软件质量的定义n nANSI/IEEE Std 729-1983定义软件定义软件质量为质量为“与软件产品满足规定的和与软件产品满足规定的和隐含的需求的能力有关的特征或特隐含的需求的能力有关的特征或特性的全体性的全体”。n nM.J.Fisher 定义软件质量为定义软件质量为“所有所有描述计算机软件优秀程度
2、的特性的描述计算机软件优秀程度的特性的组合组合”。质质量量特特性性及及其其组组合合,是是软软件件开开发发与维护中的重要考虑因素与维护中的重要考虑因素n n为满足软件的各项精确定义的功能、为满足软件的各项精确定义的功能、性能需求,符合文档化的开发标准,性能需求,符合文档化的开发标准,需要相应地给出或设计一些质量特需要相应地给出或设计一些质量特性及其组合。性及其组合。n n如果这些质量特性及其组合都能在如果这些质量特性及其组合都能在产品中得到满足,则这个软件产品产品中得到满足,则这个软件产品质量就是高的。质量就是高的。n n软件需求是度量软件质量的基础软件需求是度量软件质量的基础。不符合需求的软件
3、就不具备质量。不符合需求的软件就不具备质量。n n标准定义了一组开发准则,用来指标准定义了一组开发准则,用来指导软件人员用工程化的方法来开发导软件人员用工程化的方法来开发软件软件。如果不遵守这些开发准则,。如果不遵守这些开发准则,软件质量就得不到保证。软件质量就得不到保证。n n软件质量是各种特性的复杂组合。软件质量是各种特性的复杂组合。它随着应用的不同而不同,随着用它随着应用的不同而不同,随着用户提出的质量要求不同而不同。户提出的质量要求不同而不同。软件质量特性软件质量特性n n软件质量特性,反映了软件的本质软件质量特性,反映了软件的本质。讨论一个软件的质量,问题最终要讨论一个软件的质量,问
4、题最终要归结到定义软件的质量特性。归结到定义软件的质量特性。n n定义一个软件的质量,就等价于为定义一个软件的质量,就等价于为该软件定义一系列质量特性。该软件定义一系列质量特性。n n人们通常把影响软件质量的特性用人们通常把影响软件质量的特性用软件质量模型来描述软件质量模型来描述。软件质量模型软件质量模型n n软件质量特性定义成软件质量特性定义成分层模型分层模型n n最基本的叫做最基本的叫做基本质量特性基本质量特性,它可,它可以由一些子质量特性定义和度量。以由一些子质量特性定义和度量。n n二次特性二次特性在必要时又可由它的一些在必要时又可由它的一些子质量特性定义和度量。子质量特性定义和度量。
5、n n1976年年 Boehm质量模型质量模型n n1979年年 McCall质量模型质量模型n n1985年年 ISO质量模型质量模型ISO的软件质量评价模型的软件质量评价模型n n按照按照ISO/TC97/SC7/WG3/1985-1-30/N382,软件质量度量模型由三,软件质量度量模型由三层组成层组成n n软件质量需求评价准则软件质量需求评价准则(SQRC)n n软件质量设计评价准则软件质量设计评价准则(SQDC)n n软件质量度量评价准则软件质量度量评价准则(SQMC)n n高层和中层建立国际标准,低层可高层和中层建立国际标准,低层可由各使用单位视实际情况制定由各使用单位视实际情况制
6、定Boehm质量模型质量模型1991年年 ISO质质量量特特性性国国际际标标准准(ISO/IEC9126)n n质量特性:质量特性:功能性功能性、可靠性可靠性、可维可维护性护性、效率效率、可使用性可使用性、可移植性可移植性n n推荐推荐21个子特性:适合性个子特性:适合性 准确性准确性 互用性互用性 依从性依从性 安全性安全性 成熟性成熟性 容容错性错性 可恢复性可恢复性 可理解性可理解性 易学易学习性习性 操作性操作性 时间特性时间特性 资源特资源特性性 可分析性可分析性 稳定性稳定性 可变更性可变更性 可测试性可测试性 可安装性可安装性 可替换性可替换性 适适应性应性 一致性一致性 软件质
7、量的度量和评价软件质量的度量和评价n n软件质量特性度量有两类:软件质量特性度量有两类:预测型预测型和和验收型验收型。n n预测度量预测度量是利用定量或定性的方法,是利用定量或定性的方法,估算软件质量的评价值,以得到软估算软件质量的评价值,以得到软件质量的比较精确的估算值。件质量的比较精确的估算值。n n验收度量验收度量是在软件开发各阶段的检是在软件开发各阶段的检查点,对软件的要求质量进行确认查点,对软件的要求质量进行确认性检查的具体评价值,它是对开发性检查的具体评价值,它是对开发过程中的预测进行评价。过程中的预测进行评价。n n预测度量预测度量有两种。有两种。n n第一种叫做第一种叫做尺度度
8、量尺度度量,这是一种,这是一种定定量度量量度量。它适用于一些能够直接度。它适用于一些能够直接度量的特性,量的特性,例如,出错率定义为:例如,出错率定义为:错误数错误数KLOC单位时间单位时间。n n第二种叫做第二种叫做二元度量二元度量,这是一种,这是一种定定性度量性度量。它适用于一些只能间接度。它适用于一些只能间接度量的特性,量的特性,例如,可使用性、灵活例如,可使用性、灵活性等等性等等。尺度度量检查表尺度度量检查表二元度量检查表二元度量检查表n n通过对照检查项目,确定一种质量通过对照检查项目,确定一种质量特性的有无。特性的有无。n n例如,在设计和编码阶段的复杂性例如,在设计和编码阶段的复
9、杂性度量,利用度量,利用尺度度量方法尺度度量方法来做。对来做。对模块复杂性的度量采用模块复杂性的度量采用McCabe 环环路度量。路度量。n n对于对于二元度量二元度量,可针对检查表中每,可针对检查表中每一项都应给以记分,指定信息存在一项都应给以记分,指定信息存在时记时记“1”,否则记,否则记“0”。表中所。表中所有各项的分数相加,即得度量结果。有各项的分数相加,即得度量结果。软件的质量保证软件的质量保证n n质量保证的概念质量保证的概念n n软件质量保证的主要任务软件质量保证的主要任务n n质量保证与检验质量保证与检验n n软件质量保证体系软件质量保证体系n n质量保证的实施质量保证的实施n
10、 n软件的质量设计软件的质量设计质量保证的概念质量保证的概念n n什么是质量保证,它是什么是质量保证,它是为保证产品为保证产品和服务充分满足消费者要求的质量和服务充分满足消费者要求的质量而进行的有计划、有组织的活动而进行的有计划、有组织的活动。n n质量保证是质量保证是面向消费者的活动面向消费者的活动,是,是为了使产品实现用户要求的功能,为了使产品实现用户要求的功能,站在用户立场上来掌握产品质量的。站在用户立场上来掌握产品质量的。n n软件的质量保证就是向用户及社会软件的质量保证就是向用户及社会提供满意的高质量的产品。提供满意的高质量的产品。n n软件的质量保证活动也和一般的质软件的质量保证活
11、动也和一般的质量保证活动一样,是量保证活动一样,是确保软件产品确保软件产品从诞生到消亡为止的所有阶段的质从诞生到消亡为止的所有阶段的质量的活动量的活动。即。即为了确定、达到和维为了确定、达到和维护需要的软件质量而进行的所有有护需要的软件质量而进行的所有有计划、有系统的管理活动计划、有系统的管理活动。软件质量保证的主要任务软件质量保证的主要任务n n为了提高软件的质量和软件的生为了提高软件的质量和软件的生产率,软件质量保证的主要任务产率,软件质量保证的主要任务大致可归结为大致可归结为8点。点。1.用户要求定义用户要求定义n n熟练掌握熟练掌握正确定义用户要求的技正确定义用户要求的技术术n n熟练
12、使用和指导他人使用熟练使用和指导他人使用定义软定义软件需求的支持工具件需求的支持工具n n重视重视领导全体开发人员收集和积领导全体开发人员收集和积累有关用户业务领域的各种业务累有关用户业务领域的各种业务的资料和技术的资料和技术技能技能。2.力争不重复劳动力争不重复劳动n n考虑哪些考虑哪些既有软件可以复用既有软件可以复用n n在开发过程中,随时在开发过程中,随时考虑所生产考虑所生产软件的复用性软件的复用性。3.掌握开发新软件的方法掌握开发新软件的方法n n在开发新软件的过程中大力使用和在开发新软件的过程中大力使用和推行软件工程学中所介绍的开发方推行软件工程学中所介绍的开发方法和工具。法和工具。
13、uu 使用先进的开发技术:如使用先进的开发技术:如结构化结构化技术技术、面向对象技术面向对象技术uu 使用数据库技术或网络化技术使用数据库技术或网络化技术uu 应用开发工具或环境应用开发工具或环境uu 改进开发过程改进开发过程4.组织外部力量协作的方法组织外部力量协作的方法n n一个软件自始至终由同一个软件开一个软件自始至终由同一个软件开发单位来开发,也许是最理想的。发单位来开发,也许是最理想的。但在现实中常常难以做到。但在现实中常常难以做到。n n改善对外部协作部门的开发管理。改善对外部协作部门的开发管理。必须必须明确规定明确规定进度管理进度管理、质量管理质量管理、交接检查交接检查、维护体制
14、维护体制等各方面的要等各方面的要求求,建立建立跟踪检查跟踪检查的体制的体制。5.排除无效劳动排除无效劳动n n最大的无效劳动就是最大的无效劳动就是因需求规格说因需求规格说明有误明有误、设计有误设计有误而造成的而造成的返工返工。定量记录返工工作量定量记录返工工作量,收集和分析收集和分析返工劳动花费数据返工劳动花费数据n n较大的无效劳动是较大的无效劳动是重复劳动重复劳动,即相,即相似的软件在几个地方同时开发似的软件在几个地方同时开发n n建立互相交流、信息往来通畅、具建立互相交流、信息往来通畅、具横向交流特征的信息流通网横向交流特征的信息流通网6.发挥每个开发者的能力发挥每个开发者的能力n n软
15、件生产是人的智能生产活动,它软件生产是人的智能生产活动,它依赖于人的能力依赖于人的能力和和开发组织团队的开发组织团队的能力能力。n n开发者开发者必须有必须有学习各专业业务知识学习各专业业务知识、生产技术生产技术和和管理技术管理技术的能动性。的能动性。n n管理者管理者或或产品服务者产品服务者要要制定技术培制定技术培训计划训计划、技术水平标准技术水平标准,以及,以及适用适用于将来需要的中长期技术培训计划于将来需要的中长期技术培训计划。7.提高软件开发的工程能力提高软件开发的工程能力n n要想生产出高质量的软件产品必要想生产出高质量的软件产品必须有高水平的须有高水平的软件工程能力软件工程能力。n
16、 n在软件开发环境或软件工具箱的在软件开发环境或软件工具箱的支持下支持下,运用先进的开发技术运用先进的开发技术、工具和管理方法开发软件的能力工具和管理方法开发软件的能力。8.提高计划和管理质量能力提高计划和管理质量能力n n项目开发初期项目开发初期计划阶段的项目计划计划阶段的项目计划评价评价n n计划执行过程中及计划完成报告的计划执行过程中及计划完成报告的评价评价n n将评价、评审工作在工程实施之前将评价、评审工作在工程实施之前就列入整个开发工程的工程计划中就列入整个开发工程的工程计划中n n提高软件开发项目管理的精确度提高软件开发项目管理的精确度质量保证与检验质量保证与检验n n其一是其一是
17、切实搞好开发阶段的管理切实搞好开发阶段的管理,检查各开发阶段的质量保证活动开检查各开发阶段的质量保证活动开展得如何;展得如何;n n其二是其二是预先防止软件差错给用户造预先防止软件差错给用户造成损失成损失。n n为了为了确保每个开发过程的质量确保每个开发过程的质量,防,防止把软件差错传递到下一个过程,止把软件差错传递到下一个过程,必须进行质量检验。必须进行质量检验。质量检验的原则质量检验的原则n n用户要求的是产品所具有的功能,用户要求的是产品所具有的功能,这是这是“真质量真质量”。靠质量检验,一靠质量检验,一般检查的是般检查的是“真质量真质量”的质量特性的质量特性。n n能靠质量检验的质量特
18、性,能靠质量检验的质量特性,即使全即使全数检验,也只是代表产品的部分质数检验,也只是代表产品的部分质量特性量特性。n n必须必须在各开发阶段对影响产品质量在各开发阶段对影响产品质量的因素进行切实的管理的因素进行切实的管理,认真检查,认真检查实施落实情况。实施落实情况。n n当开发阶段出现异常时,当开发阶段出现异常时,要从质量要从质量特性方面进行检验,看是否会给后特性方面进行检验,看是否会给后续阶段带来影响续阶段带来影响。n n虽然各开发阶段进展稳定,但由于虽然各开发阶段进展稳定,但由于工程能力不足,软件产品不能满足工程能力不足,软件产品不能满足用户要求的质量。这时用户要求的质量。这时可通过检验
19、可通过检验对该产品做出评价,判断是否能向对该产品做出评价,判断是否能向用户提供该产品用户提供该产品。n n要以一定的标准检验产品,根据产要以一定的标准检验产品,根据产品的质量特性,检查各个过程的管品的质量特性,检查各个过程的管理状态。理状态。软件质量保证体系软件质量保证体系n n软件的质量保证活动,是涉及各个软件的质量保证活动,是涉及各个部门的部门间的活动。部门的部门间的活动。n n例如,如果在用户处发现了软件故例如,如果在用户处发现了软件故障,障,产品服务部门产品服务部门就应听取用户的就应听取用户的意见,再由意见,再由检查部门检查部门调查该产品的调查该产品的检验结果,进而还要调查软件实现检验
20、结果,进而还要调查软件实现过程的状况,并根据情况检查设计过程的状况,并根据情况检查设计是否有误,不当之处加以改进,防是否有误,不当之处加以改进,防止再次发生问题。止再次发生问题。n n为了顺利开展以上活动,为了顺利开展以上活动,事先明确事先明确部门间的质量保证业务部门间的质量保证业务,确立部门确立部门间的联合与协作的机构间的联合与协作的机构十分重要,十分重要,这个机构就是质量保证体系这个机构就是质量保证体系。uu 必须必须明确反馈途径明确反馈途径。uu 必须必须明确各部门的职责明确各部门的职责。uu 必须必须确定保证系统运行的方法确定保证系统运行的方法、工具工具、有关文档资料有关文档资料,以及
21、,以及系统系统管理的规程和标准管理的规程和标准。uu 必须必须明确决定是否可向下一阶段明确决定是否可向下一阶段进展的评价项目和评价准则进展的评价项目和评价准则。uu 必须必须不断地总结系统管理的经验不断地总结系统管理的经验教训教训,能够修改系统能够修改系统。uu 制定质量保证计划制定质量保证计划,在计划中,在计划中FF 确定确定质量目标质量目标FF 确定确定在每个阶段为达到总目标在每个阶段为达到总目标所应达到的要求所应达到的要求FF 确定确定进度安排进度安排FF 确定确定所需人力、资源和成本等所需人力、资源和成本等。软件质量保证规程和技术准则软件质量保证规程和技术准则n n规定规定在项目的哪个
22、阶段进行评审及在项目的哪个阶段进行评审及如何评审如何评审;n n规定规定在项目的哪个阶段应当产生哪在项目的哪个阶段应当产生哪些报告和计划些报告和计划;n n规定规定产品各方面测试应达到的水平产品各方面测试应达到的水平。n n在在每次评审和测试中发现的错误如每次评审和测试中发现的错误如何修正何修正;n n描述描述希望得到的质量度量希望得到的质量度量;n n说明说明各种软件人员的职责各种软件人员的职责,规定为,规定为了达到质量目标他们必须进行哪些了达到质量目标他们必须进行哪些活动。活动。n n建立建立uu 在各阶段中执行质量评价的在各阶段中执行质量评价的质质量评价和质量检查系统量评价和质量检查系统
23、uu 有效运用质量信息的有效运用质量信息的质量信息质量信息系统系统,并使其运行。,并使其运行。质量保证的实施质量保证的实施n n软件质量保证的实施需要从纵向软件质量保证的实施需要从纵向和横向两个方面展开。和横向两个方面展开。uu 要求所有与软件生存期有关的要求所有与软件生存期有关的人员都要参加人员都要参加uu 要求对产品形成的全过程进行要求对产品形成的全过程进行质量管理质量管理n n这要求整个软件部门齐心协力,这要求整个软件部门齐心协力,不断完善软件的开发环境。此外不断完善软件的开发环境。此外还需要与用户共同合作。还需要与用户共同合作。质量目标与度量质量目标与度量n n为了开发高质量的软件,需
24、要为了开发高质量的软件,需要明确明确软件的功能软件的功能,明确软件应达到什么明确软件应达到什么样的质量标准样的质量标准,即,即质量目标质量目标。n n为了达到这个目标,为了达到这个目标,在开发过程中在开发过程中的各个阶段进行检查和评价的各个阶段进行检查和评价。n n在做质量评价时,在做质量评价时,需要有对质量进需要有对质量进行度量的准则和方法行度量的准则和方法。n n需要有在软件生存期中如何使用这需要有在软件生存期中如何使用这些准则和方法的些准则和方法的质量保证步骤质量保证步骤,以,以及提高该项作业效率的及提高该项作业效率的工具工具软件质量度量和保证的条件软件质量度量和保证的条件n n适应性:
25、适应性:适应各种用户、软件类型适应各种用户、软件类型n n易学性:易学性:不需要特殊技术,易掌握不需要特殊技术,易掌握n n可靠性:可靠性:同个软件的评价结果一致同个软件的评价结果一致n n针对性:针对性:设计阶段就确立质量目标,设计阶段就确立质量目标,在各个阶段实施落实。在各个阶段实施落实。n n客观性:客观性:n n经济性:经济性:质量保证活动的实施步骤:质量保证活动的实施步骤:n nTarget:以用户要求和开发方针为:以用户要求和开发方针为依据,对质量需求准则、质量设计依据,对质量需求准则、质量设计准则的各质量特性设定质量目标。准则的各质量特性设定质量目标。n nPlan:设定适合于被
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 质量 概念 质量保证 可靠性 配置管理
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内