SAAM(Scenarios-based Architecture Analysis Method)是卡耐基梅隆大学软件工程研究所(SEI at CMU)的Kazman等人于1983年提出的一种非功能质量属性的体系结构分析方法,是最早形成文档并得到广泛使用的软件体系结构分析方法。

体系结构权衡分析方法 (SAAM)

SAAM(Scenarios-based Architecture Analysis Method)是卡耐基梅隆大学软件工程研究所(SEI at CMU)的Kazman等人于1983年提出的一种非功能质量属性的体系结构分析方法,是最早形成文档并得到广泛使用的软件体系结构分析方法。最初它用于比较不同的软件体系的体系结构,以分析SA的可修改性,后来实践证明也可用于其他的质量属性如可移植性、可扩充性等,发展成了评估一个系统的体系结构。

特定目标

   SAAM的目标是对描述应用程序属性的文档,验证基本的体系结构假设和原则。此外,该分析方法有利于评估体系结构固有的风险。SAAM指导对体系结构的检查,使其主要关注潜在的问题点,如需求冲突,或仅从某一参与者的观点出发的不全面的系统设计。SAAM不仅能够评估体系结构对于特定系统需求的使用能力,也能被用来比较不同的体系结构。

评估技术

   SAAM所使用的评估技术是场景技术。场景代表了描述体系结构属性的基础,描述了各种系统必须支持的活动和将要发生的变化。

质量属性

   这一方法的基本特点是把任何形式的质量属性都具体化为场景,但可修改性是SAAM分析的主要质量属性。

风险承担者

   SAAM协调不同参与者所感兴趣的方面,作为后续决策的基础,提供了对体系结构的公共理解。

体系结构描述

   SAAM用于体系结构的最后版本,但早于详细设计。体系结构的描述形式应当被所有参与者理解。功能、结构和分配被定义为描述体系结构的三个主要方面。

方法活动

   SAAM的主要输入问题是问题描述需求声明体系结构描述。图1描绘了SAAM分析活动的相关输入及评估过程。

SAAM输入与评估过程

图1.SAAM输入与评估过程

   SAAM分析评估体系结构的过程包括5个步骤,即场景开发体系结构描述单个场景评估场景交互总体评估
   通过各类风险承担者协商讨论,开发一些任务场景,体现系统所支持的各种活动。
   用一种易于理解的、合乎语法规则的体系结构描述SA,体现系统的计算构件、数据构件以及构件之间的关系(数据和控制)。对场景(直接场景和间接场景)生成一个关于特定体系结构的场景描述列表。通过对场景交互的分析,能得出系统中所有场景对系统中的构件所产生影响的列表。最后,对场景和场景间的交互作一个总体的权衡和评价。

目前知识库的可重用性

   SAAM不考虑这个问题。

方法验证

   SAAM是一种成熟的方法,已被应用到众多系统中,这些系统包括空中交通管制、嵌入式音频系统、WRCS(修正控制系统)、KWIC[8](根据上下文查找关键词系统)等。

参考文献

相关文章

Q.E.D.