《系统架构设计师教程(第2版)》第8章-系统质量属性与架构评估-03-ATAM方法架构评估实践(下)

文章目录

  • 3. 测试阶段
    • 3.1 头脑风暴和优先场景(第7步)
      • 3.1.1 理论部分
      • 3.1.2 示例
    • 3.2 分析架构方法(第8步)
      • 3.2.1 调查架构方法
        • 1)安全性
        • 2)性能
      • 3.2.2 创建分析问题
      • 3.2.3 分析问题的答案
        • 胡佛架构
        • 银行体系结构
      • 3.2.4 找出风险、非风险、敏感点和权衡点。
        • 1)风险与非风险点
        • 2)敏感点
        • 3)权衡点。
  • 4. 报告ATAM阶段

3. 测试阶段

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

3.1.1 理论部分

  • 使用头脑风暴的情景:
    • 用例场景:利益相关者是最终用户
    • 增长情景:代表了架构发展的方式
    • 探索性场景:代表架构中极端的增长形式
  • 得到优先场景的活动:
    • 收集头脑风暴之后的产生的情景
    • 利益相关者投票选出他们认为最重要的场景
      • 合并与相同质量属性有关的所有场景
      • 利益相关者投票选出他们认为最重要的场景
        • 票数=场景总数×30%
      • 场景按总票数排序
      • 划分截止线,截止线以上场景为头脑风暴优先情景
    • 优先头脑风暴优先情景列表合并到效用树中

3.1.2 示例

注意:以下内容主要演示该步骤流程,不需要记忆,旨在辅助理解该步骤

  • 头脑风暴情景列表:

在这里插入图片描述
在这里插入图片描述

  • 利益相关者投票:
  • 分配给每个利益相关者的票数定义如下:票数=情景总数×30%=0.3×16(到最近的整数)=5
  • 三个利益相关者都有5张投票
  • 投票后,对结果排序
  • 化分截止线,取前8个情景(其他弃掉)
  • 结果如下表:

在这里插入图片描述

  • 按质量属性将这些情景重新统计

教材前边说要合并到质量树,因为示例中没有效用树,因此只处理头脑风暴中优先场景

在这里插入图片描述
在这里插入图片描述

3.2 分析架构方法(第8步)

  • 概述

    • 调查、分析上一步产生的“高优先级的质量属性”
      • 方法同第6步“调查和分析”
      • 区别:第6步的“高优先级质量属性”来自效用树
    • 分析架构设计方案中的风险、非风险、敏感点和权衡点
  • 四个阶段

3.2.1 调查架构方法

1)安全性
  • 胡佛架构:安全性高

    使用数据封装,满足安全性

  • 银行体系结构: 安全性低

  • 特定于应用程序的信息被嵌入到许多组件中,数据机密性低
  • 应用程序处理程序仅由事件管理器调用,说明也有一定的安全性
2)性能
  • 胡佛架构:性能高

执行任何给定流程所涉及的组件都很少

  • 银行体系结构:性能低

执行任何给定流程所涉及的组件都很多

3.2.2 创建分析问题

以下是利益相关方收集的分析问题清单,并基于高投票数的情景:
①系统是否允许未经授权的访问?(安全)
②架构是否描绘数据机密性?(安全)
③架构是否以最快的速度处理任何任务?(性能)

3.2.3 分析问题的答案

胡佛架构

①系统是否允许未经授权的访问?
在组件层面,胡佛的架构中未经授权的访问受到限制。但是,在应用程序级别,如果需要,可以通过修改应用程序组件来限制访问。
②架构是否描绘数据机密性?
如前所述,特定于应用程序的信息并未嵌入组件的不同部分,因此数据得到了很好的保护。
③架构是否以最快的速度处理任何任务?
由于执行任何任务所涉及的组件数量极少,并且每个组件中的处理量在此架构中最小,因此后者以最快的速度执行操作。

银行体系结构

①系统是否允许未经授权的访问?
在组件级别,某些组件受到限制,而体系结构中的大多数组件都可用于访问未经授权的组件。
②架构是否描绘数据机密性?
考虑到应用程序特定的信息在许多组件中可用,这些信息分散在架构中,因此不存在数据机密性。
③架构是否以最快的速度处理任何任务?
由于涉及事件处理的组件数量很多,因此此架构不能以最快的速度执行操作。

3.2.4 找出风险、非风险、敏感点和权衡点。

1)风险与非风险点

在这里插入图片描述

2)敏感点
  • 数据保密级别对嵌入应用程序的地点数量很敏感
  • 执行任务的平均速度对处理任务所涉及的组件数量敏感
3)权衡点。
  • 对象:刚才得出的敏感点+步骤6中的敏感点
  • 得出以下权衡点。
    • 应用程序嵌入的地点数量
    • 处理任务所涉及的组件数量
  • 胡佛架构:没有权衡点
  • 银行架构:两个权衡点都有

4. 报告ATAM阶段

  • TAM团队将他们的发现呈现给利益相关者
  • 发现通常包括:
    • 效用树
    • 一组生成的场景
    • 一组分析问题
    • 确定的风险和非风险
    • 确定的架构方法

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

深入理解JVM垃圾收集器

相关系列 深入理解JVM垃圾收集算法-CSDN博客 目前市面常见的垃圾收集器有Serial、ParNew、Parallel、CMS、Serial Old、Parallel Old、G1、ZGC以及有二种不常见的Epsilon、Shenandoah的,从上图可以看到有连线的的垃圾收集器是可以组合使用,是年轻代老年代…

快速删除node_modules

1.rd /s /q node_modules 2.rimraf node_modules/ 亲测可用

Java零基础入门-封装

