当前位置: 首页 > article >正文

系统架构评估方法-SAAM方法

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

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

(2)评估技术。 SAAM所使用的评估技术是场景技术。场景代表了描述架构属性的基础, 描述了各种系统必须支持的活动和可能存在的状态变化。

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

(4)风险承担者。 SAAM协调不同参与者之间感兴趣的共同方面,作为后续决策的基础, 达成对架构的共识。

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

(6)方法活动。 SAAM的主要输入是问题描述、需求声明和架构描述。

SAAM分析评估架构的过程包括5个步骤,即场景开发、架构描述、单个场景评估、场景 交互和总体评估。

通过各类风险承担者协商讨论,开发一些任务场景,体现系统所支持的各种活动。

用一种易于理解的、合乎语法规则的架构描述软件架构,体现系统的计算构件、数据构件 以及构件之间的关系(数据和控制)。对场景(直接场景和间接场景)生成一个关于特定架构的 场景描述列表。通过对场景交互的分析,能得出系统中所有场景对系统中的构件所产生影响的 列表。最后,对场景和场景间的交互作一个总体的权衡和评价。

(7)已有知识库的可重用性: SAAM不考虑这个问题。

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


http://www.kler.cn/a/576211.html

相关文章:

  • C++20的简写函数模板
  • 初次使用 IDE 搭配 Lombok 注解的配置
  • Android APP 启动流程详解(含冷启动、热启动)
  • html流程图
  • RabbitTemplate类介绍、应用场景和示例代码
  • 在使用 router-link 进行路由跳转时,A页面跳转到A页面,资源要重新加载吗
  • 物联网-铁路局“管理工区一张图”实现方案
  • xxx **5. 物理安全** 详细解读
  • mybatis报错org/apache/commons/lang3/tuple/Pair] with root cause
  • React基础之Redux
  • wx122基于ssm+vue+uniapp的食堂线上预约点餐系统小程序
  • 【Python机器学习】1.7. 逻辑回归理论(进阶):多维度(因子)逻辑回归问题、决策边界、交叉熵损失函数、最小化损失函数
  • 26-小迪安全-模块引用,mvc框架,渲染,数据联动0-rce安全
  • go切片定义和初始化
  • VUE2表单检验及提示的消除
  • 迷你世界脚本自定义UI接口:Customui
  • dify中使用NL2SQL
  • 更新Vim使其支持系统剪切板
  • 探秘沃尔什-哈达玛变换(WHT)原理
  • 【蓝桥杯】每天一题,理解逻辑(3/90)【Leetcode 快乐数】