16-软件质量.ppt

上传人(卖家):hwpkd79526 文档编号:5633725 上传时间:2023-04-28 格式:PPT 页数:47 大小:195KB
下载 相关 举报
16-软件质量.ppt_第1页
第1页 / 共47页
16-软件质量.ppt_第2页
第2页 / 共47页
16-软件质量.ppt_第3页
第3页 / 共47页
16-软件质量.ppt_第4页
第4页 / 共47页
16-软件质量.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、2023-4-28广东工业大学计算机学院1软件工程软件工程Software Engineering2023-4-28广东工业大学计算机学院2o软件质量作为软件工程学科的一部分,处于软件的软件质量作为软件工程学科的一部分,处于软件的生存周期中,应该有计划地、系统地应用软件工程生存周期中,应该有计划地、系统地应用软件工程的方法进行处理。的方法进行处理。o本章内容:本章内容:o16.1 软件质量概述软件质量概述o16.2 软件质量的度量和评价软件质量的度量和评价o16.3 软件质量保证软件质量保证o16.4 技术评审与审查技术评审与审查o16.5 软件的可靠性软件的可靠性2023-4-28广东工业大

2、学计算机学院3第第16章章 软件质量软件质量 o16.1软件质量概述软件质量概述 o16.1.1 软件质量的定义软件质量的定义o定义定义16-1(1)软件产品具备满足给定需求的特性及特征的总)软件产品具备满足给定需求的特性及特征的总体的能力。体的能力。(2)软件拥有所期望的各种属性组合的程度。)软件拥有所期望的各种属性组合的程度。(3)用户认为软件满足他们综合期望的程度。)用户认为软件满足他们综合期望的程度。(4)软件组合特性可以满足用户预期需求的程度。)软件组合特性可以满足用户预期需求的程度。2023-4-28广东工业大学计算机学院4o16.1.2 软件质量特性软件质量特性o软件质量的模型软

3、件质量的模型:把软件质量特性定义成分层模:把软件质量特性定义成分层模型。在这种分层的模型中,最基本的叫做基本质量型。在这种分层的模型中,最基本的叫做基本质量特性,它可以由一些子质量特性定义和度量。特性,它可以由一些子质量特性定义和度量。o1.McCall质量模型质量模型PRODUCTREVITION产品修正PRODUCTTRANSITION产品转移产品运行PRODUCTOPREATIONS互连性(Interoperability)可移植性(Portability)复用性(Reusability)可维护性(Maintainability)可测试性(Testability)灵活性(Flexibil

4、ity)正确性(Correctness)可靠性(Reliability)可使用性(Usability)效率(Efficiency)完整性(Integrity)完整性 Secarity 2023-4-28广东工业大学计算机学院5pMcCall定义的软件质量模型定义的软件质量模型2023-4-28广东工业大学计算机学院6oMcCall质量度量模型质量度量模型 2023-4-28广东工业大学计算机学院7o2.ISO的软件质量评价模型的软件质量评价模型2023-4-28广东工业大学计算机学院8p16.1.3 16.1.3 软件质量特性之间的竞争软件质量特性之间的竞争p各质量特性与质量子特性之间的关系各

5、质量特性与质量子特性之间的关系2023-4-28广东工业大学计算机学院9p质量特性之间的有利和不利影响质量特性之间的有利和不利影响 其中,表示有利影响,表示不利影响2023-4-28广东工业大学计算机学院10p软件质量特性与质量子特性间的有利和不利影响软件质量特性与质量子特性间的有利和不利影响 功能性可靠性易使用性效率可维护性可移植性精确性健壮性?安全性通信有效性执行有效性设备有效性操作性?培训性完备性?一致性可追踪性?可见性硬件系统无关性软件系统无关性可扩充性产品文档完备性?公用性清晰性模块性自描述性简单性?结构性?2023-4-28广东工业大学计算机学院11o16.2 软件质量的度量和评价

