欢迎来到天天文库
浏览记录
ID:41338382
大小:150.00 KB
页数:26页
时间:2019-08-22
《第01章 软件质量概念》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第1章软件质量的概念内容提要本章包含三个方面的内容:1.1软件质量的概念1.2软件质量模型1.3软件缺陷1.1软件质量的内涵表征计算机系统卓越程度的所有属性的集合。——Fisher和Light软件产品满足明示需求程度的一组属性的集合。——DonaldReifer软件产品满足使用要求的程度。——袁玉宇1.2软件质量模型本小节包含三个方面的内容:1.2.1McCall模型1.2.2Boehm模型1.2.3ISO9126模型1.2软件质量模型概述:计算机界对软件质量的属性进行了较多的研究,得到了一些有效的质量模型,包括McCall模型、Boehm模型、ISO9126
2、模型。1.2.1McCall模型正确性完整性可靠性可用性承受可改变能力新环境适应能力操作特性可维护性灵活性可测试性可移植性可重用性可互操作性效率1.2.2Boehm质量模型1、Boehm质量模型见P6图1-22、Boehm质量模型的特点:Boehm质量模型为分层结构。Boehm质量模型包含了McCall模型中没有的硬件特性。Boehm质量模型从软件的整体效用,并考虑了系统交付后不同类型的用户的需求,因此,Boehm模型反映了对软件质量的全过程理解,即软件做了用户要它做的;有效地使用系统资源;易于用户学习和使用;易于测试和维护。1.2.3ISO/IEC9126质
3、量模型ISO/IEC9126质量模型分为3个:内部质量模型,外部质量模型和使用质量模型。外部和内部质量模型如下,使用中模型见P7图1-41.2.3ISO/IEC9126质量模型1、内部质量内部质量是站在开发人员和质量保证人员的角度,从内部观点出发评判软件产品的质量特性。内部质量特征主要包括:可维护性、灵活性、可移植性、可重用性、可读性、可测试性、可理解性。1.2.3ISO/IEC9126质量模型2、外部质量外部质量是站在开发人员和质量保证人员的角度,从外部观点出发评判软件产品的质量特性,即在预定的系统环境中运行时可能达到的质量水平。外部质量特征主要包括:正确性
4、、可用性、效率、可靠性、完整性、适应性、精确性、坚固性。1.2.3ISO/IEC9126质量模型3、使用质量使用质量是从用户观点出发,来看待软件产品用于特定环境和条件下的质量,反映的是从用户角度看到的软件产品在适当系统环境下满足其需求的程度。使用质量用以下质量特征表述:有效性、生产率、安全性、满意程度等。1.3软件缺陷本小节包含四个方面的内容:1.3.0软件缺陷案例1.3.1软件缺陷的定义1.3.2软件缺陷产生的原因1.3.3软件缺陷的分类1.3.0软件缺陷案例案例1美国迪斯尼公司的狮子王游戏软件bug案例2美国航天局火星登陆事故案例3跨世纪“千年虫”问题案例
5、4爱国者导弹防御系统炸死自家人案例5Windows2000中文输入法漏洞案例6金山词霸bug案例7英特尔奔腾浮点除法缺陷1.3.1软件缺陷的定义1、IEEEStandard729对软件缺陷的定义:见P82、袁玉宇的定义:见P81.3.1软件缺陷的定义3、软件缺陷的判断标准:(1)软件未实现产品说明书要求的功能。(2)软件出现了产品说明书指明不会出现的错误。(3)软件超出实现了产品说明书提到的功能。(4)软件未实现产品说明书虽未明确指出但应该实现的目标。(5)软件难以理解,不易使用,运行缓慢或者终端用户认为不好。1.3.2软件缺陷产生原因软件缺陷的产生是不可避免
6、的,通过分析造成软件缺陷的原因可以归纳为如下三个方面:1.3.2软件缺陷产生原因(1)技术问题算法错误。计算和精度问题。系统结构不合理,造成系统性能问题。接口参数不匹配出现问题。1.3.2软件缺陷产生原因(2)团队工作系统分析时对客户的需求不是十分清楚,或者和用户的沟通存在一些困难。不同阶段的开发人员相互理解不一致,软件设计对需求分析结果的理解偏差,编程人员对系统设计规格说明书中某些内容重视不够,或存在着误解。设计或编程上的一些假定或依赖性,没有得到充分的沟通。1.3.2软件缺陷产生原因(3)软件本身文档错误、内容不正确或拼写错误。数据考虑不周全引起强度或负载
7、问题。对边界考虑不够周全,漏掉某几个边界条件造成的错误。对一些实时应用系统,保证精确的时间同步,否则容易引起时间上不协调、不一致性带来的问题。没有考虑系统崩溃后在系统安全性、可靠性的隐患。硬件或系统软件上存在的错误。软件开发标准或过程上的错误。1.3.2软件缺陷产生原因软件缺陷的组成软件缺陷是由很多原因造成的,规格说明书是软件缺陷出现最多的地方,如下图:1.3.2软件缺陷产生原因软件产品规格说明书为什么是软件缺陷存在最多的地方,主要原因有以下几种。用户一般是非计算机专业人员,软件开发人员和用户的沟通存在较大困难,对要开发的产品功能理解不一致。由于软件产品还没有
8、设计、开发、完全靠想象去描述系统的实现
此文档下载收益归作者所有