软件质量属性
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
灵活性(Flexibility) 也称为可扩充性、可扩张性、可延伸性和可扩展性。 用于测量向产品中添加新功能的容易程度。 5
12.2.1 对用户重要的属性
完整性(Integrity) 主要处理防止非法访问系统功能、防止数据丢失、保护软 件免受病毒入侵、保护输入到系统的数据的保密性和安全 性等问题。
3
12.2 定义质量属性
分析人员要求用户代表为每一个属性设一个等级 其范围是从1级(表示不必多加考虑的属性)到5级(表示极 其重要的属性)。
指定与用户的质量期望相冲突的系统特性。 询问用户哪些是他们所不能接受的性能、易用性、完整性 或可靠性。
分析人员与用户一起为每一项属性生成特定的、可测量的和 可验证的需求。
可重用性(Reusability) 确定新系统中哪些元素需要用方便于代码重用的方法设计, 或者规定应该创建作为项目副产品的可重用组件库。 8
12.2.2 对开发人员重要的属性
可测试性(Testability) 也称为可验证性(verifiability) 指的是测试软件组件或集成产品以查找缺陷的简单程度。
注意:研究质量属性时,不要忽略程序维护人员这一类涉众。 4
12.2.1 对用户重要的属性
可用性(Availability) 可用性用于衡量预定的可用时间(up time) 在这期间系统是真正可用并且是完全可操作的。
有效性(Efficiency) 有效性用来衡量系统在利用处理器的处理能力、磁盘空间、 内存或通信带宽等方面的表现如何。
第12章 软件质量属性
软件质量属性或质量因素是系统非功能性需求的一部分。 产品的易用性、运行速度、出错频率,以及处理异常情况 的能力。
质量属性很难定义,但它们经常可以区分产品是只完成了其 应该完成的任务呢,还是使客户感到很满意?
从技术的角度来看 质量属性可以影响重要的构架和设计决策。
质量必须由客户和那些构建、测试和维护软件的人员从多个 角度来进行定义。 2
互操作性(Interoperability)
互操作性表明了系统与其他系统交换数据和服务的难易程度。
可靠性(Reliability)
软件无故障执行指定时间的概率。
6
12.2.1 对用户重要的属性
健壮性(Robustness)
当系统遇到非法的输入数据、相连接的软件组件或硬件组件的缺陷, 以及预料不到的操作情况时,能继续正确运行功能的可能性。
12.6 实现非功能性需求
质量属性类型
完整性、互操作性、健壮性、易用 性、安全防护性
可能的 技术信 息类别
功能性 需求
可用性、有效性、灵活性、操作性、 系统构
可靠性
架
互操作性、易用性
设计限 制
灵活性、可维护性、可移植性、可 靠性、可重用性、可测试性、易用 性
可移植性
设计原 则
实现限 制
虽然质量属性是非功能性 需求,但它们能够导致衍 生的功能性需求、设计原 则或其他类型的技术信息, 这些信息将产生期望的质 量特性。
12.1 质 量 属 性
质量属性可以根据不同的标准
主要对用户重Leabharlann Baidu要的属性
来分类:
可用性
根据属性能否在运行时进 有效性
行识别。
灵活性
将属性分为主要对用户很 完整性
重要的可见的属性与主要 对技术人员有意义的质量 属性。
互操作性 可靠性 健壮性
易用性
主要对开发人 员重要的属性 可维护性 可移植性 可重用性 可测试性
用户和开发人员必须确定, 可用性
有效性
与其他属性相比哪些属性 灵活性
更为重要
完整性 互操作性
可维护性
当他们制定决策时,必须 可移植性
始终遵照这些优先级。
可靠性 可重用性
健壮性
可测试性
易用性
性用性可效性有活性灵整性完作性操护互性维植可移性可靠性可用性重壮可性键试测性可用易
12
12.5 属性的折中方案
易用性(Usability)
衡量准备输入、操作和理解产品输出所需要的工作量。
7
12.2.2 对开发人员重要的属性
可维护性(Maintainability) 表明了纠正缺陷或修改软件的简单程度,它取决于理解软 件、更改软件和测试软件的简单程度。
可移植性(Portability) 用来度量把一个软件从一种运行环境移植到另一种运行环 境所需的工作量。
9
12.3 性 能 需 求
性能需求定义了系统必须多好和多快地完成专门的功能,包 括: 速度 呑吐量 处理能力 定时
注意: 别忘了考虑怎样评估产品,以弄清楚产品是否满足了其质量属性。 不能验证的质量需求与不能验证的功能性需求几乎没有什么不同。
10
12.4用Planguage定义非性需求
Planguage规划语言包括 一组丰富的关键字集,可以精确地表述质量属性和其他项 目目标。
性能需求的Planguage版本:
AMBITION(目标) SCALE(度量单位) METER(计量) MUST(最低标准) PLAN(一般标准) base user platform DEFINED(定义的基础用户平台)
11
12.5 属性的折中方案
不可避免地要对某些属性 组合进行折中考虑。
14
作业
从表12.1中确定若干可能对大作业案例项目的用户至关重要 的质量属性。为每个属性构想几个问题,这将有助于用户清 楚地表达他们的期望。根据用户的回答,为每一个重要属性 写出一两个具体的目标。
用Planguage自己编写一条质量属性需求。
15
为了达到产品特性的最佳平衡,我们必须在需求获取阶段识 别、指定相关的质量属性,并且为之确定优先级。如: 如果软件必须在多个平台上运行(可移植性),那么就不要 期望系统最大程度地满足易用性。 对于高度安全的系统,很难完全测试其完整性需求。可重 用的类组件或与其他应用程序的互操作可能会破坏其安全 机制。 高度健壮的代码将缺乏有效性,因为它要进行数据确认和 错误检查。 13
12.2.1 对用户重要的属性
完整性(Integrity) 主要处理防止非法访问系统功能、防止数据丢失、保护软 件免受病毒入侵、保护输入到系统的数据的保密性和安全 性等问题。
3
12.2 定义质量属性
分析人员要求用户代表为每一个属性设一个等级 其范围是从1级(表示不必多加考虑的属性)到5级(表示极 其重要的属性)。
指定与用户的质量期望相冲突的系统特性。 询问用户哪些是他们所不能接受的性能、易用性、完整性 或可靠性。
分析人员与用户一起为每一项属性生成特定的、可测量的和 可验证的需求。
可重用性(Reusability) 确定新系统中哪些元素需要用方便于代码重用的方法设计, 或者规定应该创建作为项目副产品的可重用组件库。 8
12.2.2 对开发人员重要的属性
可测试性(Testability) 也称为可验证性(verifiability) 指的是测试软件组件或集成产品以查找缺陷的简单程度。
注意:研究质量属性时,不要忽略程序维护人员这一类涉众。 4
12.2.1 对用户重要的属性
可用性(Availability) 可用性用于衡量预定的可用时间(up time) 在这期间系统是真正可用并且是完全可操作的。
有效性(Efficiency) 有效性用来衡量系统在利用处理器的处理能力、磁盘空间、 内存或通信带宽等方面的表现如何。
第12章 软件质量属性
软件质量属性或质量因素是系统非功能性需求的一部分。 产品的易用性、运行速度、出错频率,以及处理异常情况 的能力。
质量属性很难定义,但它们经常可以区分产品是只完成了其 应该完成的任务呢,还是使客户感到很满意?
从技术的角度来看 质量属性可以影响重要的构架和设计决策。
质量必须由客户和那些构建、测试和维护软件的人员从多个 角度来进行定义。 2
互操作性(Interoperability)
互操作性表明了系统与其他系统交换数据和服务的难易程度。
可靠性(Reliability)
软件无故障执行指定时间的概率。
6
12.2.1 对用户重要的属性
健壮性(Robustness)
当系统遇到非法的输入数据、相连接的软件组件或硬件组件的缺陷, 以及预料不到的操作情况时,能继续正确运行功能的可能性。
12.6 实现非功能性需求
质量属性类型
完整性、互操作性、健壮性、易用 性、安全防护性
可能的 技术信 息类别
功能性 需求
可用性、有效性、灵活性、操作性、 系统构
可靠性
架
互操作性、易用性
设计限 制
灵活性、可维护性、可移植性、可 靠性、可重用性、可测试性、易用 性
可移植性
设计原 则
实现限 制
虽然质量属性是非功能性 需求,但它们能够导致衍 生的功能性需求、设计原 则或其他类型的技术信息, 这些信息将产生期望的质 量特性。
12.1 质 量 属 性
质量属性可以根据不同的标准
主要对用户重Leabharlann Baidu要的属性
来分类:
可用性
根据属性能否在运行时进 有效性
行识别。
灵活性
将属性分为主要对用户很 完整性
重要的可见的属性与主要 对技术人员有意义的质量 属性。
互操作性 可靠性 健壮性
易用性
主要对开发人 员重要的属性 可维护性 可移植性 可重用性 可测试性
用户和开发人员必须确定, 可用性
有效性
与其他属性相比哪些属性 灵活性
更为重要
完整性 互操作性
可维护性
当他们制定决策时,必须 可移植性
始终遵照这些优先级。
可靠性 可重用性
健壮性
可测试性
易用性
性用性可效性有活性灵整性完作性操护互性维植可移性可靠性可用性重壮可性键试测性可用易
12
12.5 属性的折中方案
易用性(Usability)
衡量准备输入、操作和理解产品输出所需要的工作量。
7
12.2.2 对开发人员重要的属性
可维护性(Maintainability) 表明了纠正缺陷或修改软件的简单程度,它取决于理解软 件、更改软件和测试软件的简单程度。
可移植性(Portability) 用来度量把一个软件从一种运行环境移植到另一种运行环 境所需的工作量。
9
12.3 性 能 需 求
性能需求定义了系统必须多好和多快地完成专门的功能,包 括: 速度 呑吐量 处理能力 定时
注意: 别忘了考虑怎样评估产品,以弄清楚产品是否满足了其质量属性。 不能验证的质量需求与不能验证的功能性需求几乎没有什么不同。
10
12.4用Planguage定义非性需求
Planguage规划语言包括 一组丰富的关键字集,可以精确地表述质量属性和其他项 目目标。
性能需求的Planguage版本:
AMBITION(目标) SCALE(度量单位) METER(计量) MUST(最低标准) PLAN(一般标准) base user platform DEFINED(定义的基础用户平台)
11
12.5 属性的折中方案
不可避免地要对某些属性 组合进行折中考虑。
14
作业
从表12.1中确定若干可能对大作业案例项目的用户至关重要 的质量属性。为每个属性构想几个问题,这将有助于用户清 楚地表达他们的期望。根据用户的回答,为每一个重要属性 写出一两个具体的目标。
用Planguage自己编写一条质量属性需求。
15
为了达到产品特性的最佳平衡,我们必须在需求获取阶段识 别、指定相关的质量属性,并且为之确定优先级。如: 如果软件必须在多个平台上运行(可移植性),那么就不要 期望系统最大程度地满足易用性。 对于高度安全的系统,很难完全测试其完整性需求。可重 用的类组件或与其他应用程序的互操作可能会破坏其安全 机制。 高度健壮的代码将缺乏有效性,因为它要进行数据确认和 错误检查。 13