ATAM方法架构评估实践

        用ATAM方法评估软件体系结构,其工作分为4个基本阶段,即演示、调查和分析、测试和报告ATAM(如图1所示)。接下来分别就每个阶段的实践进行详细介绍。

 图1 ATAM方法的评估实践阶段划分

1.阶段1——演示(Presentation)

        这是使用ATAM评估软件体系结构的初始阶段。此阶段有3个主要步骤:介绍ATAM、介绍业务驱动因素、介绍要评估的体系结构。 

1.1第1步:介绍ATAM

        这一步涉及ATAM评估过程的描述。在此步骤中,评估负责人向所有相关参与者提供有关ATAM过程的一般信息。领导者说明评估中使用的分析技术以及评估的预期结果。领导者解决小组成员的任何疑虑、期望或问题。 

1.2第2步:介绍业务驱动因素

        在这一步中,提到了系统体系结构驱动程序的业务目标。这一步着重于系统的业务视角。它提供了有关系统功能、主要利益相关方、业务目标和系统其他限制的更多信息。 

1.3第3步:介绍要评估的体系结构

        在这一步中,架构团队描述了要评估的架构。它侧重于体系结构、时间可用性以及体系结构的质量要求。此步骤中的体系结构演示非常重要,因为它会影响分析的质量。这里涉及的关键问题包括技术约束,与正在评估的系统交互的其他系统,以及为满足质量属性而实施的架构方法。系统的质量属性是代表系统所需质量的问题。这些属性的例子包括性能、可靠性等。

2.阶段2——调查和分析

         这是使用ATAM技术评估架构的第2阶段。在这个阶段,人们对评估期间需要重点关注的一些关键问题进行彻底调查。这个阶段被细分为3个步骤:确定架构方法、生成质量属性效用树、分析体系结构方法。

2.1第4步:确定架构方法

         这一步涉及能够理解系统关键需求的关键架构方法。在这一步中,架构团队解释了架构的流程控制,并提供了关于如何达成关键目标以及是否达到关键目标的适当解释。

2.2第5步:生成质量属性效用树

        在评估阶段,系统最重要的质量属性目标被确定,并确定优先次序和完善。这一步至关重要,因为它将所有利益相关方和评估人员的注意力集中在关系到体系成功至关重要的体系结构的不同方面。这是通过建立效用树来实现的。

2.3第6步:分析体系结构方法

        这是“调查和分析”阶段的最后一步。在这一步中,人们分析前一步生成的效用树的输出,并进行彻底调查和分析,找出处理相应质量属性架构的方法。

3.阶段3——测试 

3.1第7步——头脑风暴和优先场景

         这是ATAM测试阶段的第一步。前者代表利益相关者的利益,用于理解质量属性要求。在效用树生成步骤中,主要结果是从架构师的角度来理解质量属性。在这一步中,目标是让更大的利益相关者参与其中。

        将头脑风暴情景的优先列表与在步骤5中或得的优先方案进行比较。利益相关者需要使用头脑风暴的三种场景:用例场景、增长情景、探索性场景

3.2第8步——分析架构方法

        这是“测试”阶段的最后一步。在这一步中,我们分析上一步中高优先级的质量属性。我们找到了处理这些质量属性的架构设计方案,并检查相应的架构设计方案是否可支持满足这些属性。这一步重复“调查和分析”阶段的第6步。唯一的区别在于,在步骤6种,高优先级质量属性来自效用树,而这一步需要考虑在头脑风暴的步骤中,高得票数的质量属性。一些在步骤6中被认为是高优先级的质量属性可能在头脑风暴的步骤中,仍被认为是高优先级的质量属性。同时,头脑风暴的过程也可能产生一些新的高优先级的质量属性。最后,分析架构设计方案中的风险、非风险、敏感点和权衡点。

