软件工程课件08_2_第1页
软件工程课件08_2_第2页
软件工程课件08_2_第3页
软件工程课件08_2_第4页
软件工程课件08_2_第5页
已阅读5页,还剩122页未读 继续免费阅读

下载本文档

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

文档简介

第8章软件品质和品质保证,2020/6/13, 二、二、商品目录、 8.1软件质量的定义8.3软件质量的保证战略8.4软件质量的保证活动8.5软件审查8.6软件质量保证的标准8.7结构化软件测试8.8面向对象的软件测试8.9软件测试计划和测试分析报告8.10软件维护200 13、3、8.1软件质量的定义,ANSI/IEEEStd729-1983定义软件质量是软件产品满足规定和隐含需求的能力的全部特征和特性。 M.J.Fisher定义了软件质量:描述计算机软件优秀程度的所有特性的组合。2020/6/13、4、8.1软件质量的定义、软件质量反映三个方面的问题:软件的需求是测量软件质量的基础,在各种标准中定义几个开发标准,让软件人员以工程方式开发软件在很多情况下,没有明确提出隐含的需求。 软件质量是各种特性的复杂组合。 它根据应用而不同,根据用户提出的质量要求而不同。 2020/6/13,7,7, 7、5、8.2影响软件质量的因素、影响软件质量的因素的正确性:鲁棒性:效率:完整性:可用性:风险:2020/6/13,6,8.2影响软件质量的因素的理解性:维护性:灵活性:可测试性:可移植性:相互7 8.2影响软件质量的因素是,软件质量应遵循的原则应该强调软件整体质量,而不应该单方面强调软件的正确性,其可靠性和可靠性、可用性和效率等应该在软件工程化生产的整个周期的各个阶段注意软件质量应该指定软件质量标准,定量评价软件质量,不仅要定性评价软件质量,而且不要把软件产品的评价与评价结合起来,走上以测量为中心的科学轨道。 审查2020/6/13、8、8.3软件质量保证战略,在软件生命周期各阶段结束前,正式使用终止标准对该阶段生产的软件组件进行严格的技术审计。 审查小组的组成:组长、作者、两位评委。 审查程序:S1:计划:组织审查组、分发资料、安排日程等. S2:概况介绍:项目大时考虑作者介绍的概况。 s :是:审查人员阅读资料取得相关项目知识的S4:审查会:发现和记录错误S5:再加工:修正发现的问题S6:审查:判断再加工是否解决了问题。 研究2020/6/13、9、8.3软件质量的保证策略,管理复审将检查现有资料,判断特定阶段的工作是否可以开始。 管理复审的开发组织和使用部门的管理者提供项目的整体情况、成本和进展情况等情况,从管理的角度审查开发工作。2020/6/13、10、8.3软件质量保证策略、测试是在已知环境中用已知输入动态运行系统和系统的“部件”。 测试流程的基本文件:测试计划(包括单元测试和集成测试):确定测试的范围、方法、所需资源等。 测试步骤:详细说明与各测试方案相关的测试步骤和数据,包括测试数据和预期结果。 测试结果:必须记录每次测试运行的结果,如果运行错误,则必须生成问题报告并解决在调试中发现的问题。 2020/6/13、11、8.4软件质量保证活动,质量保证是复审、开发方法、配置控制和程序测试的综合应用。 软件开发方法要重新审查规定的“软件开发规范”计划和开发时期各阶段的工作,各阶段生成的文件要严格管理,确保文件和程序的完整性和完整性,继续程序各级测试。 2020/6/13,12,8.4软件质量保证活动,验证和验证是为了确定开发期间某一阶段的产品是否达到了其要求。 确认了在开发结束时所开发的软件是否满足软件的需要的综合评价。具体来说,验证在开发时期的各阶段进行的复审和测试活动中包含的确认,主要是指测试阶段的确认测试和检查时的系统测试等活动。 2020/6/13,13,8.4软件质量保证活动,开发时期的配置管理软件配置包括生存期间各阶段生成的文件和程序。 这些文档和程序也称为阶段产品,因为它们是随着软件开发过程而逐渐生成的。 配置管理的中心思想:在软件开发过程中,开发者有权对这一阶段的产品进行变更,一旦阶段的产品通过再审,就必须交给配置管理员进行管理,任何人(包括做这个文件的人)需要变更时,必须经过正式的批准手续“软件工程”术语中,每个阶段的产品审查时间都是基准,在基准前更改自由,在基准后严格管理。 2020/6/13、14、8.5软件的审查、审查是以提高软件质量为目的的技术活动。 质量用户满意度。 两个必要条件: (1)程序规格表满足用户的要求(设计质量),程序在设计规格表规定的情况下正确执行。2020/6/13、15、8.5.1设计质量的审查内容,设计质量的审查对象有需求分析阶段产生的软件需求规格说明、数据要求规格说明、软件概要设计阶段产生的软件概要设计说明书等。 通常从12个方面进行审查。 2020/6/13、16、8.5.1设计质量的审查内容、1 .评价软件的规格说明是否符合用户要求的规格说明,用户在设计规格说明中明确各设计结果是否与用户协商,并同意是否调查了与行业其他部门相同的软件, 比较是否充分分析了使用的类似软件的结果,需求规格的说明是否得到用户或部门上级的认可,软件的概要设计规格的说明和整体设计思想和设计方针是否明确,2020/6/13,17, 8.5.1是否提到了设计质量的审查内容2 .审查的可靠性用户是否明确了对可靠性的要求和对输入错误的处理功能对硬件故障的处理功能软件故障的处理功能,2020/6/13,18,8.5.1设计质量的审查内容3 .审查秘密措施的实现情况是有检查系统使用资格的功能还是有在特性数据使用资格上检查特殊功能使用资格的功能? 有记录上述使用状况的功能吗? 检测到违反使用资格后,能否向系统管理员报告信息? 有加密系统中重要数据的功能吗? 2020/6/13,19,8.5.1设计质量的审查内容,4 .审查操作特性的实施情况操作命令和操作信息的有效性输入数据和输入控制文的有效性输出数据的有效性响应时间的有效性,2020/6/13,20,8.5.1设计质量的审查内容,5 .性能实现情况性能设计首先包括性能目标值:目标值的有效性:性能目标设定条件的合适值性能的评价方法,2020/6/13,21,8.5.1设计质量的审查内容,6 .检查软件的维护性故障的功能:获取分析数据的功能区分问题原因的功能:故障修正的方法:2020/6/13, 22 8.5.1设计质量的审查内容,7 .扩展性扩展性别的想法:模块的通用性:2020/6/13,23,8.5.1设计质量的审查内容,8 .兼容性:软件功能被扩展后,功能可以直接使用的特性。审查软件扩展对运行环境的影响:软件结构上对可扩展性的稳定性、2020/6/13、24、8.5.1设计质量的审查内容、9 .审查软件的可移植性.在将软件移植到不同的运行环境时,修改标准那个标准是不容易受到运行环境影响的软件界面把应用部分和其他部分的接口部分分开了吗? 向新的运行环境移植性软件的大小和区分的适当性,2020/6/13,25,8.5.1设计质量的审核内容,10 .可测试性可测试性是能够充分、有效地进行全面测试以保证软件质量的特性。 检查标准情况:设计标准与检查标准的对应关系限定了变化的影响范围,分析故障的主要原因,分析检查工作是否容易修改,2020/6/13,26,8.5.1设计质量的审查内容,11 .审查软件的多重性是否具有充分的可移植性功能,2020/6/1 27 8.5.1设计质量的审查内容,12 .审查软件的互连性满足互连性的必要条件,与其他软件共同的接口及其接口部分模块化,容易变更。 与其他软件应用程序共同的接口和其他软件的接口部分应该被模块化,2020/6/13、28、8.5.2程序质量的审查内容,程序质量的审查与软件自身的结构、执行环境的2020/6/13,29,8.5.2程序质量审查内容,1 .软件结构(1)功能结构:功能结构是联系用户和开发者的规格说明,软件功能的本质是将输入信息转换为输出信息。 检查项目:数据结构:包含数据名称的定义构成此数据的数据项目数据与数据项目的关系功能结构:包含功能名称的定义构成功能的子功能的数据结构与功能结构的对应关系:包含数据要素与功能要素的对应关系的数据结构与功能结构的一致性。 2020/6/13,30,8.5.2程序质量的审查内容,1 .软件结构(2)功能的通用性:在软件的功能结构中,某些功能有时作为通用功能多次出现。 检查项目:抽象数据结构:抽象数据构成要素的定义,包括抽象数据的名称和定义。 抽象功能结构:2020/6/13,31,8.5.2程序质量的审查内容,1 .软件结构(3)模块层次:模块层次是指程序模块的结构。 检查项目:模块层次:与功能层次的对应关系:2020/6/13,32,8.5.2程序质量的审查内容,1 .软件结构(4)模块结构:模块的动态结构,分为处理模块和数据模块, 检查项目:流程结构流程结构控制模块结构与功能结构的对应关系的各模块的定义,2020/6/13,338.5.2程序质量的审查内容,1 .软件结构(5)处理过程的结构:处理过程是指模块被分成最下层的那些模块检查项目:要求模块的功能结构和实现这些功能的处理过程的结构,必须明确地对应要求控制流结构化的数据结构和控制流的对应关系,是术语的标准化。 2020/6/13、34、8.5.2程序质量审查内容,2 .与运行环境的接口运行环境包括硬件、其他软件和用户。 与驾驶环境的接口必须理想地设计,预见环境的变化。 主要检查项目:与其他软件的接口:与硬件的接口:与用户的接口: 2020/6/13,35,8.6软件质量保证标准,1.ISO质量保证模式ISO9000质量保证模式是企业相互连接的过程为了使质量体系符合ISO标准,这些过程必须与标准中记载的领域相对应并记录说明。 ISO9000用一般术语描述质量保证系统的要素。 这些要素包括质量计划、质量管理、实现质量保证和质量改善所需的组织结构、规章、流程和资源。、2020/6/13、36、8.6软件质量保证的标准,2.ISO9001标准ISO9001是适用于软件工程的质量标准。 2020/6/13,37,8.6软件质量保证的标准,ISO9001中记载的20件需求:1.管理责任2 .质量体系3 .合同的审查4 .设计管理5 .文件和数据管理6 .购买7 .客户提供的产品的管理8 .产品的显示和跟踪性9 .流程管理10 .审查和8.6软件质量保证的标准11 .审查、测量和测试设备的控制12 .审查和测试状态13 .对不合格产品的控制14 .纠正和预防行动15 .处理、储藏、包装、保存和交付16 .质量记录的控制17 .内部质量审计18 .培训19 .服务20 .统计技术, 8.6软件质量保证的标准,软件组织必须通过ISO9001,针对前面的各种需求建立相关政策和过程,并有能力表明组织活动确实是按照这些政策的过程进行的。 2020/6/13,40,8.7结构化软件测试,测试的目的:确保软件质量,并不证明软件没有错误,而是尽可能地找到和纠正软件错误。 测试范围:软件的整个生命周期。 测试工作量:占软件开发总成本的40%到50%以上,寻找错误,2020/6/13,41,8.7.1软件测试的概念和原则,1 .测试的概念软件测试:软件计划,软件设计,软件寻找错误的过程称为测试,纠正错误的过程称为调试。 2020/6/13,42,8.7.1软件测试的概念和原则,程序测试:随着程序设计概念的出现而流行的概念。 这是一个代码执行活动,用于查找编码阶段的语法错误、语义错误和执行错误。 用于检测编码错误的代码执行活动称为程序测试.也称为程序测试。 纠正编码过程中的错误称为程序调试. 程序测试的目的是发现编码错误,纠正编码错误,保证算法的正确实现。 2020/6/13,43,8.7.1软件测试的概念和原则,软件确认和程序确认:软件确认是广义的软件测试,是一系列试图证明程序软件在给定外部环境下的逻辑正确性的活动和过程,要求说明书的确认,以及程序确认包括静态确认和动态确认。 静态分析包括正确性证明、手动分析和静态分析。 动态分析包括动态确认和动态测试。2020/6/13、44、8.7.1软件测试的概念和原则、静态分析不是程序本身,而分析程序正文可能引起错误的异常情况。 动态分析执行对象程序、执行结果分析程序可能发生的错误。2020/6/13、45、8.7.1软件测试的概念和原则、各种软件错误的出现比例:功能错误、软件错误整体的27%、需求分析设计不完全引起的系统错误、16%、整体设计错误引起的数据错误、10%、编码程序员编码错误引起的其他错误,16%,文档错误和硬件错误引起的2020/6/13,46,8.7.1软件测试的概念和原则,2 .测试过程的软件配置,被测试的文件,例如软件测试配置是指测试计划、测试用例、测试程序等文件。 测试

温馨提示

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

评论

0/150

提交评论