一、概述 谈起面向对面编程,我们都知道有三大特征【封装、继承、多态】,跟随我一起学习的小伙伴都知道,对于三大特征的后两种,我们在前两期已经讲过了,至于我为啥没有按照特征顺序来教学,是因为我常不按规律…

MySQL8.3.0 主从复制方案(master/slave)

一 、什么是MySQL主从 MySQL主从(Master-Slave)复制是一种数据复制机制,用于将一个MySQL数据库服务器(主服务器)的数据复制到其他一个或多个MySQL数据库服务器(从服务器)。这种复制机制可以提供…

Android Studio中查看和修改project的编译jdk版本

android studio中查看和修改project的编译jdk版本操作如下: File->settings->Build,Execution,deployment->Build Tools->Gradles 进入Gradles页面可以查看并修改project的编译jdk版本,如图所示

基于 Lambda 实现 Claude3 的流式响应

在如今的大语言模型推理输出场景中,流式响应基本已成为必备的功能之一。一方面符合大语言模型生成方式的本质,另一方面当模型推理效率不是很高时,流式响应比起全部 generate 后再输出、能大幅缩短从开始请求到输出第一个 Token 的时间&#x…

访问网站显示不安全是什么原因?怎么解决?

访问网站时显示“不安全”,主要原因以及解决办法: 1.没用HTTPS加密:网站还在用老的HTTP协议,数据传输没加密,容易被人偷看或篡改。解决办法是网站管理员启用HTTPS,也就是给网站装个“SSL证书”。这个是最常…

5.6 mybatis之RowBounds分页用法

文章目录 mybatis 中,使用 RowBounds 进行分页,非常方便,不需要在 sql 语句中写 limit,即可完成分页功能。但是由于它是在 sql 查询出所有结果的基础上截取数据的,所以在数据量大的sql中并不适用,它更适合在…

深度学习学习日记4.8(下午)

1.softmax 函数的得出的结果是样本被预测到每个类别的概率,所有类别的概率相加总和等于1。使用 softmax 进行数据归一化,将数字转换成概率。 2.熵,不确定性,越低越好 3.KL 散度交叉熵-信息熵 预测越准,交叉熵越小&am…

【大数据】大数据概论与Hadoop

目录 1.大数据概述 1.1.大数据的概念 1.2.大数据的应用场景 1.3.大数据的关键技术 1.4.大数据的计算模式 1.5.大数据和云计算的关系 1.6.物联网 2.Hadoop 2.1.核心架构 2.2.版本演进 2.3.生态圈的全量结构 1.大数据概述 1.1.大数据的概念 大数据即字面意思&#x…

什么是人工智能?人工智能、机器学习、深度学习三者之间有什么关系吗?

深度学习是机器学习的一个分支。深度学习是机器学习的一部分,与机器学习的其他分支学科,以及统计学、人工智能等学科都有着紧密的联系。深度学习、机器学习、人工智能、统计学之间的关系如图1-4所示。 图1-4 深度学习、机器学习、人工智能、统计学之间的…

CNAS认可和CMA认可对比辨析

性质对比 CNAS(China National Accreditation Service for Conformity Assessment,中国合格评定国家认可委员会)。该委员会是国家授权的单位,是专门来做认可和监督工作的。认可的对象是认证机构、检验机构和实验室等。确认其是否有…

php站长在线工具箱源码优化版

环境要求 PHP > 7.4MySQL > 5.6fileinfo扩展使用Redis缓存需安装Redis扩展 源码下载地址:php站长在线工具箱源码优化版.zip

Android图形显示架构概览

图形显示系统作为Android系统核心的子系统,掌握它对于理解Android系统很有帮助,下面从整体上简单介绍图形显示系统的架构,如下图所示。 这个框架只包含了用户空间的图形组件,不涉及底层的显示驱动。框架主要包括以下4个图形组件。…

SRIO学习(3)使用SRIO IP核进行设计

文章目录 前言一、设计框图二、模块介绍三、上板验证 前言 本文将通过使用SRIO IP核实现数据通信,重点在于打通数据链路,具体的协议内容设计并非重点,打通了链路大家自己根据设计需求来即可。 一、设计框图 看了前面高速接口的一些设计&am…

【uniapp】开发微信小程序 — 注意事项

底部导航栏 (tabBar) 图标的正确做法: 1、图片的标准尺寸为 81px * 81px,该尺寸在官方的文档中有明确的说明,可以参考微信小程序全局配置文档中对 iconPath 属性的说明。 2、为了保持良好的间距,图片的内容区域设置 60px* 比较好&…

docker最简单教程(使用dockerfile构建环境)

一 手里有的东西 安装好的dockerdockerfile 二 操作 只需要在你的dockerfile文件下执行命令 docker build -t"xianhu/centos:gitdir" . 将用户名、操作系统和tag进行修改就可以了,这就相当于在你本地安装了一个docker环境,然后执行 docker…

【c 语言】结构体的概念

🎈个人主页:豌豆射手^ 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:C语言 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步&…

JAVAEE——网络初始

文章目录 网络发展史独立模式网络模式局域网LAN路由器的诞生 网络通信的基础IP地址端口号 认识协议OSI七层模型TCP/IP五层模型 网络发展史 独立模式 在原始的年代中电脑间想要通信需要两台电脑连接一根网线,但是一台电脑基本上只有一个接口。因此想要链接更多的电…

函数重载和引用【C++】

文章目录 函数重载什么是函数重载?函数重载的作用使用函数重载的注意点为什么C可以函数重载,C语言不行? 引用什么是引用?引用的语法引用的特点引用的使用场景引用的底层实现传参时传引用和传值的效率引用和指针的区别 函数重载 什…