4.阶段4——报告ATAM

        这是ATAM评估的最后阶段,其中提供了评估期间收集的所有信息。ATAM团队将他们的发现呈现给利益相关者。

        ATAM团队的主要发现通常包括:

  •         一种效用树;
  •         一组生成的场景;
  •         一组分析问题;
  •         一套确定的风险和非风险;
  •         确定的架构方法。

        报告中包含的所有内容在前述的8个步骤中已经进行了介绍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/601712.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2.SpringBoot利用Thymeleaf实现页面的展示

什么是Thymeleaf? Thymeleaf是一个现代服务器端Java模板引擎,适用于Web和独立环境,能够处理HTML,XML,JavaScript,CSS甚至纯文本。 Thymeleaf的主要目标是提供一种优雅且高度可维护的模板创建方式。为实现这…

内存管理new and delete(C++)

在本篇中,将会较为详细的介绍在 Cpp 中的两个新操作符 new 和 delete,将会介绍其中的底层原理,以及这两个操作符的使用方法。其中还介绍了 new/delete 操作符使用的细节,还扩展了一些有关定位 new 表达式的知识点。最后总结了 mal…

【简单讲解下C++max函数的使用】

🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共…

动态支付策略:Go 语言中策略模式的妙用

关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等,您的关注将是我的更新动力! 在现代软件架构中,支付功能是不可或缺的一环。无论是在线购物还是虚拟服务,支付策略的选择直接影响用户体…

用API技术为数据安全“上保险”——双重保障

🔍API在数据安全领域的核心地位 随着数字化进程的狂飙突进,应用程序接口(API)已化身为企业内部、不同平台间以及用户交互的关键纽带。它们不仅是数据流动与共享的驱动引擎,更是守护数据安全的重要防线。其中&#xf…

Longan Pi 3H 开发板体验

Longan Pi 3H 开发板体验 开箱内容 打开包装,你可以看到以下物品 一个Longan Pi 3H盒子Longan Pi 3H开发板 产品基本介绍 Longan Pi 3H 是基于 Longan Module 3H 核心板的 ARM Linux 开发板,以 H618 (Quad core ARM Cortex-A531.5Ghz , 64-bit) 为主控…

FPN网络

FPN(Feature Pyramid Network)是一种用于目标检测和语义分割等计算机视觉任务的网络结构。它旨在解决不同尺度下的特征信息不足的问题,提高模型对小目标和远距离目标的检测能力。在目标检测任务中,由于目标的尺度和形状各异&#…

人民大学:揭示大语言模型事实召回的关键机制

引言:大语言模型事实召回机制探索 该论文深入研究了基于Transformer的语言模型在零射击和少射击场景下的事实记忆任务机制。模型通过任务特定的注意力头部从语境中提取主题实体,并通过多层感知机回忆所需答案。作者提出了一种新的分析方法,可…

CICD流水线 发布应用到docker镜像仓库

准备工作 1.先注册免费的镜像仓库 复制链接: https://cr.console.aliyun.com/cn-beijing/instances 实施 1. 新建流水线,选择模板 2.添加流水线源,及是你的代码仓库, 选择对应分支. 3.代码检查以及单元测试,这个步骤可以不用动它. 4. …

【随笔】Git 基础篇 -- 分支与合并 git merge(九)

💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…

7款公司电脑监控软件

7款公司电脑监控软件 研究证明,人们在家办公的效率比在办公室办公的效率低一半,其中原因是缺少监督,即便在公司办公,还存在员工偷闲的时刻,比如聊天、浏览无关网站、看剧、炒股等,企业想提高员工的工作效率…

xilinx AXI CAN驱动开发

CAN收发方案有很多,常见的解决方案通过是采用CAN收发芯片,例如最常用的SJA1000,xilinx直接将CAN协议栈用纯逻辑实现,AXI CAN是其中一种; 通过这种方式硬件上只需外接一个PHY芯片即可 上图加了一个电平转换芯片 软件设计方面&…