1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 【软件测试基础理论知识】软件质量 软件质量管理体系 软件质量特性

【软件测试基础理论知识】软件质量 软件质量管理体系 软件质量特性

时间:2019-03-02 20:14:09

相关推荐

【软件测试基础理论知识】软件质量 软件质量管理体系 软件质量特性

1.软件质量

质量:质量是一个实体的所有特性,基于这些特性可以满足明显或者隐含的需求,而质量就是实体基于这些特征满足需求的程度。

软件质量的三个层次

1)从用户角度出发,质量即符合需求又能满足需求。

2)从软件产品角度出发,质量是软件的内在特征。

3)从软件开发过程出发,质量是对过程规范的符合。

软件质量的提高应该是一个综合的因素,需要从每个方面进行改进,同时还需要兼顾成本和进度。衡量软件质量的标准就是需求,其中需求包含以下两个层次的含义:一是显性需求;二是隐性需求。

1)显性需求:是指符合用户所明确的目标。通常是指软件的基本需求,即开发者明确的定义的目标,而且这些目标必须是可以度量的。

2)隐性需求:是指用户不能明确描述的目标。通常隐性需求是显性需求的延续,与显性需求存在着依赖关系,而这往往是测试工程师必须考虑的。

克劳比士质量四项基本原则

质量就是满足要求工作的标准是零缺陷产生质量的系统是防御用不符合要求的代价(PONC)来衡量质量

2.软件质量管理体系

ISO:不针对某个行业的质量标准,是普遍使用的质量管理体系。

CMM:特定为软件行业制定的一套软件质量管理体系。

6Sigma:泛指所有行业的质量管理体系,不仅关注质量,还关注成本、进度等。

3.软件质量特性(重点!)

在ISO9126中定义了衡量软件质量由6大特性、27个子特性组成,如图所示。

以上特性是软件质量的核心。在实际测试活动中,测试工程师需要熟悉每个特性以及特性中的子特性,便于在测试需求的分析以及软件质量的评价中作为标准依据。

1.功能性

功能性(functionality)是指软件在指定的条件下,满足用户明确的和隐含的需求的功能的能力。功能性包含以下5个子特性。

1)适合性:软件为指定的任务和用户目标提供一组合适的功能的能力;(有没有)

2)准确性:软件提供具有足够精确度的正确或符合要求的结果或效果的能力;(对不对)

3)互操作性:软件与一个或更多的规定系统进行交互的能力;

4)保密安全性:软件保护信息和数据的能力;

5)功能性的依从性:软件遵循与功能性相关的标准、约定或法规及类似规定的能力。(行业标准)

2.可靠性

可靠性(reliability)是指软件在指定的条件下,维持规定的性能级别的能力。可靠性有“三规”:规定的环境、规定的时间、规定的性能。

可靠性指标:平均无故障时间(Mean Time To Failure,简称MTTF)、平均恢复时间(Mean Time To Restoration,简称MTTR)、平均恢复时间(Mean Time To Repair,也简称MT-TR)、平均失效间隔时间(Mean Time Between Failures,简称MTBF)。简单说MTTR值越小,说明故障修复时间越短,故障处理响应速度越快。MTBF指越大,说明故障率低,系统可靠性较高。可靠性包含以下4个子特性。

1)成熟性:软件为避免由软件中错误而导致失效的能力;(内部接口规范)

2)容错性:在软件出现故障或者违反指定接口命令的情况下,软件维护规定的性能级别的能力;(外部接口规范)

3)易恢复性:在失效发生的情况下,软件重建规定的性能级别并恢复受直接影响的数据的能力;

4)可靠性的依从性:软件遵循与可靠性相关的标准、约定或法规的能力。

3.易用性

易用性(usability)是指软件在指定的条件下,满足被理解、学习、使用和吸引用户能力。易用性包含以下5个子特性。

1)易理解性:用户理解软件是否合适以及如何能将软件用于特定的任务和使用环境的能力;

2)易学性:用户学习其应用的能力;

3)易操作性:用户操作和控制软件的能力;

4)吸引性:软件吸引用户的能力;

5)依从性:软件遵循与易用性相关的标准、约定、风格或法规的能力。

4.效率

效率(efficiency)是指软件在规定的条件下,相对于所有资源的数量,软件可提供适当性能的能力。功能性包含以下3个子特性。

1)时间特性:在规定条件下,软件执行其功能时,提供适当的响应和处理时间以及吞吐率的能力;

2)资源利用率:在规定条件下,软件执行其功能时,使用合适的资源数量和类别的能力;

3)效率的依从性:软件遵循与效率相关的标准或约定的能力。

5.可维护性

可维护性(maintainability)是指软件可被修改(包含修正、改进或软件环境、需求和功能规格的变化等)的能力。可维护性具备如下“四规”:规定的条件、规定的时间、规定工具和方法、规定的功能。可维护性包含以下5个子特性。

1)易分析性:诊断软件中的缺陷或失效原因或识别待修改部分的能力;

2)易改变性:软件中指定的修改可以被实现的能力;

3)稳定性:软件中避免由于软件修改而造成意外结果的能力;

4)易测试性:软件产品使已修改的软件能被测试的能力;

5)可维护性的依从性:软件遵循与维护性相关的标准或约定的能力。

6.可移植性

可移植性(portability)是指软件从一种环境迁移到另外一种环境的能力。可移植性包含以下5个子特性。

1)适应性:软件无须采用有别于为考虑该软件的目的而准备的活动或手段就可以适应不同的指定环境的能力;

2)易安装性:软件在指定环境中被安装的能力;

3)共存性:软件在公共环境中同与其分享公共资源的其他独立软件共存的能力;

4)易替换性:软件在同样环境下,替代另一个相同用途的指定软件产品的能力;

5)可移植性的依从性:软件产品遵循与可移植性相关的标准或约定的能力。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。