6、软件质量的度量和评价o16.2.1 软件质量的度量软件质量的度量o定义定义16-2 软件质量度量是对软件所具有的影响其属性所进软件质量度量是对软件所具有的影响其属性所进行的定量测量行的定量测量 o软件质量度量时必须满足的质量标准软件质量度量时必须满足的质量标准 o客观性:如果不存在来自测试者对度量的主观影响,客观性:如果不存在来自测试者对度量的主观影响,则度量是客观的。则度量是客观的。o可靠性:如果在重复度量中,在同样条件下达到相可靠性:如果在重复度量中,在同样条件下达到相同的效果,则认为度量是可靠的。同的效果,则认为度量是可靠的。o适用性:如果度量结果能够明确地说明质量特性时,适用性:如果度

7、量结果能够明确地说明质量特性时,则可以说度量是适用的。则可以说度量是适用的。2023-4-28广东工业大学计算机学院12o标准化:标准化是指必须有一个可以明确表示度量标准化:标准化是指必须有一个可以明确表示度量结果的标度,当这个可比较的标度存在时,度量被结果的标度,当这个可比较的标度存在时,度量被认为是达到标准化的。认为是达到标准化的。o可比较性:当某项度量与其他度量相关时,则度量可比较性:当某项度量与其他度量相关时,则度量具有可比较性。具有可比较性。o经济性:当度量是在低成本下进行时,它是经济的。经济性:当度量是在低成本下进行时,它是经济的。度量的经济与否取决于度量过程的自动化程度和度度量的

8、经济与否取决于度量过程的自动化程度和度量的数据量,使用工具可以大大改善软件度量的自量的数据量,使用工具可以大大改善软件度量的自动化水平。动化水平。o有效性:有效形式是最难证明的。但是不说明度量有效性:有效形式是最难证明的。但是不说明度量标准是有效时,就不能客观的评价软件质量。标准是有效时,就不能客观的评价软件质量。2023-4-28广东工业大学计算机学院13p16.2.2 软件质量度量的分类软件质量度量的分类o软件质量度量可以划分为过程度量和产品度量。软件质量度量可以划分为过程度量和产品度量。o1.过程度量过程度量,是度量开发过程和维护过程或开发环是度量开发过程和维护过程或开发环境的定量属性。

9、例如,说明开发人员具有多少年的境的定量属性。例如,说明开发人员具有多少年的编程经验和开发过程的成本等。编程经验和开发过程的成本等。o2.产品度量产品度量,是度量产品的定量属性。产品度量不是度量产品的定量属性。产品度量不涉及有关产品生产的任何方面或形成产品当前实际涉及有关产品生产的任何方面或形成产品当前实际状况的原因。产品度量包括度量产品的大小,如程状况的原因。产品度量包括度量产品的大小,如程序行数或程序中的符号数;结构的复杂性,如控制序行数或程序中的符号数;结构的复杂性,如控制流程、嵌套深度和递归深度等;数据结构的复杂性,流程、嵌套深度和递归深度等;数据结构的复杂性,包括使用的变量数和数据文件

10、等产品的应用领域,包括使用的变量数和数据文件等产品的应用领域,如工资清单。也可能是以上各项的组合。如工资清单。也可能是以上各项的组合。2023-4-28广东工业大学计算机学院14p16.2.3 16.2.3 软件质量评价软件质量评价o软件质量评价采用软件复杂性度量软件质量评价采用软件复杂性度量。o复杂性度量包括静态度量和开发度量。复杂性度量包括静态度量和开发度量。o静态度量是在给定时间内测量软件产品的质量,它静态度量是在给定时间内测量软件产品的质量,它可以分为:可以分为:(1)软件产品的规模。)软件产品的规模。(2)软件产品程序控制结构的度量。)软件产品程序控制结构的度量。(3)数据结构的度量

