软件质量-软件质量体系教程文件_第1页
软件质量-软件质量体系教程文件_第2页
软件质量-软件质量体系教程文件_第3页
软件质量-软件质量体系教程文件_第4页
软件质量-软件质量体系教程文件_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、软件质量-软件质量管理体系第1节 软件质量定义1.1 什么是软件质量? ISO关于质量的定义表示如下:一个实体的所有特性,基于这些特性可以满足明显的或隐含的需求。而质量就是实体基于这些特性满足需求的实体基于这些特性满足需求的程度程度。 质量定义包含三个要素:实体、特性集合、需求。第1节 软件质量定义u 实体:实体:手机、豆浆机、软件系统等u 实体特性集合:实体特性集合:如豆浆机: 功能:能够榨豆浆、水果汁(苹果、梨、西瓜) 性能:榨一公斤黄豆需要多长时间? 耗能:榨一公斤黄豆耗电量多少? 安全性:榨汁过程中有无人体安全防护措施?有无漏电防护? 可靠性:豆浆机能够持续运行多长时间? 易用性:豆浆

2、机的操作是否简单、方便?第1节 软件质量定义评价实体的质量不能只是从一个角度来说它的质量好还是不好,需要从所有的角度上来综合进行评价。u 如何评价一个软件的质量?如何评价一个软件的质量? 软件有那些特性组成(功能性、可靠性、易用性、效率、维护性等) 评价的标准时什么?是需求。 显式需求:需求说明书上列出的功能需求。 隐式需求:需求说明书上没有列出但在程序运行中不得不处理的需求。如编制系统中控制价字符控制、系统的退出功能等第1节 软件质量定义1.2什么决定软件质量流程、技术、组织是影响软件质量的铁三角,提高软件质量需要从每个方面进行改进,同时还需要兼顾成本和进度。l 流程:流程:从计划到策略的实

3、现,流程就是按照这种思维方式指导软件开发的,并且流程来源于成功的经验,可以指导项目少走弯路,从而提高软件质量,不仅如此,流程还对项目的成本和进度控制有很大的帮助。l 技术:技术:包括分析技术、设计技术、编码技术、测试技术等,需求是项目的灵魂,良好的需求分析便是项目成功的关键所在,若是需求分析做不好不可避免的要出现返工;设计,软件的质量是设计出来的,良好的设计基本上决定了软件产品的最终质量;编码技术产生正确高效的代码;测试是保证软件的一道防线。所以各种技术对质量来说都是很重要的。l 组织:组织:好的组织可以有效的促进流程的实施,同时提供员工的发展通道以吸引更多的人(技术的载体)。第1节 软件质量

4、定义第2节 软件质量管理体系l ISO9000:2000版标准ISO9000不是指一个标准,而是一族标准的统称。 “ISO9000族标准”指由ISO/TC176制定的所有国际标准。TC176即ISO中第176个技术委员会,全称是“质量保证技术委员会”,成立于1979年。1987年更名为“质量管理和质量保证技术委员会”。TC176专门负责制定质量管理和质量保证技术的标准。 ISO9000是ISO/TC176制定的第9000号标准文件。ISO9000标准即是当前国际国内贸易往来及合作中,被作为相互认可的技术基础和确认质量保证能力的依据。 企业推行ISO9000,可以做到:“人人有职责、事事有程序、

5、作业有标准、体系有监督、不良有纠正”。 ISO不具体针对某个行业的质量标准,是普遍适用的质量管理体系。第2节 软件质量管理体系l CMM认证(精髓在于:过程决定质量)CMM是软件过程能力成熟度模型(Capacity Maturity Model)的简称,是卡内基梅隆大学软件工程研究院为了满足美国联邦政府评估软件供应 商能力的要求,于1986年开始研究的模型,并于1991年正式推出了CMM 1.0 版。CMM自问世以来备受关注,在一些发达国家和地区得到了广泛应用,成为衡量软件公司软件开发管理水平的重要参考因素和软件过程改进事实上的工业标准。搜索据了解,美国、印度、日本等国家已有数十家公司通过了C

