依据GB/T25000标准,设计"软件质量模型",建立软件测试技术体系

 

GB/T25000《系统与软件工程 系统与软件质量要求和评价(SQuaRE)》是参照国际标准化组织ISO/IEC 25000为统一软件质量评判标准而指定的软件质量度量和评价的标准。
该标准是开展中国合格评定国家认可委员会(CNAS)实验室认可软件测评实验室过程中需要参照的重要标准。同时该标准也是实施软件测试的重要参考,通过对该标准的学习,可以帮助我们建立一套组织上有逻辑性、强化性和统一性的软件质量要求和评价体系。

        CNAS软件测评实验室强制性认可准则中明确要求,实验室应具有适当的软件测试方法使用指导书,有措施确保测试用例、测试脚本、测试数据和测试工具的一致、有效;实验室应制定测试计划、测试需求和测试用例及其执行方案,通过文档化方式明确选定的测试方法。

        GB/T25000标准由下图所示的 21 部分组成,其中GB/T 25000.10-2016《系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第10部分:系统与软件质量模型》GB/T 25000.51-2016《系统与软件工程 系统与软件 质量要求和评价(SQuaRE)第 51 部分:就绪可用软件产品(RUSP)的质量要求和测试细则》是建立软件测试技术体系可以参考的部分,GB/T 25000.51尤为重要。

image

GB/T 25000.10 中明确的系统与软件质量模型为GB/T 25000.51提供了依据,模型主要包含:软件质量模型:功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性八大维度。

GB/T 25000.51 给出了就绪可用软件的测试要求和评价细则。明确了:1、质量要求:产品说明质量要求、用户文档集质量要求、软件质量要求(功能性性能效率兼容性易用性可靠性信息安全性维护性可移植性);2、测试文档集要求;3、符合性评价细则。

国标GB 和 国际标准ISO/IEC 对应关系:

  • ISO/IEC 25010   <==>  GB/T 25000.10
  • ISO/IEC 25051   <==>  GB/T 25000.51

一、ISO/IEC 25010 软件质量模型

ISO/IEC 25010 是国际标准化组织(ISO)和国际电工委员会(IEC)联合发布的软件质量评估标准,其最新版本为 ISO/IEC 25010:2023。
该标准定义了软件和系统的质量模型,为设计、开发、测试和维护提供了一套全面的质量要求和评估框架

1.1  标准概述

  • 所属系列及目的:ISO/IEC 25010:2023 软件质量模型,  隶属于《系统与软件工程系统与软件质量要求和评价(SQuaRE) (Systems and software Quality Requirements and Evaluation)系列标准。
    其旨在为信息与通信技术(ICT)产品以及软件产品的质量描述和评估提供一个模型,助力组织确保其 ICT 产品能够满足利益相关者的需求,同时规避潜在的负面后果。
  • 适用范围:适用于 ICT 产品和软件产品,涵盖软件、数据、硬件、通信设施等。
    在整个生命周期中,可供开发者、购买者、质量保证与控制人员以及独立评估者等多个利益相关者使用。
  • 修订内容:对 2011 版中的产品质量管理模型部分进行了修订,将其他部分转移至 ISO/IEC 25002 和 ISO/IEC 25019。
    同时,对产品质量模型的质量特性和子特性进行了修订,新增了安全性等特性及若干子特性,并对部分特性和子特性的名称及定义进行了更精准的命名和修改。

1.2  质量评估框架

  • 明确质量要求:依据不同的利益相关者需求和产品特点,确定具体的质量特性和子特性要求。
  • 建立度量指标:为每个质量特性和子特性建立可量化的度量指标,以便客观地评估产品质量。
  • 进行质量评估:运用既定的度量方法和指标,对产品的质量特性进行评估,确定产品是否满足质量要求。
  • 支持持续改进:借助质量评估的结果,发现产品存在的质量问题和不足之处,为持续改进产品质量提供依据。

1.3  质量特性及子特性

ISO 25010 将软件质量划分为 9 个主要特性,每个特性进一步细化为子特性,形成多层次的质量评估体系:

image

1. 功能适用性(Functional Suitability)

