第11章 ATAM:一种进行构架评估的综合方法

 
本章将介绍构架权衡分析方法,它是评估软件构架的一种综合全面的方法。之所以称 为ATAM方法,是因为这种方法不仅可以揭示出构架满足特定质量目标的情况,而且(因 为它认识到了构架决策会影响多个质量厲性)可以使我们更清楚地认识到质量目标之间的 联系一即如何权衡诸多质量目标。
 
评估大型系统的构架是一项复杂的任务。首先,大型系统有一个很大的构架.要在有 限的时间理解这个构架是非常闲难的:其次,根据Nietzsche的观点和构架商业周期 (ABC),计算机系统旨在支持业务目标,评估霈要把这些目标和技术决策联系起来;诚最后,大型系统通常都有多个涉众,在一个有限的时间里获得这些涉众的不同观点要求仔细管理评估过程。从上面列举的这些困难中可以看出,对用于构架评估的有限的时间进行管 理是一个中心问题。
 
ATAM设汁用于获取系统以及构架的业务目标。它还设计用于使用这些目标和涉众参 与来使评估人员把注意力放到对实现这些目标重要的构架部分上。
 
本章将介绍ATAM方法的步骤,然后根据其目的对这些步骤进行讨论。本章还给出了 —个ATAM案例分析(基于该方法的-个应用),
 
11.1 ATAM的参与人员
ATAM要求以下3个小组的参与和合作:
 
(1)评估小组    该小组是所评估构架的项目外部的小组。它通常由3〜5个人组成 在评估期间.该小组的每个成员都耍扮演大量的特定角色(表11.1对这些角色以及期胡毎 个角色所具备的素质进行了描述).,评估小组可能是一个常设小组,其中要定期执行构架 评估.其成员也可能是为了应对某次评估,从了解构架的人中挑选出来的。他们可能与开发小组(其构架是公开的)为相同的组织工作,也可能是外部的咨询人员。在任何情况下, 他们都应该是有能力、没有偏见且私下没有其他工作要做的外部人员。
 
(2)项目决策者    这些人对开发项目具有发言权,并有权要求进行某些改变。他们 通常包括项目管理人员.如果有•个承担开发费用的可以确认的客户,他(她)或其代表 也应该列入其中,设计师肯定要参与评估一一构架评估的一个基本准则是设计师必须愿意 参与评估。最后,委托进行评估的人通常有权就开发项目发言,如果他没有权利代表项目 发言的话,他(她)也必须是小组中的一个成员。
 
(3)构架涉众    涉众在构架中有-个既得利益(正如所宣称的那样)。他们完成工作 的能力与支持可修改性、安全性、高可靠性等特性的构架密切相关。涉众包括开发人员、 测试人员、集成人员、维护人员、性能工程师、用户、与正在分析的系统交互的系统的构 建人员以及其他人员。在评估期间,他们的工作职责是淸晰明确地阐述构架应该满足的具 体质量厲性目标,以使所开发的系统能够取得成功。根据经验,应该有12〜15个涉众参 与评估。
表11.1 ATAM评估小组的角色