




已阅读5页,还剩70页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件质量保证,教材软件质量保证,G.GordonSchulmeyer等,机械工业出版社参考书目软件质量工程,洪伦耀等,西安电子科技大学出版社,教学目的,编写合格的程序和文档树立良好的质量意识,教材目录,第1章软件质量保证第2章软件质量保证在各类软件开发中的作用第3章质量专家谈软件质量第4章软件质量保证的标准化第5章软件质量计划组织第6章有效实施SQA的人员需求第7章美国质量协会软件质量工程师认证大纲,第8章软件质量的成本第9章审查前期软件质量保证技术第10章软件配置管理第11章软件质量保证中的Pareto原理第12章理解CMM和SQA在软件开发成熟度中的作用第13章SEICMM5级波音公司第14章CASE工具第15章软件质量保证的度量第16章SQA在关键任务软件中的实际运用第20章软件可靠性管理,主要内容,软件质量,软件质量保证,软件质量控制技术,软件质量度量技术,软件质量可靠性,软件质量保证的相关应用,第一章引言,背景,质量,软件质量,软件中的差错,软件质量保证的相关术语,目录,背景,质量,软件质量,软件中的差错,软件质量保证的相关术语,背景,软件与硬件的区别,软件并非有形存在,软件是人的大脑的智力活动的产物,是人的逻辑思维的产品,IEEE对软件的定义:计算机程序、规程,以及与运行计算机系统可能需要的相关文档和数据,软件容易更改,但也更容易引入错误,软件更改后(包括引入的错误)的影响会迅速传播,就当前的普遍情况来说,几乎不存在软件质量的度量,软件有比硬件高得多的复杂性,硬件有齐全的设计图纸、技术资料。硬件是由机器生产的,有实物可以对照。硬件早就在工厂进行了工业化生产:设计人员设计出图纸、生产程序;工人按图纸和规定的程序生产出产品;检验人员用设备和仪器检查产品是否满足要求,软件危机软件工程,31%,53%,16%,开发成功,进度拖延,取消开发,软件危机,软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。主要是两个方面的问题:如何开发软件怎样满足对软件日益增长的需求如何维护软件数量不断膨胀的已有软件,2软件危机的内涵:,(1)软件开发成本和进度的估计常常很不准确(2)用户对已完成的软件系统不满意的现象经常发生(3)软件产品的质量往往靠不住(4)软件常常是不可维护的(5)软件通常没有适当的文档资料(6)软件成本在计算机系统总成本中所占的比例逐年上升(7)软件开发生产率提高的速度远远跟不上计算机应用迅速及深入普及的速度,我国软件产业的现状,软件产业,操作系统,应用软件,系统集成,国内目前的状况是应用软件以及系统集成公司比较多,软件产品主要集中在一些管理软件、财务软件等基于数据库应用的软件、教育软件、杀毒软件及一些中文平台的开发上,而在利润丰厚、应用广泛的基础软件如操作系统、数据库管理软件等,基本上无所作为。,软件本国提供率:中国1/3左右,美国97%,软件人才结构不合理,缺乏中高级软件人才,软件人员缺乏软件工程化的概念,软件人员没有软件质量的意识,软件质量问题是本课程讨论的中心问题,关于软件质量的一些结论,软件产品的质量是在开发中构造入产品的,是后天加不进去的,在软件开发期间,不采用软件工程方法及行之有效的软件工程标准、程序和技术,可能产生大量软件差错和缺陷;真正符合质量要求的产品释放时间反而会更加推迟,在软件质量管理、控制和质量保障方面的投入,一般只占项目总经费的百分之几,但这种投入从总体效果(差错和缺陷减少、问题解决得早而及时、无返工、产品质量提高等)上看,往往能得到高于投入10倍或更高的回报,目录,背景,质量,软件质量,软件中的差错,软件质量保证的相关术语,什么是质量,仁者见仁,智者见智,在哲学上,对质量的任何解释只有对与错两种可能。哲学解释过程是一个分析过程,这个过程把事物分解成主题和论断。但我想说的是,质量是不能分解成主题和论断的。这并不是质量神秘,而是因为质量太简单、直接、明了R.M.PirsigZenandtheArtofMotorcycleMaintenance,如果质量存在于物体之中,那么为什么科学仪器不能直接测出质量来。另一方面,如果质量是主观的东西,即仅存在于观察者的意识中,那么质量仅仅是吸引人的词而已,质量不是客观的,它不属于物质世界,质量不是主观的,它不仅存在于人们的脑海中,DavidGarvin的观点,DavidGarvin研究了如何在哲学、经济学、市场以及生产管理等不同领域理解质量。结论是“质量是一个复杂的多层面概念”,可以从以下5个方面来描述:,从先验论的角度看,质量是可以识别出来,但不能明确定义的,从用户的角度看,质量是对目的的满足程度,从制造的角度看,质量是对规范的符合程度,从产品的角度看,质量是产品的内在特征,从基于价值的角度看,质量依赖于客户愿意付多少钱购买,J.M.Juran的观点,Juran认为,“质量”这个词有许多含义,是一个“不合格的词,因此使用不当是有风险的。,满足使用要求的基础是质量特征。产品的任何特性(性质、属性等),材料或满足使用要求的过程都是质量特征,ISO:质量的基本概念,质量(广义质量概念):反映实体(产品,过程或活动等)满足明确的或隐含的需要的能力特性总和(Thetotalityofcharacteristicsofanentitythatbearonitsabilitytosatisfystatedorimpliedneeds),ISO:质量的基本概念,含义一:实体,承载质量属性的具体事物。产品:提供各种享用功能的有形实物过程:带来某种享受服务活动:在生产产品或提供服务中所开展的工作,含义二:满足用户需求的能力特性总和,表明质量高低并不取决于“实体”的各种能力特性是否最好,而只要满足需求(明确的和隐含的)即可,含义三:不同实体,质量实质内容不一样产品:指产品能够满足用户使用要求所具备的功能特性服务:指服务满足顾客期望的程度活动:由工作结果来衡量,质量理念的演变历史,在20世纪质量管理的发展历程经历了质量检验、统计质量控制和全面质量管理三个阶段。其中,质量理念也在不断的演变。有这么几个阶段:符合性质量适应性质量满意性质量,符合性质量概念,符合标准就是合格的质量,符合程度反映了产品的一致性,符合性包括产品和过程两个方面,标准有合理与不合理之分,不合理的标准即使百分之百的满足也不能认为质量就好,标准往往不能将客户的各种需求和期望都规定出来,特别是隐含的需求与期望,软件项目开发中需求管理的例子,适用性质量概念,产品在使用时能够成功地满足用户需求的程度从使用要求和满足程度两方面去定义质量,质量理念的发展:符合性质量,符合性质量,20世纪40年代,以符合现行标准的程度作为衡量依据,“符合标准”就是合格的产品质量,符合的程度反映了产品质量的水平。,质量理念的发展:适应性质量,适用性质量,20世纪60年代,适合顾客需要的程度作为衡量的依据,从使用的角度定义产品质量,从“符合性”到“适用性”,反映了人们在对质量的认识过程中,已经开始把顾客需求放在首要位置,质量理念的发展:满意性质量,满意性质量,20世纪80年代,质量管理进入到TQM阶段,将质量定义为“一组固有特性满足要求的程度”。它不仅包括符合标准的要求,而且以顾客及其他相关方满意为衡量依据,体现“以顾客为关注焦点”的原则。,本书的定义,IEEEStandardGlossaryofSoftwareEngineeringTerminology:质量是系统、部件或过程满足(1)明确的需求,(2)客户或用户需要或期望的程度,产品质量的性质,(1)一个产品质量的好与坏不是绝对的。对同一个产品而言,不同的用户,不同的使用环境,有不同的质量需求,(2)构成质量的诸因素往往不是互相独立的,有的具有正向性的关系,而有的则互相冲突。对于具有正向性关系的那些质量因素,一个提高了品质,另一些也会受益;而对于那些互相冲突的质量因素,则要进行折中的考虑,(3)构成质量的诸因素并不具有同等的重要性。一个产品的质量关系到该产品是否能够被用户所接受,当产品的质量受到代价、人力、时间等的限制时,应该确认那些最重要的因素,而放宽次要的因素,(4)质量必须在一定的前提下衡量。在许多情况下,不能脱离实际情况和代价来要求一个产品的高质量,(5)产生质量问题的根源是产品在设计、生产过程中的缺陷和差错。软件产品的质量也具有上述特性。认识这些特性,在软件质量管理和度量的研究中将起到重要的作用,目录,背景,质量,软件质量,软件中的差错,软件质量保证的相关术语,什么是软件,计算机程序、规程,以及与运行计算机系统需要的相关文档和数据,计算机程序计算机设备可接受的一系列指令和说明,用来让计算机执行一个运算或操作,计算机数据事实、概念或指令的一种结构化表示,能够被计算机设备所接受、理解或处理,计算机程序文档技术数据,包括计算机程序列表和可读的打印输出物,如需求、设计、实现和其他有关的计算机程序细节以及使用和维护程序的说明,软件质量的一些定义,(表征)计算机系统卓越程度的所有属性的集合可靠性、可维护性、可用性,软件产品满足明示需求程度的一组属性的集合,软件质量是软件产品满足使用要求的程度,软件质量是软件产品满足客户(买主、使用者和维护者)需求的一组可度量的特性,软件质量是软件产品的属性,定义软件产品质量的特性可以有许多,软件质量要求举例,目录,背景,质量,软件质量,软件中的差错,软件质量保证的相关术语,软件项目的3大要素,TIME,COST,QUALITY,SCOPE,三大要素是软件质量、成本和进度。,成本和进度是可以定量度量的,对质量的定量度量却是非常困难,缺乏软件质量的具体度量,就意味着当质量、费用和进度产生矛盾时,将牺牲质量,这正是软件产品存在质量问题的主要原因。极端地侧重于软件的质量要素是完全必要的,软件质量的高低主要是以在已释放的软件产品中残留差错的多少来衡量的。软件中的差错是造成软件质量低下的根源。因此,软件工程相对于软件质量来说,其核心内容是:避免错误、纠正错误、容忍错误(容差)和度量错误。由此不难看出,软件中的差错是软件工程关注的焦点。,在软件寿命期各阶段的差错分布为:,需求分析和设计阶段占64;编码阶段占36。,差错总数中,差错类型的分布为:,文档占2;计算占5;人的差错占5%;环境占5%;接口占6;数据占6;其他占7;逻辑占28;需求转化占36。,在软件寿命期各阶段可能发现差错的分布为:,需求分析阶段占9;设计占2;编码占7;软件集成占15;系统集成占48;现场试验占13;运行占6。,纠正一个软件差错的最小费用,据国外统计,纠正一个软件差错的费用将会随着软件生存期阶段的进展而扩大10倍以上(倍增因子大约为14),如图所示。,影响软件质量的因素有以下15种,(1)开发方法和工具。影响软件质量的开发方法和工具主要有:结构化设计、编码、测试和维护;伪码和流程图技术,它是设计工具,也是编码工具;设计、编码、测试、维护工具以及需求跟踪工具;进程和状态报告及差错跟踪;设计和编码排查;正式评审。,(2)开发人员的训练因素。它主要指开发人员的全部经验以及结构化方法的经验,它们将对软件质量产生有利的影响。,(3)软件开发的组织形式。组织机构、指导方针以及使用的标准将影响软件的质量。,(4)文档的提供。源码、技术资料以及开发计划等将影响软件的质量。具体指:包含在软件编码中的文档(模块名、模块在层次树中的位置及模块功能);软件以外的文档(配置管理计划、质量保证计划、软件开发计划及软件测试计划)。,(5)复杂性。结构和功能的复杂性将影响软件的质量。,(6)环境。终端用户的环境以及对环境建模的难易程度将影响软件的质量。具体的环境因素有:软件、硬件与人之间的接口;用户的训练;输入数据的确认。,(7)现有的软件原型。在概念设想、需求分析和设计阶段,如果存在有效的原型,将对软件质量产生有利的影响。,(8)需求转换和可跟踪性。在开发期间,需求转换和跟踪的有效性将影响软件的质量,(9)测试方法。作为一个整体,测试和确认软件系统的方法将影响软件的质量。具体的方法有:独立的验证和确认(IV&V);责任分配(一个人设计模块A,编码模块B,测试模块c;另一个人设计模块B,编码模块C,测试模块A);专职的开发、测试和编码;不独立的测试。,(10)维护(文件、标准和方法)。执行维护活动的方法将影响软件的质量。,(11)计划和资源。计划和资源的限制将影响软件的质量。,(12)语言。更高级的语言将更适合于结构化开发。,(13)现有的类似软件。可以用于建模目的的类似软件的存在,将影响软件的质量。,(14)软件的质量特征。影响软件的质量特征有:维护性、重用性、安全性、故障容差、保密性、精度、灵活性、性能、用户友好性等。,(15)设计参数的折中。在计划和成本限制下,软件的设计参数以及要完成的每一个目标,必须要进行折中,这将会直接影响软件的质量。,小结,软件质量低下的根源来自于两个方面:,一是软件存在着许多区别于硬件的特殊性,二是人的智力受到了功能复杂、规模庞大的软件的挑战,最终目的是,在保证得到所希望软件产品质量的情况下,实现软件开发质量、工期和费用的最佳折中。,在软件工程的三大要素中,质量占据着中心的地位。这不仅是因为质量是软件产品的生命力所在,还因为质量也直接影响着开发周期和开发需投入的费用。,目录,背景,质量,软件质量,软件中的差错,软件质量保证及其相关术语,软件质量保证(SQA),质量保证是一个活动,向所有有关的人提供证据以确立质量功能正在按需求运行的信心J.M.Juran,软件质量保证是一系列系统性的活动,它提供开发出满足使用要求产品的软件过程的能力证据。,与硬件不同,软件不会磨损,在交付后其可用性不随时间改变。SQA就是系统性的工作,以提高软件交付时的水平Dobbins,SQA应贯穿于整个开发过程EncyclopediaofComputer,对软件质量计划的管理,SQA并不保证软件质量而是确保软件质量计划的有效性RobertH.Dunn,软件质量控制,软件质量控制是对开发可用软件产品的过程能力的独立评价;用以评价开发的软件产品质量的一系列活动:同行评审、增量开发等,质量控制是一个常规过程,通过它量度实际的质量性能,并与标准比较,当出现差异时采取行动。,软件可靠性,硬件可靠性:在规定的条件下,在一段时间内产品完成规定功能而不失效的概率Juran,软件的可靠性:在规定的条件下、规定的时间内,软件执行其功能的能力,软件可靠性实际上与软件设计质量紧密相关,软件可靠性不仅仅是下一次失效的时间问题,而是正确性、信息、精确性和准确性的问题,软件可维护性,软件维护是一个在软件交付后对软件系统或部件错误进行修改、提高其性能或其他特性或适应环境变化的过程,软件升级,修改软件错误,适应新的运行环境,软件的验证和确认(V&V),一个用以分析、评价、测试系统和软件文档以及代码系统的过程,以尽可能地确保质量、可靠性以及系统需求和目标满意度。,验证用以确定系统在给定开发阶段的产品是否满足在该阶段初期所提出的条件,确认用以评估系统或部件在开发过程中或开发过程结束时是否满足需求,独立验证和确认:独立程度必须是软件重要性的函数,软件的测试与评价(T&E),检验完成的程序以判断该程序是否满足规定的需求的过程,与V&V的区别,V&V可不通过测试就能完成,其核心在于需求的可追溯性。验证可以通过对需求、设计规约到代码的跟踪来实现确认可通过测试结束时的追溯性实现,即需求全部反映在测试计划和测试过程中,并京各种测试合格,T&E的核心则是在测试中运行程序,每做一种测试和评价,“确认”就来确认被测需求是否满足,软件过程改进,一种用有准备、有计划的方法以文字方式记录下开发和维护软件及软件相关产品的活动、方法、实践和变革。在把每个活动、方法、实践和变革形成文档的同时,对其依据组织增值标准进行分析。,软件过程改进步骤,使用常规流程图将整个过程画出来,形成文档,分析流程图中每个文档化的活动,确定每个活动是否增殖。,以持续不断、周期性的方式去除或修改不增殖的活动,增加能够使过程增殖的活动。,全面质量管理,全面质量管理,TotalQualityManagement(TQM),是一个组织以质量为中心,以全员参与为基础,目的在于通过让顾客满意和本组织所有成员及社会受益而达到长期成功的一种质量管理模式,含义三:组织长期成功,含义一:整个组织以质量为核心,含义二:每个员工积极参与,全面质量管理的特点,全面质量管理即为全员、全过程、全方面的质量管理,力求全面提高经济效益。包括以下基本特点:(1)全员参加:意味着质量控制由少数质量管理人员扩展到企业的所有人员。(2)全过程:将质量控制从质量检验和统计质量控制扩展到整个产品寿命周期。(3)全面运用一切有效方法:是指应用一切可以运用的方法,而不仅仅是数理统计法。(4)全面控制质量因素:意味着把影响质量的人、机器设备、材料、工艺、检测手段、环境等全部予以控制,以确保质量。,TQM核心思想,TQM核心思想,全员性(全员参与质量管理),全过程性(管理好质量形成的全过程),全面性(管理好质量所涉及的各个要素),TQM的核心观念,质量是由客户定义的,质量是做出来的,不是检验出来的,质量管理是全体员工的责任,质量管理的关键是要不断地改进和提高,目录,背景,质量,软件质量,软件中的差错,软件质量保证的相关术语,软件质量保证在软件开发中的作用,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 原木资源综合利用技术创新创业项目商业计划书
- 自考专业(金融)自我提分评估及参考答案详解【研优卷】
- 电商内容审核工具创新创业项目商业计划书
- 自考专业(汉语言文学)全真模拟模拟题及答案详解(网校专用)
- 咨询工程师考前冲刺测试卷含答案详解【黄金题型】
- 注册公用设备工程师预测复习含完整答案详解【夺冠】
- 2025年文化创意产业财税代理与知识产权服务合同
- 2025年度文化产业投资入股合同书
- 江苏省盐城市五校联盟2024-2025学年高二下学期5月月考地理试题(解析版)
- 2025年养老服务承包劳动合同标准文本
- 澄海玩具行业出口中存在的问题及对策分析
- 工业园区集中供热配套建设项目可行性研究报告
- 2025年应急管理普法知识竞赛题(附答案)
- 2024-2030全球飞机拆解再制造行业调研及趋势分析报告
- 常减压装置仿真操作正常停车石油炼制装置操作02课件
- 2025年科技创新企业财务工作总结及计划
- 餐饮店食品经营操作流程4篇
- 国防科普活动方案
- 2025年黑龙江、吉林、辽宁、内蒙古高考生物真题试卷(解析版)
- 药物治疗监测试题及答案
- GB/T 45654-2025网络安全技术生成式人工智能服务安全基本要求
评论
0/150
提交评论