《系统架构设计师教程(第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团队将他们的发现呈现给利益相关者
  • 发现通常包括:
    • 效用树
    • 一组生成的场景
    • 一组分析问题
    • 确定的风险和非风险
    • 确定的架构方法

在这里插入图片描述

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

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

相关文章

git查看单独某一个文件的历史修改记录

git查看单独某一个文件的历史修改记录 git log -p 文件具体路径 注意,Windows下默认文件路径分隔符是 \,在git bash 里面需要改成 /。 git基于change代码修改与提交_git change-CSDN博客文章浏览阅读361次。git cherry-pick:复制多个提交comm…

使用Nodejs + express连接数据库mongodb

文章目录 先创建一个js文档安装 MongoDB 驱动程序:引入 MongoDB 模块:设置数据库连接:新建一个表试试执行数据库操作:关闭数据库连接: 前面需要准备的内容可看前面的文章: Express框架搭建项目 node.js 简单…

麻雀优化算法(Sparrow Search Algorithm)

注意:本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 ([www.aideeplearning.cn]) 算法背景 麻雀算法(Sparrow Search Algorithm, SSA)是一种受自然界麻雀群体行为启发的优化算法。想象一下,一…

(表征学习论文阅读)A Simple Framework for Contrastive Learning of Visual Representations

Chen T, Kornblith S, Norouzi M, et al. A simple framework for contrastive learning of visual representations[C]//International conference on machine learning. PMLR, 2020: 1597-1607. 1. 前言 本文作者为了了解对比学习是如何学习到有效的表征,对本文所…

3. Django 初探路由

3. 初探路由 一个完整的路由包含: 路由地址, 视图函数(或者视图类), 可选变量和路由命名. 本章讲述Django的路由编写规则与使用方法, 内容分为: 路由定义规则, 命名空间与路由命名, 路由的使用方式.3.1 路由定义规则 路由称为URL (Uniform Resource Locator, 统一资源定位符)…

蓝桥杯简单模板

目录 最大公约数 两个数的最大公约数 多个数的最大公约数 最小公倍数 两个数的最小公倍数 多个数的最小公倍数 素数 ​编辑 位数分离 正写 ​编辑 反写 闰年 最大公约数 两个数的最大公约数 之前看见的是辗转相除法,例如现在让算一个49,21…

该主机与 Cloudera Manager Server 失去联系的时间过长。 该主机未与 Host Monitor 建立联系

该主机与 Cloudera Manager Server 失去联系的时间过长。 该主机未与 Host Monitor 建立联系 这个去集群主机cm界面上看会出现这个错误 排查思路: 一般比较常见的原因可能是出问题的主机和集群主节点的时间对应不上了。还有就是cm agent服务出现问题了 去该主机的…

React - 你使用过高阶组件吗

难度级别:初级及以上 提问概率:55% 高阶组件并不能单纯的说它是一个函数,或是一个组件,在React中,函数也可以做为一种组件。而高阶组件就是将一个组件做为入参,被传入一个函数或者组件中,经过一定的加工处理,最终再返回一个组件的组合…

不使用 Docker 构建 Triton 服务器并在 Google Colab 平台上部署 HuggingFace 模型

Build Triton server without docker and deploy HuggingFace models on Google Colab platform EnvironmentBuilding Triton serverDeploying HuggingFace models客户端推荐阅读参考 Environment 根据Triton 环境对应表 ,Colab 环境缺少 tensorrt-8.6.1&#xff0…

IP地址到底有什么用

IP地址在计算机网络中的作用至关重要,它不仅是设备在网络中的唯一标识,更是实现网络通信、网络管理和安全的关键要素。下面,我们将从多个方面详细阐述IP地址的作用。 首先,IP地址作为设备的唯一标识,为网络通信提供了…

再探Java为面试赋能(二)Java基础知识(二)反射机制、Lambda表达式、多态

文章目录 前言1.4 反射机制1.4.1 Class对象的获取1.4.2 Class类的方法1.4.3 通过反射机制修改只读类的属性 1.5 Lambda表达式1.5.1 函数式接口1.5.2 Lambda表达式的使用 1.6 多态1.6.1 多态的概念1.6.2 多态的实现条件1.6.3 重载(Overload)和重写&#x…

用Python+OpenCV截取视频中所有含有字幕的画面

1、需求背景 有的视频文件的字幕已经压制到了视频的图像中,不能单独提取出字幕文件。网上的 “提取视频字幕” 网站多为提取视频中的字幕文件,而非识别视频图像中的字幕。少数通过OCR技术识别画面中字幕的工具需要在线运行、运行速度较慢,或…

力扣2- 两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 …

前端layui自定义图标的简单使用

iconfont-阿里巴巴矢量图标库 2. 3. 4.追加新图标 5.文件复制追加新图标

TCP/IP协议、HTTP协议和FTP协议等网络协议简介

文章目录 一、常见的网络协议二、TCP/IP协议1、TCP/IP协议模型被划分为四个层次2、TCP/IP五层模型3、TCP/IP七层模型 三、FTP网络协议四、Http网络协议1、Http网络协议简介2、Http网络协议的内容3、HTTP请求协议包组成4、HTTP响应协议包组成 一、常见的网络协议 常见的网络协议…

DIY可视化UniApp表格组件

表格组件在移动端的用处非常广泛,特别是在那些需要展示结构化数据、进行比较分析或提供详细信息的场景中。数据展示与整理:表格是展示结构化数据的理想方式,特别是在需要展示多列和多行数据时。通过表格,用户可以轻松浏览和理解数…

vue 中使 date/time/datetime 类型的 input 支持 placeholder 方法

一般在开发时,设置了 date/time/datetime 等类型的 input 属性 placeholder 提示文本时, 发现实际展示中却并不生效,如图: 处理后效果如图: 处理逻辑 判断表单项未设置值时,则设置其伪类样式,文…

2024-04-08 NO.6 Quest3 自定义交互事件

文章目录 1 交互事件——更改 Cube 颜色2 交互事件——创建 Cube2.1 非代码方式2.2 代码方式 ​ 在开始操作前,我们导入上次操作的场景,相关介绍在 《2024-04-08 NO.5 Quest3 手势追踪进行 UI 交互-CSDN博客》 文章中。 1 交互事件——更改 Cube 颜色 …

知识管理系统|基于Springboot和vue的知识管理系统设计与实现(源码+数据库+文档)

知识管理 目录 基于Springboot和vue的知识管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、前台: 5.2.2 文章信息 5.3.1 论坛交流 2、后台 用户管理 5.1.2 文章分类 5.2.1 资料分类 四、数据库设计 五、核心代码 六、论文参考 七、最…

OpenHarmony实战:Combo解决方案之W800芯片移植案例

本方案基于OpenHarmony LiteOS-M内核,使用联盛德W800芯片的润和软件海王星系列Neptune100开发板,进行开发移植。 移植架构采用Board与SoC分离方案,支持通过Kconfig图形化配置编译选项,增加玄铁ck804ef架构移植,实现了…