•子特性

  • a.功能完整性:软件覆盖所有用户需求和任务目标的能力,确保无功能缺失。
  • b.功能正确性:输出结果的精确性和准确性,例如科学计算软件的高精度要求。
  • c.功能适当性:功能设计是否简化用户操作,避免冗余步骤。

•新增重点:强调功能需符合新兴技术场景(如人工智能)的需求适应性。

2. 性能效率(Performance Efficiency)

•子特性

  • a.时间特性:响应速度、吞吐率等时间指标,如高并发系统的实时处理能力。
  • b.资源利用性:优化 CPU、内存、网络带宽等资源消耗,避免资源浪费。
  • c.容量:系统参数的最大承载能力,如双十一电商平台的并发用户支持。

•更新:新增对能源消耗的关注(如绿色计算场景)。

3. 兼容性(Compatibility)

•子特性

  • a.共存性:与外部系统共享资源时互不影响,例如多应用同时运行的稳定性。
  • b.互操作性:数据交换与接口兼容性,如 API 标准化设计。

•新增:支持跨平台技术(如容器化部署)的兼容性评估。

4. 交互能力(Interaction Capability)(取代旧版“可用性”)

子特性

  • a.可辨识性:用户能否快速识别功能适用性,如直观的界面设计。
  • b.可学习性:用户学习成本,例如新手引导和文档支持。
  • c.可操作性:操作的便捷性,如快捷键和自动化流程。
  • d.用户错误防护:预防误操作(如数据删除二次确认)。
  • e.包容性:支持残障人士的无障碍访问(如屏幕阅读器兼容)。
  • f.用户粘性(原“用户界面美观性”):界面设计对用户体验的持续吸引力。

5. 可靠性(Reliability)

子特性

  • a.成熟性:长期稳定运行能力,通过平均无故障时间(MTBF)衡量。
  • b.容错性:外部输入异常时的容错处理,如接口参数校验。
  • c.易恢复性:故障后恢复速度,如数据库事务回滚机制。
  • d.可用性(新增):系统可访问时间的百分比(如 99.99% SLA)。

6. 安全性(Security)

子特性

  • a.保密性:数据加密与权限控制,防止未授权访问。
  • b.完整性:防止数据篡改,如区块链技术的哈希校验。
  • c.不可抵赖性:操作日志与数字签名确保行为可追溯。
  • d.可核查性:审计日志支持事后追溯。
  • e.真实性:身份认证机制(如多因素认证)。

•新增:针对 AI 系统的数据隐私保护要求。

7. 维护性(Maintainability)

子特性

  • a.模块化:低耦合架构设计,便于独立修改。
  • b.易分析性:日志和监控工具支持快速故障定位。
  • c.易修改性:代码可读性与重构灵活性。
  • d.易测试性:自动化测试框架支持高效验证。
  • e.可复用性:组件化设计提升代码复用率。

8. 灵活性(Flexibility)(取代旧版“可移植性”)

•子特性

  • a.适应性:跨平台兼容性(如 Java 的“一次编写,到处运行”)。
  • b.易安装性:简化部署流程(如 Docker 容器化)。
  • c.易替换性:系统组件可无缝替换(如微服务架构)。
  • d.可扩展性(新增):支持横向或纵向扩展,如云原生架构。

9. 无害性(Safety)(新增特性)

•子特性

  • a.操作限制:设置安全边界,如工业机器人动作范围限制。
  • b.风险识别:实时监控潜在危险(如自动驾驶的障碍物检测)。
  • c.故障安全:失效时自动进入安全模式(如核电站紧急停机)。
  • d.危险警告:异常状态预警(如医疗设备报警机制)。
  • e.安全集成:与外部安全系统联动(如消防系统与建筑管理平台集成)。

关键更新与对比

  • •新增特性:无害性(Safety)是 2023 版最大变化,针对高风险领域(如医疗、工业自动化)。
  • •子特性调整:
  •         ○原“可用性”扩展为“交互能力”,新增包容性和用户粘性。
  •         ○“可移植性”更名为“灵活性”,强调环境适应与扩展能力。
  •         ○安全性新增“真实性”和“可核查性”,强化数据溯源。
  • •适用范围扩展:支持 AI、云计算、物联网等新兴技术场景的质量评估。

