文章目录
- 3. 测试阶段
- 3.1 头脑风暴和优先场景(第7步)
- 3.1.1 理论部分
- 3.1.2 示例
- 3.2 分析架构方法(第8步)
- 3.2.1 调查架构方法
- 1)安全性
- 2)性能
- 3.2.2 创建分析问题
- 3.2.3 分析问题的答案
- 胡佛架构
- 银行体系结构
- 3.2.4 找出风险、非风险、敏感点和权衡点。
- 1)风险与非风险点
- 2)敏感点
- 3)权衡点。
- 4. 报告ATAM阶段
3. 测试阶段
3.1 头脑风暴和优先场景(第7步)
3.1.1 理论部分
- 使用头脑风暴的情景:
- 用例场景:利益相关者是最终用户
- 增长情景:代表了架构发展的方式
- 探索性场景:代表架构中极端的增长形式
- 得到优先场景的活动:
- 收集头脑风暴之后的产生的情景
- 利益相关者投票选出他们认为最重要的场景
- 合并与相同质量属性有关的所有场景
- 利益相关者投票选出他们认为最重要的场景
- 票数=场景总数×30%
- 场景按总票数排序
- 划分截止线,截止线以上场景为
头脑风暴优先情景
- 将
优先头脑风暴优先情景
列表合并到效用树中
3.1.2 示例
注意:
以下内容主要演示该步骤流程,不需要记忆,旨在辅助理解该步骤
- 头脑风暴情景列表:
- 利益相关者投票:
- 分配给每个利益相关者的票数定义如下:票数=情景总数×30%=0.3×16(到最近的整数)=5
- 三个利益相关者都有5张投票
- 投票后,对结果排序
- 化分截止线,取前8个情景(其他弃掉)
- 结果如下表:
- 按质量属性将这些情景重新统计
教材前边说要合并到质量树,因为示例中没有效用树,因此只处理头脑风暴中优先场景
3.2 分析架构方法(第8步)
-
概述
- 调查、分析上一步产生的“高优先级的质量属性”
- 方法同第6步“调查和分析”
- 区别:第6步的“高优先级质量属性”来自效用树
- 分析架构设计方案中的风险、非风险、敏感点和权衡点
- 调查、分析上一步产生的“高优先级的质量属性”
-
四个阶段
3.2.1 调查架构方法
1)安全性
-
胡佛架构:安全性高
使用数据封装,满足安全性
-
银行体系结构: 安全性低
- 特定于应用程序的信息被嵌入到许多组件中,数据机密性低
- 应用程序处理程序仅由事件管理器调用,说明也有一定的安全性
2)性能
- 胡佛架构:性能高
执行任何给定流程所涉及的组件都很少
- 银行体系结构:性能低
执行任何给定流程所涉及的组件都很多
3.2.2 创建分析问题
以下是利益相关方收集的分析问题清单,并基于高投票数的情景:
①系统是否允许未经授权的访问?(安全)
②架构是否描绘数据机密性?(安全)
③架构是否以最快的速度处理任何任务?(性能)
3.2.3 分析问题的答案
胡佛架构
①系统是否允许未经授权的访问?
在组件层面,胡佛的架构中未经授权的访问受到限制。但是,在应用程序级别,如果需要,可以通过修改应用程序组件来限制访问。
②架构是否描绘数据机密性?
如前所述,特定于应用程序的信息并未嵌入组件的不同部分,因此数据得到了很好的保护。
③架构是否以最快的速度处理任何任务?
由于执行任何任务所涉及的组件数量极少,并且每个组件中的处理量在此架构中最小,因此后者以最快的速度执行操作。
银行体系结构
①系统是否允许未经授权的访问?
在组件级别,某些组件受到限制,而体系结构中的大多数组件都可用于访问未经授权的组件。
②架构是否描绘数据机密性?
考虑到应用程序特定的信息在许多组件中可用,这些信息分散在架构中,因此不存在数据机密性。
③架构是否以最快的速度处理任何任务?
由于涉及事件处理的组件数量很多,因此此架构不能以最快的速度执行操作。
3.2.4 找出风险、非风险、敏感点和权衡点。
1)风险与非风险点
2)敏感点
- 数据保密级别对嵌入应用程序的地点数量很敏感
- 执行任务的平均速度对处理任务所涉及的组件数量敏感
3)权衡点。
- 对象:刚才得出的敏感点+步骤6中的敏感点
- 得出以下权衡点。
- 应用程序嵌入的地点数量
- 处理任务所涉及的组件数量
- 胡佛架构:没有权衡点
- 银行架构:两个权衡点都有
4. 报告ATAM阶段
- TAM团队将他们的发现呈现给利益相关者
- 发现通常包括:
- 效用树
- 一组生成的场景
- 一组分析问题
- 确定的风险和非风险
- 确定的架构方法