ISO9126软件质量模型是评价软件质量的国际标准,由6个特性和27个子特性组成,建议大家深入理解各特性、子特性的含义和区别,在测试工作需要从这6个特性和27个子特性去测试、评价一个软件。这个模型是软件质量标准的核心,对于大部分的软件,都可以考虑从这几个方面着手进行测评。
功能性(Functionality):功能性是指与软件所具有的各项功能及其规定性质有关的一组属性,包括:
a:适合性(Suitability):与规定任务能否提供一组功能以及这组功能的适合程度有关的软件属性。适合程度的例子是面向任务系统中,由子功能构成功能是否合适、表容量是否合适等。
b:准确性(Accuracy):于能否得到正确或相符的结果或效果有关的软件属性。此属性包括计算值所需的准确程度。
c:互操作性(互用性,Interoperability):与同其他指定系统进行交互的能力有关的软件属性。为避免可能与可替换性的含义相混淆,此处用互操作性(互用性)而不用兼容性。
d:依从性(Compliance):使软件遵循有关的标准、约定、法规及类似规定的软件属性。
e:安全性(Security):以防止对程序及数据的非授权的故意或意外访问的能力有关的软件属性。
可靠性(Reliability):可靠性是指在规定运行条件下和规定时间周期内,与软件维护其性能级别的能力有关的一组属性。可靠性反映的是软件中存在的需求错误、设计错误和实现错误而造成的失效情况:
a:成熟性(Maturity):与由软件故障引起失效的频度有关的软件属性。
b:容错性(Fault Tolerance):与在软件故障或违反指定接口的情况下,维持规定的性能水平的能力有关的软件属性。指定的性能水平包括失效防护能力。
c:可恢复性(Recoverability):与在失效发生后重建其性能水平并恢复直接受影响数据的能力,以及为达此目的所需的事件和努力有关的软件属性。
可用性(Usability):可用性是指根据规定用户或隐含用户的评估所做出的关于与使用软件所需要的努力程度有关的一组属性。
a:可理解性(Understandability):与用户为认识逻辑概念及其应用范围所花的努力有关的软件属性。
b:易学性(Learnability):与用户为认识逻辑概念及其应用范围所花的努力有关的软件属性。
c:可操作性(Operability):与用户为操作和运行控制所需的努力有关的软件属性。
效率(Efficiency):效率是指在规定条件下,与软件性能级别和所使用资源总量之间的关系有关的一组属性。
a:时间特性(Time Behaviour):与软件执行其功能时响应和处理事件及吞吐量有关的软件属性。
b:资源特性(Resource Behaviour):与在软件执行其功能时所使用的资源数量及其使用时间有关的软件属性。
可维护性(Maintainability):可维护性是指与软件进行修改的难易程度有关的一组属性。
a:可分析性(Analysability):与为诊断缺陷 或失效原因及为判定待修改的部分所需努力有关的软件属性。
b:可改变性(Changeability):与进行修改、排除错误或适应环境变化所需努力有关的软件属性。
c:稳定性(Stability):与修改所造成的未预料结果的风险有关的软件属性。
d:可测试性(Testability):与确认已修改软件所需的努力有关的软件属性。此子特性的含义可能会被研究中的修改加以改变。
可移植性(Portability):可移植性是指与一个软件从一个环境转移到另一个环境运行的能力有关的一组属性。
a:适应性(Adaptability):与软件无须采用有别于为该软件准备的活动或手段就可能适应不同的规定环境有关的软件属性。
b:可安装性(Installability):与在指定环境下安装软件所需努力有关的软件属性。
c:依从性(一致性,Conformance):使软件遵循与可移植性有关的标准或约定的软件属性。
d:可替换性(Replaceability):与软件在该软件环境中用来替代指定的其他软件的机会和努力有关的软件属性。为避免和互用性的含义混淆,此处用可替换性而不用兼容性。