应用建议

  • •安全关键系统:需优先设计无害性(如故障安全机制)和安全性(如数据加密)。
  • •用户体验型产品:关注交互能力的包容性与可操作性(如无障碍设计)。
  • •跨平台开发:利用灵活性的适应性设计(如容器化技术)。

 

1.4  ISO 25010 的应用价值

1.全面性覆盖软件全生命周期的质量需求,从设计到运维均可参考该标准。

2.指导性为开发团队提供明确的质量目标和设计策略,例如:

  • 功能设计中需优先考虑需求覆盖和正确性验证。
  • 性能优化需结合资源利用率与负载能力测试。

3.可衡量性提供具体的度量指标(如故障率、响应时间),减少主观评估偏差。

4.一致性统一的质量框架适用于跨团队协作,确保不同项目遵循相同的质量标准。

1.5  应用指南

1. 设计阶段

•功能适用性:通过需求分析确保功能覆盖完整,并设计验证机制。
•安全性:集成加密技术、访问控制及日志审计功能。
•维护性:采用模块化架构,提升代码可读性和可扩展性。

2. 开发与测试阶段

•性能效率:通过压力测试和资源监控优化算法效率。
•可用性:开展用户测试,评估界面友好性和操作流畅性。

3. 质量保障与评估

•使用 ISO 25010 的质量模型作为测试用例设计的依据,例如:

  • 可靠性测试:模拟高负载和异常场景下的系统稳定性。
  • 兼容性测试:验证与其他系统或硬件的交互能力。

4. 维护与迭代

•基于维护性特性,定期进行代码重构和技术债务管理。
•通过用户反馈优化可用性和功能设计。

1.6  与其他标准的关系

•ISO/IEC 9126:  ISO 25010 是其更新版本,新增了兼容性、安全性等特性,并调整了子特性的分类。
•构件质量评估:基于 ISO 25010 的构件质量模型可用于评估软件组件的可复用性和可靠性,尤其在基于构件的开发(CBSD)中具有重要意义。

1.7  适用场景

•软件开发:指导需求分析、架构设计和代码实现。
•系统集成:确保多组件兼容性和互操作性。
•质量审计:作为第三方评估的依据,例如金融、医疗等高风险领域。

总结

ISO 25010 是提升软件质量的系统性工具,适用于从设计到运维的全生命周期。通过其多维度的质量特性,团队能够更客观地评估和改进产品,降低开发风险并提升用户满意度。实际应用中需结合具体场景灵活调整,例如在安全敏感领域强化安全特性设计,或在用户端产品中优先优化可用性。

二、ISO/IEC 25010:2023 软件质量模型评价认证所材料清单

2.1  组织管理相关材料

公司基本信息文件

  • 营业执照副本,用于证实企业的合法经营身份。
  • 组织机构代码证(若适用),展示组织的机构代码信息。
  • 税务登记证,体现组织的纳税登记状况。
  • 法定代表人身份证明,确认企业法人的具体身份。

质量管理体系文件

  • 质量手册,作为质量管理体系的纲领性文件,应涵盖软件质量方针、目标,以及组织架构与职责分配等内容,明确质量管理的范围、过程及相互关系。
  • 程序文件,包含软件开发过程控制程序、质量记录控制程序、内部审核程序、管理评审程序等,详细描述各项质量活动的执行步骤与要求。
  • 工作指导书,例如软件需求规格说明书编写指南、软件测试用例编写指南等,为具体的操作活动提供详尽的方法与准则。
  • 质量计划,针对特定软件项目制定的质量计划,包括项目质量目标、质量控制措施、质量保证活动安排等内容。

人员资质与培训记录

  • 员工名单,涵盖员工姓名、职位、部门、入职时间等基本信息。
  • 人员资质证书,如软件工程师证书、测试工程师证书等,用以证明员工具备相关的专业技能。
  • 培训记录,包括内部培训和外部培训记录,如培训课程名称、培训时间、培训讲师、参加人员名单、培训考核成绩等,体现组织对员工质量意识和专业技能的持续提升。


