架构评估 ATAM SAAM
阅读数:324 评论数:0
跳转到新版页面分类
架构学
正文
一、架构评估方法
1、基于调查问卷或检查表的方式
该方式的关键是要设计好问卷或检查表,它充分利用系统相关人员的经验和知识,获得对架构的评估。其缺点是在很大程序上依赖于评估人员的主观推断。
2、基于场景的方式
应用在ATAM和SAAM中,它是通过分析软件架构对场景(也就是对系统的使用或修改活动)的支持程序,从而判断该架构对该一场景所代表的质量需求的满足程序。
3、基于度量的方式
将软件系统架构完全量化,通过一些客观的数字指标来评估架构。
二、敏感点和权衡点
敏感点只影响一个软件质量属性,而权衡点则同时影响多个质量属性,有时不同属性间还会互相冲突。
1、敏感点
敏感点是指为了实现某特定的质量属性,一个或多个系统组件所具有的特性。
2、权衡点
权衡点指影响多个质量属性,并对多个质量属性来说都是敏感点的系统属性。
三、ATAM评估
Architecture Tradeoff Analysis Method。
ATAM通过理解体系结构和分析体系结构,分为四个阶段,9个步骤。
1、描述和介绍阶段
(1)描述ATAM方法
即评估小组负责人向参加会议的风险承担者介绍ATAM评估方法,让大家清楚下面要做什么,每个人的角色和任务。
(2)描述业务动机
项目经理从业务角度介绍系统的概况,一般包括业务环境、背景、业务约束条件、技术约束、质量属性需求等内容。
(3)描述体系结构
首席设计师或设计小组对体系结构进行详略适当的介绍,包括技术约束,与本地交互的其他系统,用以满足质量属性要求的体系结构方法(功能、模块、进程、硬件 )。
2、调查和分析阶段
(1)确定体系结构方法
由设计师确定体系结构方法,由分析小组捕获,但不进行分析。
(2)生成质量属性效用树
评估小组、设计小组、管理人员和客户代表一起确定系统最重要的质量属性目标,并对这些目标设置优先级和细化。
以树的形式表现质量属性的细化。根是效用,接下来是质量属性层,再下一层是质量属性详细描述分析,最后一层是详细的场景。
(3)分析体系结构方法
3、测试阶段
(1)讨论分级场景
(2)分析体系结构方法
4、报告阶段
描述评估结构。
四、SAAM架构评估方法
SAAM(Scenario-Based Architecture Analysis Method)是一种软件架构分析方法,用于评估系统架构的质量和效能。它是在1990年代初由Rick Kazman、Len Bass 和 Gregory Abowd 等人在软件工程研究所(Software Engineering Institute, SEI)开发的。SAAM 是面向场景的分析方法,主要关注于软件架构设计的非功能性需求,如可维护性、扩展性、可复用性等。
ATAM比较复杂,耗时较长,而SAAM(软件架构分析方法)相对简单一些,包含六个步骤。
1、形成场景
指的是风险承担者们集中在一起,集体讨论,提出一个个系统需求场景。记录人员把这些场景记录在册,形成文档的过程。
2、描述体系结构
架构设计师对待评估的体系结构进行适当的描述,包括静态属性和动态特征,可以用自然语言也可以用形式化手段,以让参加评估的所有人员都能充分理解。
这一步可以和上一步合并在一起,重复进行多次。
3、对场景进行分类和确定优先级
系统可分为直拉场景和间接场景,直接场景指的是本体系结构可以直接支持的场景,即不需要对体系结构做任何修改即可直接实现。
另外一种间接场景则需要对现有体系结构做些更改才能支持的场景。
最后用投票的方法,确定间接场景的重要优先级,以便大家将有限的时间花在最重要的事情上。
4、对间接场景进行单个评估
架构师具体说明体系结构做哪些修改才能适应间接场景的需求,并估计这些变更的代价,最后形成一份全部场景的总结性列表。
5、评估场景的相互作用
当两个或多个间接场景需要修改到同一构建时,这时场景就在这个构件上出现了相互作用,需要特别评估。
6、形成总体评价
最后,评估人员对场景和场景间的相互作用做一个总体的权衡和评价。通过各个场景权重与分值得出一个总体的评价,从多个体系结构或一个体系结构的不同设计方案选择出一个最优的方案。