【教学课件】第一部分软件质量与质量保障.ppt

上传人:wuy****n92 文档编号:80438192 上传时间:2023-03-23 格式:PPT 页数:56 大小:465.47KB
返回 下载 相关 举报
【教学课件】第一部分软件质量与质量保障.ppt_第1页
第1页 / 共56页
【教学课件】第一部分软件质量与质量保障.ppt_第2页
第2页 / 共56页
点击查看更多>>
资源描述

《【教学课件】第一部分软件质量与质量保障.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第一部分软件质量与质量保障.ppt(56页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第一部分软件质量与质量保障本章内容:1对软件测试和软件质量的思考一、当今社会对软件质量的高要求二、软件质量问题提出的严重挑战三、解决软件质量为题的途径2软件质量与可靠性概念一、软件质量二、软件可靠性三、软件可靠性模型介绍3软件质量度量一、软件质量度量框架二、IEEE软件度量方法学步骤简介4软件质量保障体系介绍1对软件测试和软件质量的思考一、当今社会对软件质量的高要求1、计算机已无处不在,从生产到生活,从工厂到家庭,从工作到娱乐制造业、农业交通、通信、金融、保险、消防商业、服务业、供电、供水、医疗卫生行政管理、政务、公检法航天、航空、科学研究、军事教育、文化2、在一些领域,软件逐步替代了硬件典型

2、例子:通信领域(20世纪90年代以来)通信企业都是软件企业IC制造;数字模拟代替了物理实验;替代优势替代优势:准确、快速、高效、成本低准确、快速、高效、成本低替代趋势:极为迅猛替代趋势:极为迅猛 用户使用低质量的软件,在运行过程中会产生各种各样的问题,可能带来不同程度的严重后果,轻者影响系统的正常工作,重者造成事故,损失生命财产。软件:软件(software)是计算机中与硬件相结合的一部分,包括程序(program)和文档(document)1对软件测试和软件质量的思考3、对软件质量提出了全方位的要求功能:愈来愈多、范围广性能:愈来愈高,速度、响应、适应性可靠性:稳定可靠安全性:安全运行4、关

3、键软件(Criticalsoftware):关键软件:人员和公众的生命和安全环境质量数据和信息安全关于设备、设施、系统的正常运行社会的正常秩序关键软件的特点:规模庞大大部分为实时、嵌入式高可靠性涉及国家政务、军事国防1对软件测试和软件质量的思考二、严重的挑战软件质量问题1、软件工程技术的发展长期落后于硬件2、软件常常不能满足应用系统提出的需求3、由于软件质量造成的事故屡见不鲜用于F-16的导航软件中的错误使其在飞越赤道时引起飞机翻转;1981年,对航天飞机定时软件的极小改变引起发射失败;1对软件测试和软件质量的思考4、用户对购买的软件质量不满用户对软件质量满意度统计1对软件测试和软件质量的思考

4、三、解决软件产品质量问题的途径从软件测试的角度1、增强软件产品开发的质量意识,重视测试工作的组织2、加强测试人员队伍的建设软件质量和测试人员资格制度加强培训:技术、管理3、软件开发组织中建立独立的测试机构,体现独立测试原则4、对整个软件开发过程实施规范化管理产品质量取决于生产产品所采用过程的过程控制ISO9000,CMM(软件过程成熟度)等5、CMM对软件测试提出的要求(1)选取适用的测试支持工具(2)对软件工程技术人员进行软件测试及其它验证技术的培训(3)对完成的代码实时同行评审和单元测试(4)按项目定义的软件过程进行软件测试(5)按软件过程计划和执行集成测试、系统测试、验收测试(6)收集和

5、分析测试中发现的缺陷数据改正6、CMM中软件质量保证、验证评审和审核提出了更多的要求制定和评审测试标准制定和评审测试标准选用有效的测试方法选用有效的测试方法做到测试的充分性做到测试的充分性建立和使用测试准备就绪准建立和使用测试准备就绪准则则实施回归测试实施回归测试对测试计划、测试规程、测对测试计划、测试规程、测试用例进行评审试用例进行评审对测试计划、测试规程、测对测试计划、测试规程、测试用例进行管理试用例进行管理对测试计划、测试规程、测对测试计划、测试规程、测试用例进行控制试用例进行控制软件测试是保证软件质量的最重要的手段2 软件质量、软件可靠性概念内容:内容:1 1、软件质量、软件质量2 2

6、、软件可靠性概念、软件可靠性概念3 3、软件可靠性模型介绍、软件可靠性模型介绍2 软件质量与可靠性概念软件质量与可靠性概念一、软件质量:一、软件质量:是贯穿软件生存期的一个极为重要的问题,使软件开发过程中所使用的各种开发技术和验证方法的最终体现。软件质量的定义:ANSI/IEEE std 729-1983定义软件质量为:与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体 可从三方面来理解:软件需求是衡量软件质量的基础,不符合需求的软件就不具备质量。规定了的标准是软件开发必须遵循的准则。如果已开发的软件已经满足了那些明文规定的需求,却没有满足那些隐含的需求,那么软件产品的质量仍然是有问

7、题的。2 软件质量与可靠性概念软件质量与可靠性概念二、软件可靠性二、软件可靠性 软件质量的一项重要指标软件质量的一项重要指标 是指“在规定的条件下和规定的时间内,计算机程序完成规定功能(无故障运行)的概率”。什么是Bug:在英语中是“小虫子”的意思,现在泛指计算机中软件或硬件错误。Bug和Debug的由来:Bug之多:微软Windows98操作系统改正了windows95里面5000多个Bug计算机中含有这么多Bug有一个技术原因:软件愈来愈庞大复杂在任何复杂的大系统中,错误是难免的,大型软件尤其难以按期完成国外统计:17万个项目(总投资2500亿美元)6%按期按预算完成;31%中途取消;61

8、%最终完成,但都超出了预算和进度(一大半项目的实际花费超出预算达189%)Bug的确切定义:软件的Bug指的是软件中(程序和文档)不符合用户需求的问题常见的软件Bug分成3中类型:(1)完全没有实现的功能(2)基本实现了用户需要的功能,但在运行时会出现一些功能和性能上的问题;(3)实现了用户不需要的功能,即多余功能。2 软件质量与可靠性概念软件质量与可靠性概念衡量软件可靠性的简单指标:平均失败间隔时间MTBF指两次此相邻失效时间间隔的平均。MTBF=MTTF(平均无故障时间)+MTTR(平均修复时间)MTTF(平均无故障时间):指当前时间(有效)到下一次失败的时间平均MTTR(平均修复时间):

9、指从一次故障产生到故障恢复的时间平均MTTF(平均故障时间)MTTR(平均修复时间平均失败间隔时间MTBF2 软件质量与可靠性概念软件质量与可靠性概念R可靠度:在规定时间内无失效发生的概率。设规定时间为t0,软件发生失效的时间是,R(t0)=P(t0).MTTF即为在时间0-无穷内对R(t0)的积分。2 软件质量与可靠性概念软件质量与可靠性概念由来:由来:通过拥有一个软件可靠性如何随着时间的变化而变化的健壮的模通过拥有一个软件可靠性如何随着时间的变化而变化的健壮的模型,使得管理部门能够通过收集软件确认测试中的数据,制订一型,使得管理部门能够通过收集软件确认测试中的数据,制订一个可靠性目标,并跟

10、踪目标实现的过程。个可靠性目标,并跟踪目标实现的过程。目的:目的:能够用平均故障时间(MTTF)测量和预测软件可靠性确定最佳停止测试和发布软件的时间为权衡测试时间、可靠性、费用和性能指标提供数据定义符合实际的软件可靠性指标三、软件可靠性模型介绍2 软件质量与可靠性概念软件质量与可靠性概念软件可靠性模型目前有40多种(常用10多种)可靠性建模是可靠性估计过程的基础,它确定产品是否达到了可靠性指标,是否可以发行。目前比较流行的有:Jelinski-Moranda的故障分离模型Goel-Okumoto的NHPP模型非齐次泊松过程模型黑盒测试:Musa的基本执行时间模型增强的NHPP模型(广义泊松模型

11、)Littlewood-Verrall的贝叶斯判定模型Krishna-murthy和Mathur的基于路径的模型白盒测试Gokhalaetal.的基于状态的模型3软件质量度量有许多因素影响软件质量可直接度量的因素把影响软件质量的因素分为两类只能间接度量的因素不管哪一类,必须能够度量,构成了软件质量度量体系。IEEE有关软件质量度量方法学的标准1061-1998一、软件质量度量框架软件质量度量框架:一组用来组织、选择、沟通、评价软件系统要求的质量属性的辅助决策法,他逐层分解为特性、子特性和度量。质量特性:一个与质量有关的面向管理的软件属性;质量子特性:质量特性分解出来的技术组件直接度量:一种不依

12、赖于其他属性测量的度量;预计度量:一种适用于开发阶段的度量,它用来预计软件质量特性的值;软件质量度量:一个函数,它的输入是软件数据,输出是一个单一数值,它可解释为给定的软件属性对其质量的影响程度;过程度量:一种用来测量在软件系统开发、实现和维护过程中使用的方法、技术和工具特性的度量产品度量:一种用来测量软件开发过程中任何中间或最终产品特性的度量。软件质量度量框架与质量需求相关联的质量特性与质量特性相关联的质量子特性直接度量例子二、IEEE软件度量方法学步骤1.确定软件质量需求2.确定软件质量度量3.实施软件质量度量4.分析软件质量度量5.确认软件质量度量直接度量文档分析软件质量度量结果在数据收

13、集过程中,要根据工程总的软件质量需求对度量结果进行分析。要识别出哪些与目标值不一致的度量以便做进一步的分析。根据分析结果,有些可能需要重新设计或者记录,有些可能需要对文档进行补充,有些可能需要做一些补充测试。在某些情况下,若度量值只稍微超出目标值,并且认为是非关键度量,也可不做改动。Grady和Caswell在HP公司实施软件度量程序的10个步骤1.定义软件度量程序的目标2.明确责任3.开展调查4.定义要收集的初始度量5.推荐这些度量的初始样本6.获取用于自动数据收集和分析的工具7.进行软件度量培训8.宣传成功事例9.建立度量数据库10.以有序方式建立一个改进此过程的方法三、验证度量复杂度度量

14、缺陷度量产品度量过程度量度量-复杂度复杂度是与质量子特性正确性和质量特性可维护性相关联的一个直接项测量通过对本组织编制的源程序代码做大范围的复杂度抽样测试,就可以建立一个复杂度基线,可以用来确定:代码审查的候选模块对哪一部分进行重新设计可能是恰当的?需要附加文档的部分可能附加测试的部分度量-复杂度-方法McCabe圈(环)复杂度度量使用程序控制流程结构作为其复杂度相对的测量圈复杂度E-N+2PE=边的个数(或控制转移次数)P转入程序中的控制路径个数N=节点个数(顺序语句组只包含一个控制转移)度量-复杂度-方法Halstead的软件科学基于程序大小测量程序复杂度的算法1=程序中不同操作符的个数2

15、=程序中不同操作数的个数3=程序中操作符出现的总数4=程序中操作数出现的总数程序词汇量:=1+2度量-缺陷度量缺陷度量是通过收集审查总结报告而得到。根据缺陷类型(即逻辑、接口、数据定义、文档)、缺陷改进起因和缺陷严重性对这些度量进行分类,将能够确定软件开发过程中需要改进的地方。通过对模块进行缺陷跟踪,缺陷度量有助于软件验证和确认活动,它能够发现需要重新设计或者做附加测试的候选模块,也能够潜在识别哪些需要在软件工程实践方面需要进一步培训的软件工程师。度量-产品度量产品度量是测量,这些测量代表了组织已开发出的产品的情况。例子:在需求、设计、编码和测试审查阶段发现的缺陷的类型和数量;交付的文档页数新

16、增代码的行数修改的代码行数交付的代码总行数交付的所有模块的平均复杂度模块的平均大小模块的总数单元测试发现的缺陷总数集成测试发现的缺陷总数确认测试发现的缺陷总数度量过程度量过程度量反映过程的效率。例子:平均查找修改时间每一次审查花费的人/小时数每KLOC花费的人/小时数每一次审查发现的平均缺陷数在审查期间发现的每一类缺陷的个数平均修改次数被审查模块的平均数制定度量计划测量应是健全的;测量应建议一个基准测量应涉及特定的产品和过程属性;测量应建议一个改进策略测量应是软件开发过程固有的结果测量应简单测量应可预测和可跟踪测量不应该用来作为评价个人实绩的一部分。四、确认度量时间测量测试覆盖测量质量度量时间

17、测量查错修改周期测量累积测试时间测试覆盖度量代码覆盖1.段覆盖2.调用对需求覆盖质量度量缺陷改正百分比每一个基线报告的缺陷缺陷检测效率五、小结度量软件质量度量测量符合基本的软件质量改进原则,测量能够作为一个杠杆推动软件过程的改进,然而,除非以建立了积极的质量改进计划和目标,否则不会发生任何改进,重要的是,这些改变必须量化;区分“变化”和“改进”是非常重要的。改进是基于测量而言的,而变化是基于感觉而言的,只有通过测量,你才能知道一个“变化”变成了一个“改进”。测试确认的测量是改进这些活动有效性的基础,这些测量应该用来帮助确定过程改进,进而提高确认测试投资的回报。4 软件质量保障体系软件质量保障体

18、系1、SQA计划计划2、ISO9000质量保证体系质量保证体系3、CMM模型简介模型简介4、小结、小结一、一、SQA计划计划(1)由由SQA小小组组和和项项目目组组共共同同制制定定的的“SQA计计划划”为为建建立立软软件件质质量量保保证证提提供供了了“行行动动指指南南”,规规定定了了每每个个软软件件项项目目中中的的SQA活动的模式。活动的模式。一、一、SQA计划计划(2).计划的目的计划的目的.标准、实践和约定标准、实践和约定.测试测试.参考文献参考文献1.1.目的目的.问题报告和改正行动问题报告和改正行动.管理管理2.2.约定约定.工具、技术和方法学工具、技术和方法学1.1.组织组织.复审和

19、审计复审和审计.代码控制代码控制2.2.任务任务1.1.目的目的.媒体控制媒体控制3.3.责任责任2.2.需求复审需求复审.供应商控制供应商控制.文档文档b.b.设计复审设计复审.记记录录收收集集、维维护护和和保保留留1.1.目的目的c.c.软件验证和确认复审软件验证和确认复审.培训培训2.2.所所需需的的软软件件工工程程文档文档d.d.功能复审功能复审.风险管理风险管理3.3.其它文档其它文档e.e.物理审计物理审计f.f.过程内部审计过程内部审计g.g.管理复审管理复审二、二、ISO9000ISO9000质量保证体系质量保证体系(1)(1)ISO 9000以一般术语描述了一个质以一般术语描

20、述了一个质量保证系统的要素量保证系统的要素 这些要素包括用于实现质量计划、这些要素包括用于实现质量计划、质量控制、质量保证和质量改进所需的质量控制、质量保证和质量改进所需的组织结构、规程、过程和资源。组织结构、规程、过程和资源。二、二、ISO9000ISO9000质量保证体系质量保证体系1、概述ISO9000质量标准是一种广泛采用的国际标准,它是由国际标准化组织(InternationalStandardsOrganization,ISO制定);ISO9000质量标准受英国质量标准(BS5770)的影响,最早发布在1987年,在1994年修订;ISO9000质量标准可以应用于各类行业,包括制造

21、业、软件业和服务业;ISO9000质量标准被认为是一个重视质量的组织应该满足的一种最低限度的标准,很多组织要求其转包商(subcontractor)通过ISO9000认证。ISO9000质量标准的最新修订版是ISO9000:2000,是对1994版的一次重大的提高,它把重点放在客户满意度和持续改进上,并包括一个过程模型。ISO9000质量标准的1994版强调定义工作规程,而新标准则强调过程。二、二、ISO9000ISO9000质量保证体系质量保证体系2、ISO9000的动机提高公司信誉ISO9000认证带来的销售利益表明客户满意度和质量是公司的核心价值表明公司致力于持续改进表明公司在产品开发中

22、的质量计划生产出更高质量的软件标明“防火”文化是适当的,而不是“救火”文化重点是从问题中吸取教训一个更有能力和更有效的组织更为忠实的客户保护公司免遭起诉。ISO9000提供了一个改进架构或改进模型。减少有缺陷产品的返工机会诗作之内的士气提高记录在案的ISO9000要求提供了证明公司已经采取了所有合理的措施的证据二、二、ISO9000ISO9000质量保证体系质量保证体系3、ISO9000和质量组ISO9000标准把责任放在管理人员和员工身上,质量组在标准的实施中通常起着关键的作用。软件质量保证组(SoftwareQualityAssurance,SQA)的职责二、二、ISO9000ISO900

23、0质量保证体系质量保证体系4、ISO9000:1994版ISO9000:1994版标准由一组标准和如何应用这些标准的方针组成,应用于制造业、服务业和软件业。ISO9000标准的集合ISO8402质量管理/保证词汇表ISO9000-1选择和使用ISO9000的指导方针ISO9000-2应用ISO9001/9002/9003的指导方针ISO9000-3在软件中应用ISO9001的指导方针ISO9000-4对资源进行规划、组织和控制,以生产可靠产品的指导方针ISO9001用于产品/服务的设计、开发、测试、安装和维修的ISO标准ISO9002用于生产、安装和维修的ISO标准(9001的一个子集)ISO

24、9003用于最终审查和测试的标准(ISO9001的一个子集)ISO9004-1实施质量体系的指导方针ISO9004-4持续改进的指导方针二、二、ISO9000ISO9000质量保证体系质量保证体系ISO9001:1994 版的条款版的条款20项条款项条款管理责任;管理责任;质量系统;质量系统;合同复审;合同复审;设计控制;设计控制;文档和数据控制;文档和数据控制;采购;采购;对客户提供的产品的控制;对客户提供的产品的控制;产品标识和可跟踪性;产品标识和可跟踪性;二、二、ISO9000ISO9000质量保证体系质量保证体系过程控制;过程控制;审查和测试;审查和测试;审查、度量和测试设备的控制;审

25、查、度量和测试设备的控制;审查和测试状态;审查和测试状态;对不符合标准产品的控制;对不符合标准产品的控制;改正和预防行动;改正和预防行动;处理、存储、包装、保存和交付;处理、存储、包装、保存和交付;二、二、ISO9000ISO9000质量保证体系质量保证体系质量记录的控制;质量记录的控制;内部质量审计;内部质量审计;培训;培训;服务;服务;统计技术统计技术二、二、ISO9000ISO9000质量保证体系质量保证体系5、ISO9000:2000版ISO9000:2000标准比1994版的标准简单,它只有3个标准:即ISO9000:2000,ISO9001:2000,ISO9004:2000.(1

26、)ISO9000标准包括质量管理体系的基本原则和词汇表。(2)ISO9001标准规定了质量管理体系的要求,它应用于制造业、软件业和服务业。标准中有一个定义好的简单过程模型,重点是度量、持续改进和客户满意度。(3)ISO9000位性能改进提供了一个指南,并有助于组织实施这个标准。他包括一个简单的自我评估方法,允许组织通过这个方法来测定它针对这个标准的当前成熟度。二、二、ISO9000ISO9000质量保证体系质量保证体系ISO9000:2000标准条款和1994版有20个条款相比,2000版只有5个条款。标准更友好、更具逻辑性。ISO9000:2000标准质量管理体系本条款指的是质量管理体系的文

27、件和实施资源管理本条款涉及的是质量管理体系所需资源的供应产品或服务的实现实现产品或服务的过程供应管理职责管理人员在质量管理体系的实施中所担负的职责度量、分析、改进建立度量程序、以度量质量管理体系的性能,从而确定改进三、三、CMM模型简介模型简介CMMCMM是是 软软 件件 过过 程程 能能 力力 成成 熟熟 度度 模模 型型(Capability Capability Maturity Maturity ModelModel)的的简简称称,是是卡卡内内基基梅梅隆隆大大学学软软件件工工程程研研究究院院(SEI)(SEI)为为了了满满足足美美国国联联邦邦政政府府评评估估软软件件供供应应商商能能力力

28、的的要要求求,于于19861986年年开开始始研研究究的的模模型型,并并于于19911991年年正正式式推推出出了了CMM CMM 1.0 1.0 版版。19861986年年1111月月,SEISEI应应美美国国联联邦邦政政府府的的要要求求,在在MitreMitre公公司司的的协协助助下下,于于19911991年年总总结结了了CMMCMM成成熟熟度度框框架架和和初初版版成成熟熟度度问问卷卷的的实实践践经经验验,并并以以此此为为基基础础推推出出民民用用CMM1.0CMM1.0版版。19921992年年4 4月月SEISEI在在广广泛泛听听取取200200名名富富有有经经验验的的软软件件专专家家的的意意见见之之后后,又又于于19931993年年推推出出CMM1.1CMM1.1版版。这这也也是是目目前前世世界界上比较流行和通用的上比较流行和通用的CMMCMM版本。(版本。(1.21.2版)版)4 小结小结SQA计划计划ISO9000质量保证体系质量保证体系CMM模型简介模型简介

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com