当前位置:文档之家› 《软件质量属性》课件

《软件质量属性》课件


12
一、质量属性场景
《软件质量属性》
13
我们通常考虑如下质量属性
系统质量属性
可用性Availability 可修改性 性能 安全性 可测试性 易用性
其他如商业属性(上市时间)、概念属性等,在本课 程中不讨论
《软件质量属性》
14Βιβλιοθήκη 可用性Availability
Availability refers to the ability of a system to mask or repair faults such that the cumulative service outage period does not exceed a required value over a specified time interval
质量属性 Quality Attribute
《软件质量属性》
1
主要内容
一、质量属性场景 二、理解质量属性 三、实现质量属性的战术 四、设计架构
《软件质量属性》
2
质量属性的定义
A quality attribute (QA) is a measurable or testable property of a system that is used to indicate how well the system satisfies the needs of its stakeholders.
2. Quality attribute requirements
These requirements are satisfied by the structures and behaviors of the architecture.
3. Constraints:a design decision that’s already
可用性,通常关注如下方面:
系统故障发生的频度、出现故障时会发生什么情况(会出人 命吗)、允许系统非正常运行多久、如何防止故障发生、发 生故障时通知给哪里,等
区分故障failure\错误error\过错、责任fault
故障产生的原因即过错责任
Fault和failure之间的状态,称之为error
《软件质量属性》
5
构架和质量属性之间的关系
构架不能独自实现质量属性
构架为质量属性的实现打下了基础,但不关注实现细节的话, 这个基础就失去了意义。
复杂系统中,不能孤立地实现质量属性
例如,为了可靠性,增加冗余处理器和进程,保证不会因单 点故障使系统崩溃。但这样对安全性不利,系统会有更多的 地方可能会遭到入侵
《软件质量属性》
16
Hazard analysis:is a technique that attempts to catalog the
hazards that can occur during the operation of a system.
Catastrophic灾难性
This kind of failure may cause a crash. This failure represents the loss of critical function required to safely fly and land aircraft.
刺激 刺激源
制品 环境
响应
响应度量
《软件质量属性》
9
质量属性的一般场景
《软件质量属性》
10
可用性场景的一个例子
外部 系统
未曾 预料 的消 息
进程
正常 操作
通知操 作员继 续操作
没有停机
《软件质量属性》
11
可修改性场景的一个例子
希望
改变
开发
用户
人员 界面
代码
修改不
设计时 产生副 作用
3小时内
《软件质量属性》
刺激源stimulus source
核 心
生成刺激的实体(计算机、人-可信或不可信)
响应response
刺激到达后采取的反应
响应度量response measure
对响应效果进行度量
环境:
刺激发生时的各种条件
制品:
可能是系统,或系统的一部分
《软件质量属性》
8
用如下方式描述质量属性场景
系统的功能不能决定系统的架构 质量是系统的属性,而功能是系统的目标
《软件质量属性》
4
构架和质量属性之间的关系
质量属性不完全依赖于设计、实现和部署
易用性涉及构架和非构架两方面的问题
- 系统能否为用户提供取消操作?——这一类属于构架层次的问题 - 什么样的布局最直观?什么样的字体最清晰?——这属于详细设计
质量属性是一个系统的可测量或可测试的属性,它被用来描 述系统满足利益相关者需求的程度
本章任务
怎样描述质量属性
怎样达成质量属性
怎样应用质量属性(在架构决策时)
《软件质量属性》
3
系统的架构、功能和质量属性
软件开发时人们往往关注功能
实情:导致软件系统修改的主因不是功能,而是系统难以维 护、扩展、被黑客破坏等。
《软件质量属性》
15
可用性Availability
通常,将可用性定义为
α=
平均正常工作时间(MTBF)
平均正常工作时间(MTBF)+平均修复时间(MTTR)
不计算正常停机时间
where MTBF refers to the mean time between failures and
MTTR refers to the mean time to repair.
《软件质量属性》
6
质量属性的来源:3类需求
1. Functional requirements
These requirements are satisfied by including an appropriate set of responsibilities within the design.
been made. satisfied by accepting the design decision and
reconciling it with other affected design decisions.
《软件质量属性》
7
描述质量属性需求的6个部分
刺激stimulus
是到达系统的事件event
的部分,不属于构架设计。
可修改性:
- 划分功能的方式——这属于架构层次的问题
- 模块中的编码技巧——非架构层次问题
系统性能:
- 组件间通讯数量、分配给每个组件的功能、资源共享的方式,等, 这些都属于架构层次的问题
- 实现某功能采用的算法、如何编码这些算法,等,都会影响系统
性能,但属于非构架层次的问题。
相关主题