11、。)数据结构的度量。2023-4-28广东工业大学计算机学院15p1.McCabe度量法度量法pMcCabe认为程序的复杂性很大程度上取决于程认为程序的复杂性很大程度上取决于程序控制流的复杂性。单一的顺序程序结构最简单,序控制流的复杂性。单一的顺序程序结构最简单,循环和选择所构成的环路越多,程序就越复杂。循环和选择所构成的环路越多,程序就越复杂。pMcCabe度量步骤如下:度量步骤如下:p1)画程序图afeibgcdhafeibgcdhabdgefchi abdgefchic(a)程序流程图 (b)程序图2023-4-28广东工业大学计算机学院16o2)计算线性无关环路数o根据图论理论,一个强

12、连通的有向图中线性无关环根据图论理论,一个强连通的有向图中线性无关环路个数计算公式如下:路个数计算公式如下:oV(G)=e-n+1o其中:其中:V(G):有向图:有向图G中的环路个数。中的环路个数。e:G的弧的条数。的弧的条数。n:G的节点数。的节点数。o对于一个正常的程序来说,应该能够从程序图内的对于一个正常的程序来说,应该能够从程序图内的入口点到达任何一个节点,如果从出口点加一条指入口点到达任何一个节点,如果从出口点加一条指向入口点的弧,那么,程序图一定是一个强连通图。向入口点的弧,那么,程序图一定是一个强连通图。2023-4-28广东工业大学计算机学院17p上图中程序图还不是强连通图,但

13、是,加上一条从上图中程序图还不是强连通图,但是,加上一条从节点节点i到节点到节点A的弧后,就是一个强连通图了(图中的弧后,就是一个强连通图了(图中虚线)。此图(强连通图)的节点数为虚线)。此图(强连通图)的节点数为9,弧数为,弧数为11,其线性无关环路个数计算如下:,其线性无关环路个数计算如下:pV(G)=11-9+1=3o这三个线性无关环路分别是:这三个线性无关环路分别是:abcia、defghd和和cdefgc。oV(G)还有两种计算方法。还有两种计算方法。o(1)通过计算程序图中所有有界区域和无界区域)通过计算程序图中所有有界区域和无界区域的个数得到。例如,图的个数得到。例如,图16-4

14、中的程序图共有三个中的程序图共有三个区域,所以区域,所以V(G)=3。o(2)用判定语句总数加)用判定语句总数加1计算。这里约定,多分支计算。这里约定,多分支的判定为分支数减的判定为分支数减1;循环看成一个判定。;循环看成一个判定。2023-4-28广东工业大学计算机学院18p2.Halstead软件复杂性度量方法软件复杂性度量方法p是根据程序中可执行代码行的操作符合操作数的数是根据程序中可执行代码行的操作符合操作数的数目来计算程序的复杂性。目来计算程序的复杂性。pn1:程序中的特殊算符的数量。:程序中的特殊算符的数量。pn2:程序中的特殊运算数的数量。:程序中的特殊运算数的数量。pN1:所有

15、算符出现的总数。:所有算符出现的总数。pN2:所有运算数出现的总数。:所有运算数出现的总数。pn=n1+n2:在程序中不同符号的数(或称程序:在程序中不同符号的数(或称程序的词汇标)。的词汇标)。2023-4-28广东工业大学计算机学院19oN=N1+N2:在程序中所有符号的总数(或称程:在程序中所有符号的总数(或称程序长度)。序长度)。o程序容量也成为程序能力,定义为:程序容量也成为程序能力,定义为:oV=Nlog2noHalstead用用D来说明程序度量时的难度系数:来说明程序度量时的难度系数:oD=(n1N2)/(2n2)o其中,其中,D是词汇表和运算数数量的函数,是词汇表和运算数数量的

