软件质量及软件质量模型
软件质量是指软件产品满足基本需求及隐式需求的程度。软件产品的基本需求是指其能满足软件开发时所规定需求的特性,这是软件产品最基本的质量要求;其次是软件产品满足隐式需求的程度。例如:研发一款打字软件,基本需求就是这款软件可以正常的打字,以及用键盘,六宫格,手写输入等方式,隐式需求就是设计的美观,字体,颜色,表情包等。
从软件质量的定义,可将软件质量分为3个层次,具体如下。
(1)满足需求规定:软件产品符合开发者明确定义的目标,并且能可靠运行。
(2)满足用户需求:软件产品的需求是由用户产生的,软件最终的目的就是满足用户需求,解决用户的实际问题。
(3)满足用户隐式需求:除了满足用户的显式需求,软件产品如果满足用户的隐式需求,即潜在的可能需要在将来开发的功能,将会极大地提升用户满意度,这就意味着软件质量更高。
所谓高质量的软件,除了满足上述需求之外,对于内部人员来说,它应该也是易于维护与升级的。
软件质量模型
在ISO9126定义了软件质量模型有6大特性,27自特性组成,如下图
软件质量模型
软件质量特性是软件质量的核心,在测试活动中,测试工程师需要熟悉每个特性及子特性的功能及特征,便于在需求分析以及在软件质量评价中作为标准依据。
(1)功能性:在指定条件下,软件满足用户显式需求和隐式需求的能力。
1)适用性:软件为指定的用户提供合适功能的能力。
2)准确性:软件能够提供足够的正确或者满足规定的效果。
3)互操作性:软件在一个或者更多的规定系统中进行交互的能力。
4)保密安全性:软件保护数据和信息的能力。
5)功能性依从性:软件遵循与功能性相关的标准、约定或法规及类似规定的能力。
(2)可靠性:在指定条件下使用时,软件产品维持规定的性能级别的能力。
1)成熟性:软件避免错误而失效的能力。
2)容错性:软件出现故障或者输入错误的指令后,软件维护规定性能级别的能力。
3)已恢复性:在失效的情况下,软件重建功能的性能级别及恢复能力。
4)可靠性的依从性:软件遵循与可靠性相关的标准、约定或法规的能力
(3)可使用性:在指定条件下,软件产品被使用、理解、学习的能力。
(4)效率:在指定条件下,相对于所有资源的数量,软件产品可提供适当性能的能力。
1)时间特性:在规定条件下,软件执行其功能时,提供适当的响应和处理时间以及吞吐率的能力。
2)资源利用率:在规定条件下,软件在运行时使用合适资源数量,例如:下载游戏不能占用手机太多空间。
3)效率的依从性:软件遵循与效率相关的标准或约定的能力。
(5)可维护性:指软件产品被修改的能力。修改包括修正、优化和功能规格变更的说明。
1)易分析性:诊断软件中的缺陷或失效原因或识别待修复部分的能力。
2)易改变性:软件中指定的修改可以实现的能力。
3)稳定性:软件中避免由于软件修改而造成意外结果的能力。
4)易测试性:软件修改容易被测试的能力。
5)可维护性的依从性:软件遵循与维护性相关的标准或约定的能力。
(6)可移植性:指软件产品从一个环境迁移到另一个环境的能力。
1)适应性:可以适应不同的环境。
2)易安装性:在一个,环境中容易安装的能力。
3)共存性:与其他软件可能在同一个环境中共存的能力。
4)易替代性:可以替换另一个相同用途产品的能力。
5)可移植性的依从性:软件产品遵循与可移植性相关的标准或约定的能力。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!