【软件工程】软件质量保证(ISO/IEC 9126质量特性)

考点频率:★★★★☆(选择题常考,六大特性与子特性的匹配是高频考点)
难度:⭐⭐
建议:重点掌握六大质量特性的名称、各自对应的子特性,以及“特性→子特性”的匹配关系

1️⃣ 什么是软件质量?

在讲质量模型之前,先搞清楚一个基本问题:什么是软件质量?

简单说,软件质量就是软件产品满足用户和规定需求的程度。注意这里的关键词是“满足”——不是代码写得漂亮,不是用了多先进的技术,而是能不能让用户用得满意

软件质量包含多个层次:

  • 内部质量:代码本身的质量(可读性、可维护性等)
  • 外部质量:用户使用时感受到的质量(功能对不对、反应快不快等)
  • 过程质量:开发过程是否规范
  • 使用质量:用户在实际使用场景中的体验

把抽象的“质量”变成可量化、可评估的具体指标,就是软件质量模型要做的事。

2️⃣ ISO/IEC 9126软件质量模型

ISO/IEC 9126 是国际标准化组织于1991年发布的软件质量评估国际标准。该模型将软件质量分解为三个层次:

层次内容
第一层:质量特性6个宏观质量维度
第二层:质量子特性每个特性下细分的具体属性(共27个)
第三层:度量指标可量化的衡量标准

该标准于2011年被 ISO/IEC 25010 取代,后者在原有6个特性的基础上增加了安全性和兼容性两个特性。但软考中仍然主要考查ISO 9126的经典六特性模型。

3️⃣ 六大质量特性与二十七个子特性

ISO 9126将软件质量划分为 六大特性27个子特性。六大特性可以用一个口诀记住:“功可易效维移”(功能性、可靠性、易用性、效率、可维护性、可移植性)。

速记口诀功可易效维移——功能、可靠、易用、效率、维护、移植

3.1 功能性(Functionality)

定义:软件在指定条件下使用时,提供满足明确和隐含需求的功能的能力

核心问题:软件的功能对不对?用户要的功能有没有?

子特性含义
适合性(Suitability)软件是否为指定任务提供了合适的功能
准确性(Accuracy)软件提供的功能结果是否精确
互操作性(Interoperability)软件能否与其他系统进行交互
保密安全性(Security)软件能否保护信息和数据不被非法访问
功能性的依从性(Compliance)软件是否遵循相关标准、法规

3.2 可靠性(Reliability)

定义:软件在指定条件下使用时,维持规定的性能水平的能力

核心问题:软件稳不稳定?容不容易崩溃?

子特性含义
成熟性(Maturity)软件避免内部错误扩散导致失效的能力
容错性(Fault Tolerance)软件防止外部接口错误扩散导致失效的能力
易恢复性(Recoverability)系统失效后,恢复原有功能和性能的能力
可靠性的依从性(Compliance)是否遵循可靠性相关标准

3.3 易用性(Usability)

定义:软件被理解、学习、使用和吸引用户的能力

核心问题:用户用起来方不方便?学起来难不难?

子特性含义
易理解性(Understandability)用户能否快速理解软件的交互信息
易学性(Learnability)用户学习使用软件需要付出多大努力
易操作性(Operability)用户操作和控制软件是否方便
吸引性(Attractiveness)软件界面对用户的吸引力
易用性的依从性(Compliance)是否遵循易用性相关标准

3.4 效率(Efficiency)

定义:在指定条件下,相对于所用资源的数量,软件提供适当性能的能力

核心问题:软件跑得快不快?耗资源多不多?

子特性含义
时间特性(Time Behavior)软件处理请求的响应时间和吞吐量
资源利用性(Resource Utilization)软件执行功能时消耗的系统资源
效率的依从性(Compliance)是否遵循效率相关标准

3.5 可维护性(Maintainability)

定义:软件产品被修改的能力,包括修正、优化和适应环境变化。

核心问题:软件好不好改?修一个Bug会不会引发三个新Bug?

子特性含义
易分析性(Analyzability)诊断缺陷或失效原因需要付出多大努力
易改变性(Changeability)进行修改、排错或适应环境变化需要付出多大努力
稳定性(Stability)修改软件造成意外结果的风险有多大
易测试性(Testability)确认修改后的软件是否有效需要付出多大努力
可维护性的依从性(Compliance)是否遵循可维护性相关标准

3.6 可移植性(Portability)

定义:软件产品从一种环境迁移到另一种环境的能力

核心问题:软件换台机器、换个系统还能不能用?

子特性含义
适应性(Adaptability)软件无需额外变动就能适应不同环境的能力
易安装性(Installability)在指定环境下安装软件需要付出多大努力
共存性(Coexistence)软件能否在公共环境中与其他软件共存
易替换性(Replaceability)软件能否替代另一个同用途的软件
可移植性的依从性(Compliance)是否遵循可移植性相关标准

4️⃣ 六大特性速查表(建议截图保存)

质量特性核心问题子特性(部分)
功能性功能对不对?适合性、准确性、互操作性、安全性
可靠性稳不稳定?成熟性、容错性、易恢复性
易用性好不好用?易理解性、易学性、易操作性
效率快不快?时间特性、资源利用性
可维护性好不好改?易分析性、易改变性、稳定性、易测试性
可移植性能不能换?适应性、易安装性、共存性、易替换性

5️⃣ 经典例题

例题1(真题):保密安全性(Security)是ISO/IEC 9126中哪个质量特性的子特性?

A. 可靠性
B. 功能性
C. 效率
D. 可维护性

解析:保密安全性属于功能性的子特性,与适合性、准确性、互操作性并列。选 B


例题2(真题):子特性“成熟性(Maturity)”属于哪个质量特性?

A. 功能性
B. 可靠性
C. 易用性
D. 可维护性

解析:成熟性、容错性、易恢复性都属于可靠性的子特性。选 B


例题3:某软件系统在运行过程中,因第三方接口异常导致系统崩溃。事后团队对系统进行了改进,增强了对外部接口异常的防护能力。这主要提升了软件的哪个质量特性?

A. 功能性
B. 可靠性
C. 易用性
D. 可移植性

解析:增强对外部接口异常的防护能力 → 提升容错性 → 容错性属于可靠性的子特性。选 B

6️⃣ 记忆口诀

六大特性记心间:功能可靠易用效,维护移植不能少。
功能(适合准互安),可靠(成容忍恢复),
易用(理学操吸引),效率(时间与资源),
维护(分改稳测试),移植(适安共替换)。

7️⃣ 小测验(评论区对答案)

以下哪个子特性属于“可维护性”质量特性?
A. 适合性
B. 容错性
C. 易分析性
D. 适应性

🔔 本专栏日更,点击头像 → 专栏《软考中级高频考点》订阅,第一时间接收新内容

#软考中级 #软件设计师 #软件质量 #ISO9126 #质量特性 #软件工程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值