16、函数,N2/n2是适用的运算数的平均数。是适用的运算数的平均数。2023-4-28广东工业大学计算机学院20p16.3 16.3 软件质量保证软件质量保证o16.3.1 16.3.1 软件质量保证的概述软件质量保证的概述o1.软件质量保证(软件质量保证(SQA)采用一定的技术、方法和工具,来处理和调整软件采用一定的技术、方法和工具,来处理和调整软件产品满足需求时的相互关系,以确保软件产品满足产品满足需求时的相互关系,以确保软件产品满足或超过在该产品的开发过程中所规定的标准。或超过在该产品的开发过程中所规定的标准。o2.质量保证系统(质量保证系统(QAS)提供质量保证措施和策略的总框架,包括机构

17、的建提供质量保证措施和策略的总框架,包括机构的建立和发行过程,职责的分配及选择执行质量保证的立和发行过程,职责的分配及选择执行质量保证的工具。工具。p3.质量保证计划质量保证计划2023-4-28广东工业大学计算机学院21p16.3.2 软件质量保证原则软件质量保证原则o(1)尽可能做到质量特征的具体化及量化。)尽可能做到质量特征的具体化及量化。o(2)要找出每个阶段的具体质量特征。)要找出每个阶段的具体质量特征。o(3)针对具体产品和相应项目制定质量计划。)针对具体产品和相应项目制定质量计划。o(4)检查质量测试结果。)检查质量测试结果。o(5)进行各种质量评审。)进行各种质量评审。o(6)

18、优化的建设性的质量保证。)优化的建设性的质量保证。o(7)尽早发现并改正错误和缺陷。)尽早发现并改正错误和缺陷。o(8)集中进行质量保证。)集中进行质量保证。o(9)独立的质量测试。)独立的质量测试。o(10)对所应用的软件质量保证措施的评价。)对所应用的软件质量保证措施的评价。2023-4-28广东工业大学计算机学院22p16.3.3 16.3.3 软件质量保证计划软件质量保证计划p(1)软件质量保证计划的用途。)软件质量保证计划的用途。o(2)参考文件。)参考文件。o(3)软件质量保证计划的管理。)软件质量保证计划的管理。o(4)软件质量文档。)软件质量文档。o(5)标准、规范和约定。)标

19、准、规范和约定。o(6)评审和审计。)评审和审计。o(7)软件配置管理。)软件配置管理。o(8)存在的问题及修改的报告。)存在的问题及修改的报告。o(9)软件工程。)软件工程。o(10)编码控制。)编码控制。o(11)其他内容。)其他内容。2023-4-28广东工业大学计算机学院2316.3.4 16.3.4 软件质量保证的措施软件质量保证的措施o(1)制定计划和管理方面的质量保证措施。)制定计划和管理方面的质量保证措施。o(2)建设性的质量保证措施。)建设性的质量保证措施。o(3)分析的质量保证措施。)分析的质量保证措施。o(4)心理学方面的质量保证措施。)心理学方面的质量保证措施。2023

20、-4-28广东工业大学计算机学院2416.3.5 软件质量管理小组软件质量管理小组o(1)最适合提高个人能力和小组力量。)最适合提高个人能力和小组力量。o(2)能够在工程上比硬件更好地提高质量。)能够在工程上比硬件更好地提高质量。o(3)关系到提高积极性。)关系到提高积极性。2023-4-28广东工业大学计算机学院2516.4 技术评审与审查技术评审与审查o(1)软件需求评审。)软件需求评审。o(2)软件概要设计评审。)软件概要设计评审。o(3)软件详细设计评审。)软件详细设计评审。o(4)软件验证与确认的评审。)软件验证与确认的评审。o(5)功能审查。)功能审查。o(6)物理审查。)物理审查

21、。o(7)综合审查。)综合审查。o(8)管理评审。)管理评审。2023-4-28广东工业大学计算机学院26p16.4.1 16.4.1 评审过程评审过程o首先由一个独立的主席制定评审计划,规定测试目标和公首先由一个独立的主席制定评审计划,规定测试目标和公开评审标准,并规定对评审对象进行测试的指标开评审标准,并规定对评审对象进行测试的指标。o评审前要举行协商会,使参加评审的人员对测试对象有一评审前要举行协商会,使参加评审的人员对测试对象有一个总的概念和了解。协商会议后,紧接着的是,参加评审个总的概念和了解。协商会议后,紧接着的是,参加评审人员进行个人评审准备,在评审的完整文档中填写提问清人员进行

