note:从这章开始,是考试的重点。熟背,考试的题型参考期末复习PPT即可。
质量属性场景:
故障,相关后果
定义:在需要是可用的概率,停机不算
α的定义
α
=
平均无故障时间
平均无故障时间
+
故障修复时间
\alpha = \frac{平均无故障时间}{平均无故障时间 + 故障修复时间}
α=平均无故障时间+故障修复时间平均无故障时间
failure的特性:可感知的,未达到声称级别的功能即为错误。
可用性的质量属性场景:
关注:改什么,谁改,什么时候改,改的代价
质量属性场景
主要是系统响应事件的花费时间,事件数量,到来形式
质量属性场景
保证正常用户,阻挡非法攻击
安全性的不同类型
质量属性场景
源:攻击可能由人或者其他系统发起;可能先前被识别,或者当前未知。
刺激物
对系统的攻击(或者试图破坏系统安全保护),常见的形式:
制品:系统所提供的服务或系统中的数据
环境:系统可能处于不同的情况下——联网/未联网,在线/下线,在防火墙外/在防火墙内
响应:
度量
软件测试为了发现bug
测试的重要性
测试的质量属性场景
源:测试可能由不同的角色发起(开发者、单元测试人员、集成测试人员、系统管理员、用户……)
刺激物:里程碑
制品:程序,设计,系统
环境:设计阶段、开发阶段、编译时,部署阶段、正常运行时
响应
响应的衡量标准
用户希望完成任务有多容易
质量属性场景
源:终端用户
刺激物:
终端用户希望学会使用,提高效率,减少错误
制品:整个系统
环境:运行时或者部署时
响应:
系统响应用户的需求
响应度量
{
错误检测
{
p
i
n
g
/
e
c
h
o
H
e
a
r
t
b
e
a
t
s
:被监控组件向监控组件发出周期性信号
异常
错误恢复
{
投票机制
主动冗余
被动冗余
内测
检查点
/
回滚
错误避免
{
事务
关闭服务
进程监控
{
局部化修改
{
保持语义的高内聚性
考虑未来可能会发生的改变
模块泛化
选项变少
抽象公共服务
避免连锁反应
{
保持已有的接口
使用中间层
信息隐藏
延迟绑定时间
{
运行时注册
配置文件
多态
{
资源需求
{
提升计算能力
减少处理的数据数量
管理事件达到的频率
限制采样率
资源管理
{
长任务设置上限执行时间
限制事务队列的长度
利用并发机制
资源仲裁:使用调度策略
{
F
I
F
O
固定优先级
动态优先级
{
抵御攻击
{
用户认证
用户授权
保证数据的机密性
保证数据的完整性
限制访问:防火墙
攻击检测:入侵检测系统
攻击恢复
{
数据备份
攻击者识别
{
管理输入输出
{
记录
/
回放,重演
接口和实现分离
内部检测:内部监控器
{
I
D
E
断点
{
运行时策略
{
保证用户模型
保证系统模型
保证任务模型
设计时策略
{
U
I
界面与其他分离:
M
V
C
具体:
{
系统给与用户适当反馈
系统猜测用户要完成的任务
系统支持撤销
系统给用户提供一致性体验
用户接口分离