软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案

上传人:yuzo****123 文档编号:137576262 上传时间:2020-07-09 格式:PPT 页数:48 大小:363.50KB
返回 下载 相关 举报
软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案_第1页
第1页 / 共48页
软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案_第2页
第2页 / 共48页
软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案_第3页
第3页 / 共48页
软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案_第4页
第4页 / 共48页
软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案》由会员分享,可在线阅读,更多相关《软件质量概念软件质量模型软件质量保证软件可靠性软件配置讲课教案(48页珍藏版)》请在金锄头文库上搜索。

1、软件质量概念 软件质量模型 软件质量保证 软件可靠性 软件配置管理,软件质量管理,软件质量概念,软件质量的定义 软件质量特性 软件质量模型 软件质量的度量和评价,软件质量的定义,ANSI/IEEE Std 729-1983定义软件质量为“与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体”。 M.J. Fisher 定义软件质量为“所有描述计算机软件优秀程度的特性的组合”。,质量特性及其组合,是软件开发与维护中的重要考虑因素,为满足软件的各项精确定义的功能、性能需求,符合文档化的开发标准,需要相应地给出或设计一些质量特性及其组合。 如果这些质量特性及其组合都能在产品中得到满足,则这个

2、软件产品就是高质量的。,软件质量模型,软件质量特性定义成分层模型,主要的软件质量模型有: 1976年 Boehm质量模型 1979年 McCall质量模型 1985年 ISO质量模型,Boehm质量模型,McCall质量模型,ISO的软件质量评价模型,按照ISO/TC97/SC7/WG3/1985-1-30/N382,软件质量度量模型由三层组成 软件质量需求评价准则(SQRC) 软件质量设计评价准则(SQDC) 软件质量度量评价准则(SQMC) 高层和中层建立国际标准,低层可由各使用单位视实际情况制定,1991年 ISO质量特性国际标准 (ISO/IEC9126),质量特性:功能性、可靠性、可

3、维护性、效率、可使用性、可移植性 推荐21个子特性:适合性 准确性 互用性 依从性 安全性 成熟性 容错性 可恢复性 可理解性 易学习性 操作性 时间特性 资源特性 可分析性 稳定性 可变更性 可测试性 可安装性 可替换性 适应性 一致性,软件质量的度量和评价,软件质量特性度量有两类:预测型和验收型。 预测度量是利用定量或定性的方法,估算软件质量的评价值,以得到软件质量的比较精确的估算值。 验收度量是在软件开发各阶段的检查点,对软件的要求质量进行确认性检查的具体评价值,它是对开发过程中的预测进行评价。,预测度量有两种。 第一种叫做尺度度量,这是一种定量度量。它适用于一些能够直接度量的特性,例如

4、,出错率定义为:错误数KLOC单位时间。 第二种叫做二元度量,这是一种定性度量。它适用于一些只能间接度量的特性,例如,可使用性、灵活性等等。,软件的质量保证,质量保证的概念 软件质量保证措施 软件质量保证体系 质量保证的实施 软件的质量设计,质量保证的概念,质量保证是为保证产品和服务充分满足消费者要求的质量而进行的有计划、有组织的活动。 质量保证是面向消费者的活动,是为了使产品实现用户要求的功能,站在用户立场上来掌握产品质量的。 软件的质量保证就是向用户及社会提供满意的高质量的产品。,质量保证措施,审查 在软件生命周期每个阶段结束之前,对该阶段产生的软件配置进行严格的技术审查。 复查和管理复审

5、 复查是检查已有材料,以确定特定阶段是否能开始或继续; 管理复审是从管理角度对开发工作进行审查,测试 程序正确性证明,软件质量保证体系,为了顺利开展质量保证活动,事先明确部门间的质量保证业务,确立部门间的联合与协作的机构,这个机构就是质量保证体系。,质量保证的实施,软件质量保证的实施需要从纵向和横向两个方面展开。 要求所有与软件生存期有关的人员都要参加(纵向) 要求对产品形成的全过程进行质量管理(横向),质量保证活动的实施步骤:,Target:以用户要求和开发方针为依据,对质量需求准则、质量设计准则的各质量特性设定质量目标。 Plan:设定适合于被开发软件的评测检查项目(质量评价准则)。研讨实

6、现质量目标的方法或手段。 Do:开发活动,制作高质量的规格说明和程序。,Check:以Plan阶段设定的质量评价准则进行评价。计算结果用质量图的形式表示出来。比较评价结果的质量得分和质量目标,看其是否合格。 Action:对评价发现的问题进行改进活动,如果实现并达到了质量目标就转入下一个工程阶段。这样重复“Plan”到“Action”的过程,直到整个开发项目完成。,软件的质量设计,质量特性转换为软件的内部结构 在软件定义阶段,必须定义对软件的质量需求。即确定软件的质量特性及必需的评价准则,并定量地设定其必须达到的质量水平 在以后软件开发的每一阶段结束时,要算出评价的分数,然后与目标值加以对照,