2.2  软件项目文档

项目规划文档

  • 项目可行性研究报告,对软件项目在技术、经济、操作等方面的可行性进行分析。
  • 项目计划,包括项目进度计划、资源分配计划、风险管理计划等,明确项目的时间安排、资源需求以及风险应对措施。

需求文档

  • 软件需求规格说明书(SRS),详细阐述软件的功能需求、性能需求、接口需求、用户界面需求等内容,是软件开发的基础与依据。
  • 需求变更记录,记录软件需求在开发过程中的变更情况,涵盖变更申请、变更评估、变更批准、变更实施等过程的记录。

设计文档

  • 软件总体设计说明书,说明软件的体系结构、模块划分、模块之间的接口关系等内容。
  • 数据库设计说明书,描述数据库的概念结构设计、逻辑结构设计和物理结构设计,包括数据表结构、数据关系、数据存储方式等。
  • 详细设计说明书,针对每个软件模块,详细描述其内部算法、数据结构、程序流程等设计细节。

开发文档

  • 程序源代码,这是软件的核心内容,应确保代码具有规范性、可读性和可维护性,并带有适当的注释。
  • 代码审查记录,记录代码审查的过程和结果,包括审查人员、审查时间、发现的问题及整改情况等。
  • 软件开发工具和环境说明,介绍软件开发过程中使用的工具(如编程语言、开发框架、版本控制工具等)和开发环境(如操作系统、服务器配置等)。

测试文档

  • 测试计划,明确测试目标、测试范围、测试策略、测试资源安排、测试进度等内容。
  • 测试用例,详细描述测试场景、输入数据、预期输出等信息,覆盖软件的功能测试、性能测试、兼容性测试等各个方面。
  • 测试报告,记录测试执行情况、测试结果、发现的缺陷及缺陷修复情况等内容,为软件质量评估提供依据。

部署与维护文档

  • 软件部署手册,描述软件的部署步骤、环境配置要求、安装过程中的注意事项等内容,确保软件能够顺利部署到目标环境。
  • 软件维护手册,包括软件的维护策略、常见问题及解决方法、系统备份与恢复方法等,为软件的后期维护提供指导。


2.3  质量评估相关材料

质量度量指标定义文件

  • 依据 ISO/IEC 25010:2023 标准中的质量特性和子特性,定义具体的质量度量指标,例如功能完整性可通过功能点覆盖率来衡量,性能效率中的时间行为可以用响应时间、吞吐量等指标来度量。
  • 对度量指标的计算方法和数据收集方法进行说明,确保质量度量的准确性和一致性。

质量评估记录

  • 内部质量评估报告,包含对软件各个质量特性和子特性的评估结果、评估方法、评估时间等内容,定期对软件质量进行内部评估,以便及时发现问题并采取改进措施。
  • 外部质量评估报告(若适用),如果邀请外部机构对软件质量进行评估,应提供相应的评估报告,包括评估机构资质、评估范围、评估结果等信息。

质量问题跟踪与改进记录

  • 质量问题记录清单,详细记录在质量评估过程中发现的问题,包括问题描述、发现时间、发现环节、严重程度等。
  • 问题跟踪记录,跟踪质量问题的解决过程,包括问题分配、解决措施、解决时间、验证结果等,确保质量问题得到有效解决并防止问题再次出现。


2.4  其他支持性材料

客户反馈记录

  • 客户满意度调查记录,通过问卷调查、电话访谈等方式收集客户对软件的满意度评价,涵盖对软件功能、性能、易用性等方面的反馈。
  • 客户投诉处理记录,记录客户投诉的内容、处理过程和处理结果,及时解决客户问题,提高客户满意度。

合作方相关材料(若适用)

  • 与供应商、外包商等合作方的合作协议,明确双方的权利和义务,特别是在软件质量方面的责任。
  • 合作方的质量评估记录,对合作方提供的产品或服务进行质量评估,确保合作方的工作符合软件质量要求。

 

三、软件测试模型