22、个人评审准备,在评审的完整文档中填写提问清单。评审会议中,首先由主席介绍搜集的所谓形式的错误单。评审会议中,首先由主席介绍搜集的所谓形式的错误记录,然后,由软件开发者报告评审对象的概况。正式进记录,然后,由软件开发者报告评审对象的概况。正式进行评审时,参加评审的人员在文档作者指导下阅读文档。行评审时,参加评审的人员在文档作者指导下阅读文档。评审会议结束时,参加人员提出评审结论。评审会议结束时,参加人员提出评审结论。o接下去的工作是返工阶段。主席必须监督评审对象的错误接下去的工作是返工阶段。主席必须监督评审对象的错误修改,写出错误报告摘要,并提供修改执行表。修改,写出错误报告摘要,并提供修改执行

23、表。o最后要进行评价,目标是确定是否完成了所有的修改。最后要进行评价,目标是确定是否完成了所有的修改。2023-4-28广东工业大学计算机学院2716.4.2 选择参加评审的成员选择参加评审的成员o首先要寻找一个主席,建议从独立的质量保证部门首先要寻找一个主席,建议从独立的质量保证部门中选取。中选取。o选择了主席后,由主席和测试对象的主持人共同选选择了主席后,由主席和测试对象的主持人共同选择其他参加成员。选择的成员应当包括具有专门知择其他参加成员。选择的成员应当包括具有专门知识,及在数据库和应用领域有长期经验的专家,被识,及在数据库和应用领域有长期经验的专家,被评审系统的可能用户及有能力并擅长

24、用系统分析的评审系统的可能用户及有能力并擅长用系统分析的方法发现逻辑矛盾的人方法发现逻辑矛盾的人.o成员数目根据评审的对象的不同而不同,建议做规成员数目根据评审的对象的不同而不同,建议做规范评审时为范评审时为58人;做总体设计评审时为人;做总体设计评审时为6人;做人;做详细设计评审时为详细设计评审时为5人;做编码评审时,只需要人;做编码评审时,只需要4人。人。2023-4-28广东工业大学计算机学院28p16.4.3 16.4.3 评审的管理和组织评审的管理和组织o(1)软件项目管理者参加的评审,管理者负责制)软件项目管理者参加的评审,管理者负责制订评审计划,召集评审小组开会,审查参加成员的订

25、评审计划,召集评审小组开会,审查参加成员的资格,最后由他们决定评审对象是否通过。总之,资格,最后由他们决定评审对象是否通过。总之,由管理者支持实际的评审会议。由管理者支持实际的评审会议。o(2)模式是文档的作者主持评审,邀请评审小组)模式是文档的作者主持评审,邀请评审小组成员和主席。由评审小组来确定评审对象是否通过。成员和主席。由评审小组来确定评审对象是否通过。最后由主席起草报告,说明结果。最后由主席起草报告,说明结果。2023-4-28广东工业大学计算机学院29p16.4.4 评审的方法评审的方法o(1)评审概述。)评审概述。o(2)评审准备。)评审准备。o(3)评审错误表。)评审错误表。o

26、(4)评审错误报告摘要。)评审错误报告摘要。o(5)管理报告。)管理报告。2023-4-28广东工业大学计算机学院3016.4.5 走查和审查走查和审查o走查是评审过程中采用的一种方法走查是评审过程中采用的一种方法。o审查是一种正式的评定技术审查是一种正式的评定技术。2023-4-28广东工业大学计算机学院31p16.4.6 16.4.6 开发过程的评审开发过程的评审o1.项目评审项目评审o项目控制要解决的问题如下:项目控制要解决的问题如下:o(1)评审目组对于正在进行的项目任务是否了解。)评审目组对于正在进行的项目任务是否了解。o(2)项目任务是否需要修改。)项目任务是否需要修改。o(3)项