6、MM不同等级的认证。CMMI(Capability Maturity Model Integration)即能力成熟度模型集成,这也是美国国防部的一个设想,他们想把现在所有的以及将被发展出来的各种能力成熟度模型,集成到一个框架中去。这个框架有两个功能,第一,软件获取方法的改革;第二,建立一种从集成产品与过程发展的角度出发、包含健全的系统开发原则的过程改进。过程能力等级:过程能力等级:1.初始级(不可控)、2.可重复级(可以重复以前的过程)、3.已定义级(标准化)、4.已管理级(定量)、5.优化级(改进)第2节 软件质量管理体系l 6 Sigma(六西格玛)六西格玛(Six Sigma,6 Si

7、gma)是一种管理策略,它可以改善企业质量流程管理的技术,以”零缺陷”的完美商业追求,带动质量成本的大幅度降低,最终实现财务成效的提升与企业竞争力的突破。它是由摩托罗拉提出的。这种策略主要强调制定极高的目标、收集数据以及分析结果,通过这些来减少产品和服务的缺陷。六西格玛背后的原理就是如果你检测到你的项目中有多少缺陷,你就可以找出如何系统地减少缺陷,使你的项目尽量完美的方法。一个企业要想达到六西格玛标准,那么它的出错率不能超过百万分之3.4。 六西格玛计算六西格玛计算:(:(1-缺陷数缺陷数/1000000)*100%如:某一航班到达时间的5点,一年运营200次,55次超过5点。合格率就是72.

8、5%。约为2sigma,要达到6sigma,那么一百万次飞行仅有3.4次晚点,如果航班每天运行一次,则每805年才出现一次晚点。u ISO9126软件质量模型由6个特性,27个子特性组成。这个模型是软件质量标准的核心,今后的测试工作要从这些特性去测试、评价一个软件。第3节 软件质量模型第3节 软件质量模型u 软件质量模型中“内部质量”和“外部质量”的含义 涉及到软件生命周期的质量有以下几种,相互关系如图所示: 过程质量:过程质量:过程设计的完善程度和过程执行的力度。(测量活动:SQA) 内部质量:内部质量:软件开发过程中,中间过程产品的质量。(测量活动:需求分析、概要设计、详细设计、代码评审;

9、单元测试、粒度小的集成测试) 外部质量:外部质量:软件系统作为完整的整体运行时所表现出来的各方面质量特征。(测量活动:系统测试) 使用质量:使用质量:最终用户在真实环境中运行系统所感受到软件各方面特性与其目标的符合程度。(测量活动:验收测试)u 3.1 功能性功能性l功能性功能性当软件在指定条件下使用时,软件产品提供满足明确和隐含需求的功能的能力。适合性适合性软件产品为指定的任务和用户目标提供一组适合的功能的能力。即所提供的功能是用户需要的,用户需要的功能软件系统已提供。(阐述“有没有”)准确性准确性软件产品提供具有所需精确度的正确或相符的结果或效果的能力。即软件除了所要求的功能外,还要求能正

10、确实现所要求的功能。(阐述“对不对”)(如计算器加法测试)互操作性互操作性软件产品与一个或更多的规定系统进行交换的能力。(例如:PC机中WORD和打印机完成打印互通;接口调用网上招标系统与开标系统互操作、标书查看工具)保密安全性保密安全性软件产品保护信息和数据的能力。主要两个方面:A、防止未得到授权的人或系统访问相关的信息或数据;B、保证得到授权的人或系统能正常访问相关信息或数据。功能性的依从性功能性的依从性软件产品遵循与功能性相关的标准、约定或法规以及类似规定发能力。这些标准要考虑国际标准、国家标准、行业标准、企业内部规范等。第3节 软件质量模型u 3.2 可靠性可靠性l可靠性可靠性在指定条

11、件下使用时,软件产品维持规定的性能级别的能力。可靠性的性能指标:平均无故障时间(MTTF)、平均恢复时间(MTTR)、平均失效间隔时间(MTBF)。成熟性成熟性软件产品为避免软件内部的错误扩散而导至系统失效的能力(主要是对内错误的隔离,即内部接口防范),即软件避免自身的错误、自身模块间的错误而导致整个软件的失效。容错性容错性软件防止外部接口错误扩散而导致系统失效的能力(主要是对外错误的隔离,即外部接口防范)易恢复性易恢复性系统失效后,重新恢复原有的功能和性能的能力。包含两个方面:A、原有能力恢复程度;B、原有能力恢复速度。可靠性的依从性可靠性的依从性软件产品遵循与可靠性相关的标准、约定或法规的

12、能力。第3节 软件质量模型u 3.3 易用性易用性l易用性易用性在指定条件下使用时,软件产品被理解、学习、使用和吸引用户的能力。易理解性易理解性用户在使用软件时,系统交互给用户的信息是否准确、清晰、易懂,能帮助用户准确理解系统当前真实状态,指导用户进一步操作。(例如宜宾编制不选招标方式和评标方法时,不能切换到招标文件界面;系统必填项不填时不能生成标书)易学性易学性软件使用户能学习其应用的能力。(例如用户手册是否有中文、帮助文档是否齐全、控件或图标是否有回显功能等)易操作性易操作性软件产品使用户能易于操作和控制它的能力。(快捷键,默认操作,系统安装)吸引性吸引性软件产品吸引用户的能力。这主要考虑

13、的是产品的界面等外在美观因素,这也是一个产品质量很重要的组成部分。(GUI界面测试)可靠性的依从性可靠性的依从性软件产品遵循与易用性相关的标准、约定、风格指南或法规的能力。第3节 软件质量模型u 3.4 效率效率l效率效率在特定条件下,相对于所用资源的数量,软件产品可提供适当性能的能力。时间特性时间特性在规定条件下,软件产品执行其功能时,提供适当的响应和处理时间以及吞吐率的能力。即完成用户的某个功能需要的响应时间。资源利用性资源利用性在规定条件下,软件产品执行其功能时,使用合适的资源数量和类别的能力。例如完成某个功能需要的CPU占有率、内存占有率、通信宽带等。具体的资源类别和软件产品相关,一般

14、要考虑CPU、内存、通信宽带、系统内部的队列资源、消息包等资源。性能场景设计:1、单用户单业务测试 2、多用户单业务测试 3、多用户多业务测试1用户注册请求响应时间、消耗资源 50个用户 50个用户注册 100个用户. 50个用户登录效率的依从性效率的依从性软件产品遵循与效率相关的标准或约定的能力。第3节 软件质量模型u 3.5 可维护性可维护性l可维护性可维护性软件产品可被修改的能力。修改可以包括修正、改进或软件对环境、需求和功能规格说明变化的适应。易分析性易分析性软件提供辅助手段帮助开发人员定位缺陷产生的原因,判断出修改的地方。 (降低定位缺陷的成本)易改变性易改变性软件产品使得指定的修改

15、容易实现的能力。(降低修复问题的成本)稳定性稳定性软件产品避免由于软件修改而造成意外结果的能力。上面这三个特性主要是针对开发需要考虑的特性,主要影响软件的内部质量。易测试性易测试性软件提供辅助性手段帮助测试人员实现其测试意图。(软件发现故障并隔离、定位其故障的能力特性,以及在一定时间和成本前提下进行测试设计、测试执行的能力。)可维护性的依从性可维护性的依从性软件产品遵循与可维护性相关的标准或约定的能力。第3节 软件质量模型u 3.6可移植性可移植性l可移植性可移植性软件产品从一种环境迁移到另外一种环境的能力。适应性适应性软件产品无需作相应变动就能适应不同环境的能力。即软件无需做任何变动就能适应

16、不同运行环境(操作系统平台、数据库平台、硬件平台)的能力。易安装性易安装性尽可能少的提供选择,方便用户直接安装。如果软件由最终用户安装,那么易安装性就可能导致对适合性与易操作性的影响。(安装文本界面、图形向导)共存性共存性软件产品在公共环境中与其它软件分享公共资源共存的能力。(杀毒软件测试)易替换性易替换性软件产品在同样的环境下,替代另一个相同用途的软件产品的能力。(新旧软件的替换)可移植性的依从性可移植性的依从性软件产品遵循与可移植性相关的标准或约定的能力。第3节 软件质量模型第4节 软件质量活动l 软件质量活动有:软件质量保证、度量和测试。 SQA(软件质量保证)和测试的关系: SQA从流

17、程方面保证软件的质量; 测试从技术方面保证软件的质量; 只进行SQA活动或只进行测试活动不一定产生好的软件质量。SQA工作范围:1.保证制度体系;2.使用过程改进;3.指导项目实施;4.增加透明度;5.评审项目活动;6.审核工作产品;7.协助问题解决;8.提供决策参考;9.进行缺陷预防;10.实现质量目标。第4节 软件质量活动l 度量度量 度量的概念:度量的概念: 度量:度量:对事物属性量化表示。 软件度量:软件度量:对软件开发项目、过程及其产品进行数据定义、收集以及分析的持续性定量化过程。 度量的目的:度量的目的: 提高软件生产率,缩短产品研发周期,降低研发成本和维护成本。 提高软件产品质量

18、,提高用户满意度; 为组织持续改进提供量化的指标和反馈。第4节 软件质量活动l 度量度量 度量的作用:度量的作用: 作用作用1:理解:理解通过度量,获得对过程、产品、资源等的理解,确定以后预测的基线和模型。例如:在某软件项目中,工作量、设计文档页数、缺陷总数、遗留缺陷数等都与代码规模存在一定的关系。工作量(人天) =30.5KLOC需求文档规模(页) =4.18KLOC缺陷总数(个) =22.5KLOC遗留缺陷数(个) =0.45KLOCKLOC表示软件产品的千行源代码行数。第4节 软件质量活动l 度量度量 度量的作用:度量的作用: 作用作用2:预测:预测通过度量,可以理解过程、产品、项目各要

19、素之间的关系并建立度量模型,预测就是由这些已知的要素推算、估计其他要素,以便合理分配资源、合理制定计划。以前面的项目为例,假设该项目的代码规模为14KLOC,项目组成人员是5人,由此可以预测:工作量(人天) =30.514=427进度(天) =4275=85.4需求文档规模(页) =4.1814=59缺陷总数(个) =22.514=315遗留缺陷数(个) =0.4514=7第4节 软件质量活动l 度量度量 度量的作用:度量的作用: 作用作用3:评估:评估1、开发活动与计划的符合程度。如工作量估计偏差、进度偏差等。2、产品质量。如软件复杂度、缺陷密度、平均失效时间间隔等。3、新技术的影响。 作用

20、作用4:改进:改进根据得到的量化信息,可与帮助我们识别要因、查找问题的根源,以及提高产品质量和过程效率的其他方法;与以前的量化信息比较,可以验证这些方法是否有效。第4节 软件质量活动l 度量度量 度量的过程:度量的过程: 1、识别目标:、识别目标:根据管理着的不同要求,分析出度量的工作目标,并根据其优先级和可行性,得到度量活动中的工作列表,并由管理者审核批准。 2、根据度量目标,定义度量过程的如下内容:、根据度量目标,定义度量过程的如下内容:收集要素:收集要素:定义收集活动和分析活动所需数据要素与收集表格的形式;收集过程:收集过程:定义数据收集活动的形式、方法、角色及数据的存储和管理;分析分析

21、/反馈过程:反馈过程:定义数据的分析方法和分析报告的反馈形式;IT支持体系:支持体系:定义IT支持的设备和工具,协助数据收集和存储、质量控制、存取控制、初加工、以及生产分析报告。第4节 软件质量活动l 度量度量 度量的过程:度量的过程: 3、数据收集:、数据收集:从项目中收集数据并存储原始数据,并对数据进行质量检查,生成初步的统计数据;在规定的度量活动完成后,输出汇总数据的初步统计结果。 4、数据分析与反馈:、数据分析与反馈:根据汇总数据初步统计结果,按照预定义的分析方法进行数据分析,找到可能的影响质量、进度等属性的要因及可能的改进点;完成规定格式的分析报告,向相关的管理者和项目进行反馈。 5、过程改进:、过程改进:包括软件开发过程开进和软件度量过程改进。前者是根据分析报告,管理者做出决策。后者主要是根据度量活动中所发现的问题,对度量过程做出变更,以提高度量活动的效率,或者更加符合组织的商业目标。第4节 软件质量活动l 度量度量 度量的四个基本项:度量的四个基本项

温馨提示

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

评论

0/150

提交评论