GB/T 25000.51-2016 《系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第51部分:就绪可用软件产品(RUSP)的质量要求和测试细则》
是开展中国合格评定国家认可委员会(CNAS)实验室认可软件测评实验室过程中需要参照的重要标准。
也是软件测评实验室建立技术体系、申请软件测评实验室认可的重要参考标准依据。

image

 

GB/T 25000.51-2016 《系统与软件工程系统与软件质量要求和评价(SQuaRE)第 51 部分:就绪可用软件产品(RUSP)的质量要求和测试细则》标准
(简称:GB/T 25000.51-2016)是2016年10月13号发布,在GB/T 25000.51-2010的基础上增加“信息安全”及“兼容性”两部分内容,并于2017年5月1号开始正式实施,
要求第三方测评机构依照此标准开展测评活动。

GB/T 25000.51标准的整体结构分为:范围、符合性、规范性引用文件、术语和定义、缩略语、RUSP的要求、测试文档集要求和符合性评价细则。

章节 内容
1、范围 说明了标准规定的内容及标准使用对象,及标准的用途
2、符合性 说明了RUSP符合本标准的条件
3、规范性引用文件 说明了本标准引用的标准文件25000.10
4、术语和定义、缩略语 说明了本标准的相关术语、定义、缩略语
5、 RUSP的要求 说明了RUSP的质量要求:产品说明、用户文档、软件质量
6、测试文档集要求 说明了用于测试RUSP的测试文档集要求
7、符合性评价细则 说明了RUSP软件产品的符合性评价细则

 

其中Chp-5 RUSP的要求、Chp-6 测试文档集要求和 Chp-7 符合性评价细则, 这三部分是需要我们重点研究的部分。

  • 第5章RUSP的要求部分说明了RUSP的质量要求,包括产品说明用户文档软件质量(功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性)
  • 第6章测试文档集要求部分说明了用于测试RUSP的测试文档集要求
  • 第7章说明了RUSP软件产品的符合性评价细则

image

 

接下来的本系列文章将继续为大家展开介绍,如何根据GB/T 25000.51 标准设计软件测试相关程序和文件 :
参考资料:如何利用GB/T25000标准建立测试技术体系
CNAS/CMA软件评测实验室GB/T 25000.51-2016标准检测要点
依据GB/T 25000.51标准,如何开展软件测试

 

3.1  依据GB/T 25000.51标准,如何开展“产品说明”的测试

 产品说明要求:https://www.modb.pro/db/178756

3.2  依据GB/T 25000.51标准,如何开展“用户文档集”的测试

 用户文档集:https://www.modb.pro/db/178758

3.3  依据GB/T 25000.51标准,如何开展“软件八大质量特性”的测试

GB/T 25000.51-2016涵盖软件产品的八大特性:功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性等作为对软件产品测评的主要依据和标准。

image

 功能:https://zhuanlan.zhihu.com/p/566969830
性能效率: https://zhuanlan.zhihu.com/p/567344495          https://www.modb.pro/db/178760
兼容性:https://zhuanlan.zhihu.com/p/568186118
易用性:https://zhuanlan.zhihu.com/p/573130460
可靠性:https://zhuanlan.zhihu.com/p/577331599
信息安全性:https://zhuanlan.zhihu.com/p/581722271
可维护性:https://zhuanlan.zhihu.com/p/585563298
可移植性:https://zhuanlan.zhihu.com/p/586526089

 

3.4  依据GB/T 25000.51标准,如何开展“测试文档集”的测试

测试文档集:https://zhuanlan.zhihu.com/p/588511491
测试计划:https://zhuanlan.zhihu.com/p/595375699
测试说明:https://zhuanlan.zhihu.com/p/597921862
软件测试结果:https://zhuanlan.zhihu.com/p/603082252
测试工具:https://zhuanlan.zhihu.com/p/934723630

3.5  依据GB/T 25000.51标准,如何开展“符合性评价”的测试

符合性评价(上):https://zhuanlan.zhihu.com/p/610024336
符合性评价(下):https://zhuanlan.zhihu.com/p/617541876

 

 

 

 

 

posted @ 2025-07-31 09:56  suntroop  阅读(192)  评论(0)    收藏  举报