www.100xuexi.com圣才电子书十万种考研考证电子书、题库视频学习平台第10章软件质量管理一个成功的软件项目管理是应在约定的时间、范围、预算的成本以及要求的质量下,达到或超过项目相关方的期望。由此可见,软件质量管理是软件项目管理的重要方面,它与绩效、成本、时间一起构成项目成功的关键因素。软件质量管理由质量方针、组织结构、项目过程中的活动以及相应的资源组成。这些活动确定质量的政策、目标、责任,并在质量体系中凭借质量计划编制、质量控制、质量保证和质量提高等措施达到质量的目标。考核目标:1.了解软件质量的概念、软件质量特性与ISO9126质量模型的基本层次,包括使用质量、外部质量和内部质量。2.了解FCM质量度量模型与GQM质量度量模型;了解软件质量度量的两种类型,即预测型和验收型,以及尺度度量和二元度量等度量方法3.了解软件质量计划的编制过程和软件质量计划的概要。4.了解什么是软件质量保证,软件质量保证的作用,CMM第2级软件质量保证过程域的主要目标、主要的质量保证实践、软件质量保证活动的实施。5.了解什么是验证,什么是确认;了解软件验证和确认的作用,以及在软件生存周期各阶段的实施概要。6.了解软件评审的作用,管理评审、技术评审、文档评审、过程评审的要点,以及评审的6种实施方法。7.了解作为审核依据的ISO9000标准规定的质量保证体系的概要。1/48www.100xuexi.com圣才电子书十万种考研考证电子书、题库视频学习平台10.1软件质量与质量模型一、软件质量的概念通常软件质量被理解为合乎规格说明,满足客户需求,以及在文档和代码中包含尽量少的缺陷等,这些都是比较“经典”的定义。以下是几种具有代表性的软件质量定义。根据ISO8402—1994定义:质量为“反映实体满足明确和隐含需求的能力的特性的总和”。其中,实体是“可以单独描述和研究的事物”,如产品、活动、过程、组织和体系等,明确的需求是指在标准、规范、合同、技术要求和其他文件中明确规定的要求;隐含需求是指用户和社会对实体的期望,以及公认的不必明确的要求。而软件质量是指“对用户在功能和性能方面需求的满足、对规定的标准和规范的遵循以及正规软件某些公认应该具有的本质”。该软件质量的定义强调了3点:第一,用户的需求是软件质量评价的基础,不满足用户需求的软件是不能交付使用和走向市场的;第二,规定的标准和规范是软件开发的共同准则,不遵循这些标准和规范,就可能导致软件开发的无序和软件质量的低下;第三,对软件的某些要求虽未明确提出,但却是大家公认的、也应得到满足。1983年,ANSI/IEEESTD729给出的软件质量定义如下。软件产品满足规定的和隐含的与需求能力有关的全部特征和特性,表现在以下方面。(1)软件产品质量满足用户要求的程度。(2)软件各种属性的组合程度。(3)用户对软件产品的综合反映程度。2/48www.100xuexi.com圣才电子书十万种考研考证电子书、题库视频学习平台(4)软件在使用过程中满足用户要求的程度GB/T11457—2006《信息技术软件工程术语》等同采用了这个说法。二、软件质量特性软件质量概念需要建立在预先定义的需求的基础上,而预先定义的需求在很大程度上依赖于描述它们的人员。这些人员可能来自软件产品不同的开发环境,对软件质量有不同的理解,因此,必须有一种标准,用以衡量软件质量的不同侧面,这就是描述软件满足需求能力的质量特性及其组合。也就是说,软件质量是由各种质量特性的复杂组合来描述的。如果这些质量特性及其组合都能在产品中得到满足,则这个软件产品质量就是高的。国际标准化组织于1991年发布了国际标准ISO/IEC9126:1991《信息技术一软件产品评价一质量特性及其使用指南》,该标准采用了层次式软件质量评估方法。首先提出了对软件产品质量关系最为直接的6个质量特性,继而对质量特性加以解释,将每个质量特性又分解出若干个子特性(共计21个子特性)。子特性可用若干个度量值来量化。在此基础上国际标准化组织在2001年修订了这个标准,扩展为有关软件质量的一个标准系列,即ISO/IEC9126—1至1S0/IEC9126—4。将软件质量分为内部质量、外部质量和使3/48www.100xuexi.com圣才电子书十万种考研考证电子书、题库视频学习平台用质量。相应地,我国发布的对等的国家标准是GB/T16260.1至GB/T16260.4。三、软件质量模型在国家标准GB/T16260.1—2006《软件工程产品质量第1部分:质量模型》中,全面地描述了软件质量模型。该国标等同采用了国际标准《ISO/IEC9126—1:2001SoftwareEngineeringProductQualityParty1:QualityModel》。1.3种软件质量如何看待产品的质量,与观察者的立场和观点有关。例如,产品的使用者、维护者和开发者会从不同的视角考虑质量问题。使用者自然希望方便使用,维护人员则希望方便维护,而开发者则首先要考虑使用者的需求,还要便于开发,自然也要方便维护。另一方面,在产品生存周期或开发周期的不同阶段,对质量的理解和要求也有所不同,换言之,各开发阶段的“质量,各不相同,但它们之问是相关的。综合这两个方面,可以归纳为3种软件质量,如图10.1所示。4/48www.100xuexi.com圣才电子书十万种考研考证电子书、题库视频学习平台图10.13种软件质量(1)使用质量:软件产品在用户的使用环境下,以他(用户)的观点提出的软件用户的质量要求。从产品的开发视角来说,应始终以用户为关注焦点,因而使用质量应该是第一位的。(2)外部质量:在需求阶段要根据用户的使用质量要求进行分析,定义出产品的质量需求,就是从外部观点来看软件产品应具有的质量特性,以此作为开发的依据,也是开发的确认目标。(3)内部质量:在开发阶段从产品的内部观点来看应具有的中间产品质量特性,是软件产品在开发阶段的质量需求。开发工作对它的满足程度以及对外部质量的符合程度决定了产品能否给用户提供他们关心的使用质量。以上3种软件质量的关系可以从软件生存周期中清楚地看出,如图10.2所示。5/48
全国计算机等级考试《四级软件工程》(教材讲解+真题解析)软件质量管理【圣才出品】



