软件质量和软件质量保证体系

上传人:博****1 文档编号:504394632 上传时间:2022-11-08 格式:DOC 页数:8 大小:41.50KB
返回 下载 相关 举报
软件质量和软件质量保证体系_第1页
第1页 / 共8页
软件质量和软件质量保证体系_第2页
第2页 / 共8页
软件质量和软件质量保证体系_第3页
第3页 / 共8页
软件质量和软件质量保证体系_第4页
第4页 / 共8页
软件质量和软件质量保证体系_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《软件质量和软件质量保证体系》由会员分享,可在线阅读,更多相关《软件质量和软件质量保证体系(8页珍藏版)》请在金锄头文库上搜索。

1、第9章软件质量和软件质量保证体系软1件质量9.1软.件1质量特性什么是软件质量?不同人或组织的看法各不相同。按照(我国6“信息技术软件产品评价、质量特性及其使用指南”国际标准,认为软件质量()是与软件产品满足明确或隐含需求的能力有关的特征和特性的总和,例如,符合规格说明。简而言之,软件质量是软件一些特性的组合,它仅依赖于软件本身。9.1软.2件质量评价评价软件质量可从三个方面进行,即产品或中间产品、过程(即软件生产所需的资源和活动)和项目。评价可按如下三步进行:1、定义质量需求质量需求包含两个方面:问题规定或隐含的需求;软件质量标准和其它技术信息。2、准备评价首先选择质量度量;然后定义质量等级

2、;再定义评估准则。由于一般情况下,不可能对质量特性进行直接度量,从而应选择与质量特性相关的且可定量的软件特性加以度量。定义质量等级是依据应用问题的需求将质量度量值分割成若干不同满意程度的等级,如优秀、合格与不合格等。定义评估准则是为了综合软件不同质量特性的评价结果,可采用判定表或加权平均法;同时还可兼顾其它因素,如时间、成本等。3、评价过程评价过程实际上是对软件产品就第2步中准备的评价内容进行实施,也分3步: 测量把选定的质量度量应用到软件产品上; 评级确定某测量值的等级; 评估根据评估准则确定产品质量,并依据管理准则判定产品是否可通过验收或是否发行等等。9.1软.3件质量保证软件的质量保证也

3、和一般的质量保证一样,是确保软件产品从诞生到消亡为止的所有阶段的质量的活动。软件质量保证由各种任务构成,分别与两种不同的参与者相关负责技术工作的软件工程师和负责质量保证的计划、监督、记录、分析及报告工作的软件质量保证()小组。软件工程师通过采用可靠的技术方法和措施,进行正式的技术复审、执行计划周密的软件测试来保证软件质量。小组主要辅助软件工程小组得到高质量的最终产品,对项目准备计划,如确定需要进行的评价、需要进行的审计和复审、项目可采用的标准等;参与开发项目的软件过程描述,以保证该过程与组织政策、内部软件标准、外界所订标准以及软件项目计划的其它部分相符;复审各项软件工程活动,对其是否符合定义好

4、的软件过程进行核实;审计指定的软件工作产品,对其是否符合定义好的软件过程中的相应部分进行核实;确保软件工作及工作产品中的偏差已被记录,并根据预定规程进行处理;记录所有不符合的部分,并报告给高级管理者;等等。?9.1.软4件质量管理所谓质量管理是指确定质量方针、目标和职责,并在质量体系中通过诸如:质量策划、质量控制、质量保证和质量改进,使其实施全部管理职能的所有活动。质量策划包括产品策划、管理和作业策划以及质量计划的编制和质量改进的准备工作。质量控制是指采取某些特定作业技术或开展某些活动,以达到质量要求。质量改进是指以追求更高的效益和效率为目标的持续性活动。质量管理和质量保证相互依赖,但他们的活

5、动具有不同的范围、不同的目的、不同的动机和不同的结果。?9.软2件复杂性分析9.2基.于1需求分析的复杂性分析软件工程的技术性工作始于需求分析,提供对分析模型质量的度量是有意义的和必要的。在需求分析阶段完成以后,项目的管理人员希望知道将要开发的软件有多大规模,这与将要投入的工作量、开发成本以及何时交付用户或何时投放市场都有密切的联系。同时,如果是委托开发的项目软件,用户也会关心开发机构提出的报价是否恰当合理。双方都希望有一个科学、公正的估价依据。下面介绍一种面向功能的软件复杂性度量方法功能点方法。面向功能度量是由首先提出来的。功能点方法以需求规格说明书中双方确认的软件功能为依据,着重分析待开发

6、系统的功能度()n显然,软件的大小与软件的功能度相关,而与软件功能的描述无关,也与功能需求的如何实现无关。功能点()度量可以用作从分析模型中获得系统大小的预测手段。9.2基.2于软件设计的复杂性分析人们在设计硬件时,常利用设计测度来确定设计质量,指导设计演化。然而对于软件而言,大部分软件工程师却忽视对软件设计结果的测量以达到进一步改进软件设计的目的。软件设计由概要设计和详细设计两个阶段组成,我们分别就这两个阶段讨论软件设计复杂性度量方法。概要设计复杂性度量主要集中在软件结构的特征上。和定义了三种软件设计复杂度测度:结构复杂度、数据复杂度和系统复杂度。美国空军提出了一种计算“设计结构质量指标()

7、”的方法用来度量软件结构的复杂度。该方法使用了类似于在一1中提出的概念。详细设计复杂性度量主要集中在模块内部结构的复杂性上。麦凯伯()提出了一种环形计数的方法来确定程序控制流的复杂度。使用方法可直接利用程序流程图计算其“判定数”(即比较个数,对于复合条件判定要先转化成单一条件判定),也可根据程序流程图导出的程序图计算其“环形数”(即封闭环域数来进行,其计算公式为:程序环形复杂度()程序流程图中的“判定数”+1程序图中的“环形数”。=m-n+2其中对应于程序图中的弧数,对应于程序图中的节点数。9.2.基3于源程序代码的复杂性分析软件开发经过编码阶段后,便得到源程序代码。霍尔斯特德()根据源代码中

8、运算符和操作数的测量值来度量源程序代码的复杂度。在方法中,运算符是指用来处理程序中常量和变量的语法元素等,如算术运算符、逻辑运算符、关系运算符、流程控制语句、函数调用等;操作数则是指源程序代码中的常量和变量等。但对非执行语句,如注释,则不进行考虑。方法使用了以下个基本测量数据:程序中运算符总数程序中操作数总数程序中运算符种类数程序中操作数种类数根据以上4个测量数据,可以在以下几个方面对源程序代码的复杂性进行度量:实际程序长度编程语言层次()程序容量V=(N1+N2)*log2(n1+n2)?预测程序长度(可在详细设计后进行预测)估计程序工作量预测程序错误数其中,会随编程语言的不同而不同(对同一

9、功能的程序,用高级语言来写要比低级语言来写得到的程序对应的要小),它代表了写一个程序所需的信息量(以位为单位)。反映的是程序最简洁形式时的容量与程序实际容量之比。9.2基.4于软件维护的复杂性分析建议采用一种软件成熟度指标()I以提供对软件产品的稳定性指示(基于为每一软件产品发布而做的变化)。将和维护工作量联系起来,形成一个经验模型,则可用来度量软件维护的复杂性。方法涉及的基本测量数据如下:当前发布软件中的模块数T当前发布软件中已经改变的模块数;当前发布软件中已经添加的模块数;当前发布软件中已经删除的前一次发布软件中的模块数。则软件成熟度指标按下式进行计算:SMI=(MFaT+-Fc,+F/d

10、MT当接近的时候,产品便开始稳定。实际上,软件维护过程也是由分析、设计、编码和测试的过程组成,从而基于分析、设计、编码以及测试的复杂性分析方法也可用于软件维护的复杂性分析9.软3件可靠性分析9.3软.件1可靠性三要素在上面定义软件可靠性中实际给出了三个有关的主要因素:失效、时间和环境。1、失效在讨论软件质量和软件可靠性时,软件失效是指最后执行结果与有关规格不相符或用户在软件系统边界觉察到不期望的软件出错行为。失效是错误引起的结果。2、时间在进行软件可靠性分析时,时间可以有三种度量方式。第一种是执行时间,是指运行软件时计算机实际花费的时间;第二种是日期时间,指通常以年、月、周、日等计算的时间;第

11、三种是时钟时间,是指运行软件时计算机自始至终所花去的累积时间,但计算机停机时间不计算在内。3环境软件的使用环境涉及软件运行时所需要的支持系统及有关的因素。一个规定的使用环境是对这些因素的精确而详细的限制描述。严格地说,描述软件可靠性“规定的使用环境”包括硬件配置状态和操作人员操作等的描述,并假定其它因素对软件来说都是理想可靠的,不会影响软件的运行。也就是说软件可靠性不包含硬件和操作的可靠性。软件可靠性、硬件可靠性和操作可靠性三者综合起来反映整个计算机系统的可靠性。规定软件的使用环境可用来判定系统失效是否由于软件失效引起。软件可靠性模型软件可靠性同硬件可靠性一样,都可看成是随机过程,用概率分布来

12、描述。但软件可靠性与硬件可靠性的分析却不完全相同。一方面,软件不会老化,其可靠性不随时间增加而减少;另一方面,软件失效常常是由于软件分析或设计引起。这样使软件可靠性分析变得非常复杂。自第一个软件可靠性模型由和提出以来,已经有几十个软件可靠性模型公开发表。实际应用经验表明,没有一个普适的模型能对所有产品都能做出最好的可靠性分析。软件可靠性模型的研究还有待进一步深入。几个较简单的模型:、模型;、模型;、植错模型;、分别测试模型。软件可靠性工程软件可靠性工程可定义为定量地按用户对于可靠性的需求,研究基于软件系统的操作行为。它包括:(、)软件可靠性度量,是以软件可靠性模型为基础进行的评价和预测;(件)

13、产品设计、开发过程、系统结构、软件操作环境等要点与度量标准及它们对可靠性的影响;(3)应用可靠性知识指导软件定义、开发和维护。围绕软件生命周期所进行的软件可靠性工程活动如下:(、)可行性和需求分析阶段(件)设计与实现阶段(3)测试及试运行阶段(、)运行维护阶段软件质量体系族国际标准族国际标准是指国际标准化组织中质量管理和质量保证技术委员会C)制订的所有标准。以一般术语描述了能够适用于任何行业的质量保证系统的要素,这些要素包括用于实现质量计划、质量控制、质量保证和质量改进所需的组织结构、程序、过程和资源。现有5类共件0个标准,如图-分别是:1、质量术语标准它是族标准中最早发布的一个标准,为质量管

14、理领域中常用的质量术语作了明确的定义,成为质量管理和理解、贯彻实施其他标准的基础。2质量保证标准这类标准体现了对供方质量体系的不同要求,供方对这些要求的满足应得到证实。3质量管理标准这类标准可用以指导质量管理和建立质量体系。4质量管理和质量保证标准的选用和实施指南5支持性技术标准企业软件质量体系的建立和实施族标准中并没有专门提供软件企业如何建立和实施质量体系,因此,可以认为软件企业建立和实施质量体系的过程和其他企业并无多大差别,仅对某些质量体系要素有其特殊的要求。下面简要说明软件企业建立和实施质量体系的主要工作。1准备阶段2质量体系策划3编写质量体系文件4培训内部审核员5质量体系试运行6内部质

15、量体系审核7管理评审8质量体系认证前的准备9质量体系认证过程0质量体系的进一步改进与完善软件配置管理软件配置项软件配置项(,简称)是软件配置管理的对象,它包括软件生存周期内产生的所有信息项。按的说明,配置项有:与合同、源代码、过程、计划和产品有关的文档及数据;目标代码和可执行代码;相关产品,包括:软件工具、库内的可复用件、外购软件等。软件配置就是软件配置项在不同时期按不同要求进行的组合。例如:Visua有专业版、企业版等不同版本。实际中,一般用“版本”来表示配置项的演化阶段。随着软件过程的进展,软件配置项也迅速增长,并且变化接踵而至,主要变化表现在:新的商业或市场环境,引起产品需求或业务规则变化;新的用户要求;企业结构变化,导致项目优先级或软件工程队伍结构变化;预算或进度的限制。9.5. 软2件配置管理软件配置管理是一组用于在计算机软件的整个生存周期内管理变化的活动。按ISO90的0叙0述-,3软件配置管理是一个管理学科,对配置项的开发和支持生存周期给予技术上和管理上的指导。配置管理的应用取决于项目的规模、复杂程度和风险大小。软件配置管理不同于软件维护,最主要的一点是软件配置管理是当软件项目开始时就启动,并且仅当软件终止运行后才结束的一组跟踪和控制变化的活动。实施软件配置管

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号