27、目进度是否可定义和可测量。)项目进度是否可定义和可测量。o(4)目前的工作是否完成。)目前的工作是否完成。o(5)工作是否正确。)工作是否正确。o(6)是否为今后的工作奠定了基础。)是否为今后的工作奠定了基础。o(7)是否符合规定的标准和说明。)是否符合规定的标准和说明。o(8)是否符合计划确定的成本和时间。)是否符合计划确定的成本和时间。2023-4-28广东工业大学计算机学院32o项目评审成功的标准如下:项目评审成功的标准如下:o(1)项目成果是可以评审的,即可读和可)项目成果是可以评审的,即可读和可理解的。理解的。o(2)项目计划的制定和执行由一个确定的)项目计划的制定和执行由一个确定的

28、小组来负责,该单位是很容易进行评审的。小组来负责,该单位是很容易进行评审的。o(3)具有确定目标的结构清晰的开发计划,)具有确定目标的结构清晰的开发计划,用它来评价项目进度。用它来评价项目进度。o(4)具有已经在技术评审中评价了的具备)具有已经在技术评审中评价了的具备清晰文档的项目成果。清晰文档的项目成果。2023-4-28广东工业大学计算机学院33o在评审中必须测试需求规范的以下质量特征是否满在评审中必须测试需求规范的以下质量特征是否满足:足:o(1)抗矛盾性。)抗矛盾性。o(2)完整性。)完整性。o(3)可执行性和可处理性。)可执行性和可处理性。o(4)精确性和可测试性。)精确性和可测试性

29、。o(5)综合性。)综合性。2.需求规范的评审需求规范的评审2023-4-28广东工业大学计算机学院34o3.设计的评审设计的评审o根据设计的类型,可以分为总体设计评审和详细审根据设计的类型,可以分为总体设计评审和详细审计评审。设计评审的目标是确定和评价设计的各种计评审。设计评审的目标是确定和评价设计的各种状态(特征的完整性)以及发现错误的矛盾,如在状态(特征的完整性)以及发现错误的矛盾,如在规范和设计或模块接口之间的矛盾。规范和设计或模块接口之间的矛盾。o4.编码检验编码检验o编码检验的目的一方面是改善软件质量,另一方面编码检验的目的一方面是改善软件质量,另一方面是为了提高程序员的生产率。编

30、码检验的另一个目是为了提高程序员的生产率。编码检验的另一个目的是测试编码是否与详细设计相匹配,如评审编码的是测试编码是否与详细设计相匹配,如评审编码是否符合程序结构和编码标准。是否符合程序结构和编码标准。2023-4-28广东工业大学计算机学院35o在编码检验中可能检验的内容如下:在编码检验中可能检验的内容如下:o(1)测试程序的接口。)测试程序的接口。o(2)检验程序结构。)检验程序结构。o(3)检验使用的变量或他们的名称。)检验使用的变量或他们的名称。o(4)计算公式的检验。)计算公式的检验。o(5)检验输入和输出。)检验输入和输出。o(6)指令检验。)指令检验。o(7)检验是否符合编码标

31、准。)检验是否符合编码标准。2023-4-28广东工业大学计算机学院36o5.测试评审测试评审o测试检验的目标是:测试检验的目标是:o(1)评价和修正测试案例。)评价和修正测试案例。o(2)检查测试是否正确地执行,使测试过程符合)检查测试是否正确地执行,使测试过程符合测试规定。测试规定。o(3)在每个模块的接口规范中发现故障。)在每个模块的接口规范中发现故障。o(4)讨论每个测试是否成功。)讨论每个测试是否成功。2023-4-28广东工业大学计算机学院37p16.4.7 16.4.7 对评审的综合评价对评审的综合评价o1.评审的优点评审的优点o(1)评审复杂情况时的分析、识别、评价和测试)评审

32、复杂情况时的分析、识别、评价和测试等方面充分发挥人们的思维能力。等方面充分发挥人们的思维能力。o(2)评审不仅适用于检验正式的文档,如程序清)评审不仅适用于检验正式的文档,如程序清单,也适用于非正式的文档,如口头的设计说明等。单,也适用于非正式的文档,如口头的设计说明等。o(3)用评审方式检查程序是具有很高的成功率的。)用评审方式检查程序是具有很高的成功率的。2023-4-28广东工业大学计算机学院38o2.评审的缺点评审的缺点o(1)评审的成功完全依赖于参加评审的人员,他)评审的成功完全依赖于参加评审的人员,他们的原则性是至关重要的。们的原则性是至关重要的。o(2)交流的气氛对于发挥人们的思