7、以评估在这一阶段开发的软件质量是否达到要求。,为了实现规定的质量特性,就需要把这些质量特性转换为软件的内部结构的特性。 例如,软件质量需求中的“性能”,可以转换成软件内部结构中的构成元素,即每一个程序模块和物理数据各自应具有的性能特性。,软件可靠性,在讨论软件可靠性中常用的定义 软件可靠性定义 测试中的可靠性分析,在软件工程中常用的定义,故障(fault):软件的内在缺陷。这些缺陷可在生存期各个阶段被引入。 错误(error):故障在一定的环境条件下的暴露,导致系统在运行中出现了不正常、不正确、不按规范执行的状态,称为软件出错。 失效(failure):对错误不做任何修正和恢复, 导致系统的输

8、出不满足用户要求,称为软件的一次失效。,三者间的关系可以理解为: 设计者的失误导致系统中留有错误的设计缺陷或“故障”(fault) 故障导致系统的错误执行错误(error) 由于错误导致系统的错误输出失效(failure),软件可靠性的定义,软件可靠性是软件在给定的时间间隔及给定的环境条件下,按设计要求,成功地运行程序的概率。 环境条件指的是软件的使用环境。无论是什么软件,如果不对它的使用环境加以限制,都是会失效的。这种失效的数据,不能用来度量软件的可靠性。,规定的时间 在定义中,一般采用“运行时间” t 作为时间的尺度。应当把运行时间t当作随机变量来考虑。 规定的功能 在考虑软件可靠性时,首

9、先应当明确软件的功能是什么,哪些功能是主要的,哪些功能是次要的。一般从软件需求分析说明书和设计说明书中可以了解这些情况。,成功地运行程序 是指不仅程序能正确地运行,满足用户对它的功能要求, 而且当程序一旦受到意外的伤害,或系统故障时,能尽快恢复,仍能正常地运行。,软件可用性,软件可用性是软件在给定的时间点及给定的环境条件下,按设计要求,成功地运行程序的概率。 稳态可用性 Ass=Tup/(Tup+Tdown),平均无故障时间MTTF,若引入平均无故障时间MTTF(Mean Time To Failure) 平均维修时间MTTR(Mean Time To Repair) 则Ass=MTTF/(M

10、TTF+MTTTR),测试中的可靠性分析,在软件开发的过程中,利用测试的统计数据,估算软件的可靠性,以控制软件的质量是至关重要的。 推测错误的产生频度,即推测错误产生的时间间隔 推测残留在程序中的错误数,推测错误的产生频度,估算错误产生频度的一种方法是估算平均无故障时间MTTF (Mean Time To Failure) MTTF估算公式(Shooman模型),设 Et:测试前的故障总数 It:程序长度 Ec():在0时间内改正的故障数 则经过时间测试后,残余的故障数为 Et-Ec 单位长度的故障数:(Et-Ec())/It 因为MTTF与单位长度的故障数成反比, 所以有:,估算软件中故障总

11、数ET,植入故障法估算程序中原有故障总数ET 分别测试法估算程序中原有故障总数ET,设Ns 是在测试前人为地向程序中植入的故障数,ns 是经过一段时间测试后发现的播种故障数目,n 是在测试中又发现的程序原有故障数。设测试用例发现植入故障和原有故障的能力相同,则程序中原有故障总数 N ( =ET )估算值为,植入故障法,Hyman分别测试法,由两个测试员同时互相独立地测试同一程序的两个副本,用 t 表示测试时间,记 t0时,程序中原有故障总数是 B0;tt1 时,测试员甲发现的故障总数是 B1;测试员乙发现的故障总数是 B2;其中两人发现的相同故障数目是 bc;两人发现的不同故障数目是 bi。,

12、则有,例:甲、乙两个测试员同测一个长度为24000条指令的程序,经过一段时间测试后,甲发现了20个错误,使MTTF达到10个小时,同时,乙发现了24个错误,其中6个甲和乙同时发现了,以后甲继续测试此程序,求: 1刚开始测试时,程序隐藏多少个错误 2为使MTTF=60,还需改正多少个错误,解:1. N/B0=B1/bc 其中: B0=24, B1=20, bc=6 所以: N=B0*B1/bc=20*24/6=80,2. 10=1/(k(80-20)/It) 60=1/(K(80-X)/It) 即 10/60=(80-X)/60 X=70 还需改正的错误数=70-20=50,软件配置管理,在软件

13、开发过程中,变更是不可避免的,若没有进行变更控制,则加剧了项目中软件人员之间的混乱。 配置管理是协调软件开发使得混乱减到最小的技术。 配置管理是在软件整个生命周期内管理变化一组活动。这组活动用来:,(1) 标识变更; (2) 控制变更; (3) 确保变更正确地实现; (4) 向其他有关的人报告变更。,软件配置 在软件工程过程中产生的所有信息项(文档、报告、程序、表格、数据)构成了软件配置。 随着软件工程过程的进展,软件配置项(SCI)数目快速增加。,基线 (Baseline),基线是软件生存期中各开发阶段末尾的特定点,又称里程碑。 基线的作用是把各阶段工作的划分更加明确化,以便于检验和肯定阶段成果。,软件开发各阶段的基线,

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

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

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