您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 第11章软件工程质量
第11章软件工程质量软件质量,是贯穿软件生存期的一个极为重要的问题,是验证软件开发过程中所使用的各种开发技术和方法有效性的最终体现。1、软件质量的定义软件质量可定义为:“与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体”;或“所有描述计算机软件优秀程度的特性的组合”。软件质量是各种特性的复杂组合。它随着应用的不同而不同,随着用户提出的质量要求不同而不同。软件工程质量软件质量反映了以下三方面的问题:(1)软件需求是度量软件质量的基础。不符合需求的软件就不具备质量。(2)在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。如果不遵守这些开发准则,软件质量就得不到保证。(3)往往会有一些隐含的需求没有明确地提出来。如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。软件工程质量2、软件质量的特性人们通常用软件质量模型来描述影响软件质量的特性。软件质量模型定义成分层模型。①在分层的模型中,最基本的叫做基本质量特性,它可以由一些子质量特性定义和度量。②二次特性在必要时又可由它的一些子质量特性定义和度量。软件工程质量2、软件质量的特性(1)ISO的软件质量评价模型按照ISO/TC97/SC7/WG3/1985—1—30/N382,软件质量度量模型由三层组成,高层(toplevel)软件质量需求评价准则(SQRC)中层(midlevel)软件质量设计评价准则(SQDC)低层(lowlevel)软件质量度量评价准则(SQMC)其中,应对高层和中层建立国际标准,而低层可由各使用单位视实际情况制定。软件工程质量2、软件质量的特性(2)McCall质量模型这是McCall等人于1979年提出的软件质量模型。其软件质量概念基于11个特性之上。其中反映产品运行特性的包括正确性、可靠性、效率、完整性、可使用性;反映产品修改特性的包括可维护性、可测试性、灵活性;反映产品转移特性的包括可移植性、复用性、互连性;软件工程质量2、软件质量的特性(3)上海软件中心(SSC)的软件质量度量模型在SSC模型中,用了与ISO/IEC9126相同的6个质量特性,它们分别是功能性(正确性)、可靠性、易使用性、效率、可维护性和可移植性。同时设置了22个质量子特性,是参照McCall模型定义的。软件工程质量3、软件质量的度量软件质量的高低,必须有一定的衡量标准。(1)软件质量度量的条件通常有以下几项:①适应性:必须制定能适应各种用户要求、软件类型和规模的质量标准,并能够度量。②易学性:不需要特殊技术,软件技术人员人人都容易掌握。③可靠性:对同一个软件的评价,尽管评价的人或场合可能不同,但评价结果必须一致。④针对性:不是在检查时才改进质量,而必须从设计阶段起就确立质量目标,在各个阶段实施落实。⑤客观性:要从各种不同角度加以评价,并将评价结果定量地表示,使得人人都能理解。⑥经济性:考虑如何才能把质量度量和保证所需要的费用控制在适当的范围内。软件工程质量3、软件质量的度量标准分为三级:①质量需求评价准则:是否满足用户的要求②质量设计评价准则:开发者在设计实现时是否按软件需求保证了质量③质量度量准则:定量度量质量而规定的一些检查项目软件质量度量的方法有三种:①精密度量②全面度量③简易度量软件工程质量4、软件质量的评价(1)评分检查表:对每一阶段要达到的质量指标详细开列/建立度量工作表,在表中,以提问题方式,列出在某一阶段为实现某一质量指标,应达到什么标准。回答问题需参照各类文档,以及开发过程中积累的各种数据,特别是对出错数据的记录。依据软件实际成果进行评分。软件工程质量4、软件质量的评价(2)分析结果根据评分的结果,对照评价指标。检查某个质量特性是否达到了要求的质量标准。如果某个质量特性不符合规定的标准,就应当分析这个质量持性,找出为什么达不到标准的原因。分析原因应该自顶向下进行。按系统级、子系统级、模块级逐步分析。质量特性的得分低于规定的质量指标有两个可能的原因:①该质量特性与其他质量特性冲突,而那些质量特性是很重要的;②这个软件部分有质量问题。软件工程质量5、软件质量保证软件质量保证,是指为保证产品和服务充分满足消费量要求的质量而进行的有计划、有组织的活动。软件的质量保证就是向用户及社会提供满意的高质量的产品。软件工程质量5、软件质量保证软件质量保证的主要任务大致可归结为8点:(1)用户要求定义(2)力争不重复劳动(3)掌握开发新软件的方法(4)组织外部力量协作(5)排除无效劳动(6)发挥每个开发者的能力(7)提高软件开发的工程能力(8)提高计划和管理质量软件工程质量软件质量保证体系软件的质量保证活动,是涉及各个部门的部门间的活动。质量保证体系:为了顺利开展质量保证活动,需要事先明确部门间的质量保证业务,确立部门间的联合与协作的机构。软件工程质量6、软件质量管理体系(1)软件产品质量管理的特点:①软件质量管理应该贯穿软件开发的全过程,而不仅仅是软件本身。②对开发文档的评审是产品检验的重要方式。③通过技术手段保证质量。软件工程质量6、软件质量管理体系(2)软件质量管理的指导思想①缺陷预防②紧紧扣住用户需求③采用快速原型法④充分设计之后再编码⑤牢牢控制对缺陷的修改⑥充分进行软件的系统测试⑦恰当掌握软件的放行标准软件工程质量6、软件质量管理体系(3)软件开发的质量管理体系要制定质量方针和质量目标,配备足够的人力、物力资源,明确各岗位的质量职责,并保证质量体系的运行。根据ISO9001标准的要求,建立了程序文件、操作指导书和质量记录,对公司运行的主要过程规定了操作的规范,并在工作中严格执行。对开发人员、测试人员和内审员进行各自专业的培训。软件工程质量6、软件质量管理体系(3)软件开发的质量管理体系①质量管理部门的职责实行“检、监、控”三分离的职责设置质量管理部的具体职能是:制定质量管理工作计划;对各部门的质量管理工作提出建议指导;跟踪、内审、分析质量体系的运行;控制软件和开发文档的版本;确认软件产品的测试结果;组织质量体系的改进。软件工程质量6、软件质量管理体系(3)软件开发的质量管理体系②基于ISO9001标准和CMM原则的开发流程管理文件基于ISO9001标准,并吸收CMM的原则,公司应制定大量的程序文件和指导书,以及记录这些流程操作的记录表格,为各项操作提供了科学合理的指导,构成了完整严密的质量保证体系。③对软件开发过程的监督根据ISO9001标准,公司应制定软件开发全过程的一系列流程文件。质量管理部根据这些文件,抽查开发的实际过程是否遵守了流程文件,从而实现对软件开发过程的监督。
本文标题:第11章软件工程质量
链接地址:https://www.777doc.com/doc-3182309 .html