33、考和分析能力)交流的气氛对于发挥人们的思考和分析能力是很重要的。是很重要的。o(3)解决问题可能占用有价值的评审时间,以至)解决问题可能占用有价值的评审时间,以至于不能发现更多的错误。于不能发现更多的错误。o(4)存在着评价工作人员的可能,这将使检查过)存在着评价工作人员的可能,这将使检查过程的有效性降低。程的有效性降低。o(5)评审对开发过程的重要性往往被低估了。)评审对开发过程的重要性往往被低估了。2023-4-28广东工业大学计算机学院39p16.5 16.5 软件的可靠性软件的可靠性o(1)在规定的条件下,在规定的时间内,软件不)在规定的条件下,在规定的时间内,软件不引起系统失败的概率

34、,该概率是系统输入和系统使引起系统失败的概率,该概率是系统输入和系统使用的函数,也是软件中存在的错误的函数。系统输用的函数,也是软件中存在的错误的函数。系统输入将确定是否会遇到已存在的错误。入将确定是否会遇到已存在的错误。o(2)在规定的时间周期内,在所述条件下程序执)在规定的时间周期内,在所述条件下程序执行所要求的功能的能力。行所要求的功能的能力。2023-4-28广东工业大学计算机学院40 16.5.1 软件可靠性的概念软件可靠性的概念o制造问题、设计错误、元器件过载、机械磨损等原制造问题、设计错误、元器件过载、机械磨损等原因会导致硬件故障。这些故障有些是确定的,有些因会导致硬件故障。这些

35、故障有些是确定的,有些是随机的。硬件故障可以追查到某一个元器件的失是随机的。硬件故障可以追查到某一个元器件的失效或选用不当。效或选用不当。o软件除了磨损故障外,其他几种类似的故障都有可软件除了磨损故障外,其他几种类似的故障都有可能出现。在系统测试过程中,一旦发现故障必须查能出现。在系统测试过程中,一旦发现故障必须查明原因,采取相应措施将其排除。明原因,采取相应措施将其排除。o大型软件是复杂的逻辑产品,采用枚举技术不可能大型软件是复杂的逻辑产品,采用枚举技术不可能对程序运行的所有路径逐个进行测试。投入使用的对程序运行的所有路径逐个进行测试。投入使用的软件很可能残留一定数量的错误。软件很可能残留一

36、定数量的错误。o某些初始条件和输入数据可能导致程序运行失效,某些初始条件和输入数据可能导致程序运行失效,出现所谓出现所谓“软件故障软件故障”。2023-4-28广东工业大学计算机学院41软件可靠性软件可靠性软件可靠性软件可靠性 在某个给定时间间隔内,程序按照规格在某个给定时间间隔内,程序按照规格说明成功运行的概率说明成功运行的概率令令 随机变量随机变量 t 表示程序发生故障的时刻表示程序发生故障的时刻 t0,)f(t)表示表示t的概率密度函数的概率密度函数 F(t)表示分布函数,表示分布函数,P(0tt1)表示从初始时刻到表示从初始时刻到t1时刻程序发生故障的概率。时刻程序发生故障的概率。设初

37、始时刻程序工作正常,设初始时刻程序工作正常,F(0)=0于是,于是,F(t),f(t)满足满足 f(t)=dF(t)/dt (161)从从0时刻开始,到时刻开始,到t1时刻为止程序发生故障的概率时刻为止程序发生故障的概率 Pf(t1)=P(0tt1)F(t1)-F(0)=F(t1)2023-4-28广东工业大学计算机学院42软件可靠性软件可靠性同一时刻程序成功运行和发生故障是两个互斥事件,同一时刻程序成功运行和发生故障是两个互斥事件,0,t区间程序成功运行的概率区间程序成功运行的概率Ps(t)和发生故障的和发生故障的概率概率Pf(t)满足满足 Ps(t)+Pf(t)=1 (162)可靠性可靠性

