Author:赵志乾
Date:2024-07-20
Declaration:All Right Reserved!!!
1. 概念
系统质量属性是一个系统的可测量或可测试的属性,用于描述系统满足利益相关者需求的程度;基于软件系统的生命周期,可将系统质量属性分为开发期质量属性和运行期质量属性。
质量属性场景是一种精确描述系统质量属性的手段,其本质是一个具体的质量属性需求,是利益相关者与系统间交互的简短陈述;主要包含6个部分:
- 刺激源:生成该刺激的实体;
- 刺激:当刺激到达系统时需要考虑的条件;
- 环境:刺激在某些条件内发生;
- 制品:某个制品被刺激;
- 响应:刺激到达后系统所采取的行动;
- 响应度量:当响应发生时,应当能以某种方式对其进行度量,以便对需求进行测试;
2. 质量属性场景描述
质量属性场景主要关注可用性、可修改性、可测试性、性能、易用性和安全性6大类;
- 可用性质量属性场景:主要关注系统故障发生的频率、出现故障时会发生什么、允许系统有多长时间非正常运行、何时可以安全地出现故障、如何防止故障的发生以及发生故障时要求进行哪种通知;
- 可修改性质量属性场景:主要关注系统在改变功能、质量属性时需要付出的成本和难度,其可能发生在系统设计、编译、构建、运行等多种情况下;
- 可测试性质量属性场景:主要关注系统测试过程中的效率,发现系统缺陷或故障的难易程度等;
- 性能:主要关注系统的响应速度,可通过效率、响应时间、吞吐量、负载等来客观评价;
- 易用性质量属性场景:主要关注用户在使用系统时的难易程度,包括学习曲线、完成操作的效率、对系统使用过程的满意程度等;
- 安全性质量属性场景:主要关注系统在安全性方面的要素,衡量系统在向合法用户提供服务的同时,能够阻止非授权用户使用的能力;
3. 面向架构评估的质量属性
在架构评估过程中,评估人员所关注的正是系统的质量属性,且评估方法普遍关注以下8种质量属性:
- 性能:系统的响应能力;
- 可靠性:系统在意外或错误使用的情况下维持系统功能特性的基本能力;
- 可用性:系统能够正常运行的时间比例;
- 安全性:系统能够向合法用户提供服务,并拒绝向非授权用户提供服务;主要划分为机密性、完整性、不可否认性以及可控性等;
- 可修改性:能够快速地以较高的性价比对系统进行变更的能力;主要包括4个方面:可维护性、可扩展性、结构重组、可移植性;
- 功能性:系统能够完成预期工作的能力;
- 可变性:架构经扩充或变更而成为新架构的能力;
- 互操作性:系统同其他系统或自身环境间的交互作用;