38、 程序成功运行的概率程序成功运行的概率Ps(t),用用R(t)标记标记 R(tR(t)=)=Ps(tPs(t)=1-)=1-Pf(tPf(t)=1-)=1-F(tF(t)当软件残留错误数量一定时,程序运行时间越长,程当软件残留错误数量一定时,程序运行时间越长,程序发生故障的次数越多,软件可靠性越小。序发生故障的次数越多,软件可靠性越小。tdxxftR0)(1)(2023-4-28广东工业大学计算机学院43软件可靠性软件可靠性故障率函数故障率函数Z(tZ(t)比较程序在不同的时期,或若干个程序在同比较程序在不同的时期,或若干个程序在同一时期软件的可靠性,一时期软件的可靠性,假设假设tt1,t1+

39、t,系统一直系统一直成功运行至时刻成功运行至时刻t,P(t1tt1+t,tt1)是系统在是系统在t1,t1+t出现故障的概出现故障的概率,于是率,于是t1时刻故障率函数的值定义为时刻故障率函数的值定义为 Z(t1)lim P(t1tt1+t,tt1)/t (163)tt 0可以证明可以证明 Z(t)=1/R(t)dF(t)/dt (164)将将 dF(t)/dt=-dR(t)/dt 代入上式代入上式 dR(t)/R(t)-Z(t)dt (165)对上式两边积分并利用初始条件对上式两边积分并利用初始条件 R(0)=1,得可靠性和故障率的得可靠性和故障率的基本方程基本方程 R(t)=exp-Z(x

40、)dx (166)2023-4-28广东工业大学计算机学院44几个常用的故障模型几个常用的故障模型(1)故障率为常数的可靠性模型故障率为常数的可靠性模型 Z(t)=Z(t)为一个复杂的函数,很难计算。为了简化,将为一个复杂的函数,很难计算。为了简化,将它取常数。它取常数。表示单位时间内程序运行的故障率函表示单位时间内程序运行的故障率函数为常数数为常数代入代入 (166)式式 (167)它的可靠性随它的可靠性随t的增加呈指数衰减的增加呈指数衰减。tetR)(2023-4-28广东工业大学计算机学院45几个常用的故障模型几个常用的故障模型(2)Z(t)=kt,其中其中k是常数,是常数,t0当耗损或

41、退化存在时,故障率将随时间的流逝而线性当耗损或退化存在时,故障率将随时间的流逝而线性增加,这种模型一般不适用于软件产品。增加,这种模型一般不适用于软件产品。代入代入(1616)式得式得 (168)硬件和软件产品的故障率函数不会如此简单硬件和软件产品的故障率函数不会如此简单。2/2)(ktetR2023-4-28广东工业大学计算机学院46小结小结o本章主要介绍了软件质量。阐述了软件质量的概念,本章主要介绍了软件质量。阐述了软件质量的概念,介绍了介绍了McCall模型和模型和ISO的软件质量评价模型,的软件质量评价模型,并分析了软件质量特性之间的竞争。接着,为读者并分析了软件质量特性之间的竞争。接着,为读者详细介绍了两个传统的软件复杂性度量方法以作软详细介绍了两个传统的软件复杂性度量方法以作软件评价,分别为件评价,分别为McCabe度量法和度量法和Halstead软软件复杂性度量法。并介绍讲述了软件质量保证的概件复杂性度量法。并介绍讲述了软件质量保证的概念。而且为大家详细讲述了在技术评审与审查中的念。而且为大家详细讲述了在技术评审与审查中的过程、安排、步骤和方向。最后,详细解析了软件过程、安排、步骤和方向。最后,详细解析了软件可靠性的概念。可靠性的概念。2023-4-28广东工业大学计算机学院47

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(16-软件质量.ppt)为本站会员(hwpkd79526)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|