系统架构师考试-DSSA特定领域软件体系结构

概念

        DSSA是一个在特定领域中为一组应用提供组织参考的标准软件体系结构

        DSSA通常是一个具有三个层次的系统模型,包括领域开发环境、领域特定应用开发环境和应用执行环境。

        从功能覆盖的范围的角度有两种理解DSSA种领域的含义方法

                垂直域:定义了一个特定的系统族,包括整个系统族内的多个系统,结果是在该领域中可作为系统的可行解决方案的一个通用软件体系结构

                水平域:定义了在多个系统和多个系统族中功能区域的共有部分。在子系统级上涵盖多个系统族的特定部分功能

                在特定领域架构中,垂直域关注的是与行业相关的,聚焦于行业特性的内容,而水平域关注的是各个行业共性部分的内容

特点

        DSSA具有一个严格定义的问题域和问题解域

        具有普遍性使其可以用于领域中某个特定应用的开发

        对整个领域的构建组织模型恰当抽象

        具备该领域固定的、典型的在开发中可重用元素

基本活动

        DSSA基本活动是一个反复的、逐渐求精的过程;它的基本活动包括:领域分析、领域设计、领域实现

        领域分析:这个阶段的主要目标是获得领域模型

                定义领域边界,明确分析对象

                识别信息源,即整个领域工程过程中信息的来源

                分析领域中系统的需求,确定哪些需求是领域中的系统广泛共享的,从而建立领域模型

                当领域中存在大量系统时,需求选择它们的一个子集作为样本系统

        领域设计:这个阶段主要目标是获得DSSA

                DSSA描述在领域模型中表示的需求的解决方案,它不是单个系统的表示,而是能够适应领域中多个系统的需求的一个高层次的设计。建立领域模型后,就可以派生出满足这些被建模的领域需求的DSSA,由于领域模型中的领域需求具有一定的变化性,DSSA也要相应的具有变化性。特可以通过多选一的(Atermative)、可选的(Optional)解决方案等来做到这一点。因此在这个阶段通过获得DSSA,也就同时形成了重用基础设施的规约。

        领域实现:这个阶段的主要目标是依据领域模型和DSSA开发和组织可重用信息

                这些可重用信息可能是从现有系统中提取得到,也可能需要通过新的开发得到,他们依据领域模型和DSSA进行组织,也就是领域模型和DSSA定义了这些可重用信息的重用时机,从而支持了系统化的软件重用。这个阶段也可以看做重用基础设施的实现阶段。

参与人员

DSSA的参与人员包括领域专家、领域分析人员、领域设计人员、领域实现人员

DSSA建立过程是并发的、递归的和反复进行的,采用螺旋模型。包括:定义领域范围、定义领域特定的元素、定义领域特定的设计和实现需求约束、定义领域模型和架构、产生、收集可重用的产品单元

1、定义领域范围:本阶段的重点是确定什么在感兴趣的领域中以及本过程何时结束;这个阶段的一个主要输出是领域中的应用需要满足一系列的用户的需求

2、定义领域特定的元素:本阶段的目标是编译领域字典和领域术语的同义词词典。在领域工程过程的前一个阶段产生的高层块圈被增加更多的细节,特别是识别领域中应用间的共同性和差异性。

3、定义领域特定的设计和实现需求约束:本阶段的目标是描述解空间中有差别的特定不仅要识别出约束,并且要记录约束对设计和实现决定造成的后果,还要记录对处理这些问题时产生的所有问题的讨论

4、定义领域模型和体系结构:本阶段的目标是产生一般的体系结构,并说明构成它们的模块或构件的语法和语义

5、产生、收集可重用的产品单元:本阶段的目标是为DSSA 增加构件,使它可以被用来产生问题域中的新应用。

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

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

相关文章

“虚拟下单”,虚拟马丁下单,动态计算保本点位 MT4指标 限时免费!

指标名称:虚拟下单 版本:MT4 ver. 2.01(指标) 虚拟下单指标是一款便于交易者计算所有订单盈亏平衡价格的工具。通过模拟订单的方式,让交易者在实际交易前安全地测试和调整策略。 虚拟下单,计算盈亏平衡点位…

ruoyi 分页 查询超出后还有数据; Mybatis-Plus 分页 超出后还有数据

修改:MybatisPlusConfig 类中 分页合理化修改为:paginationInnerInterceptor.setOverflow(false);

消息队列类型介绍

消息队列(Message Queue,简称MQ)是一种在分布式系统中广泛应用的技术,用于在不同系统或组件之间进行异步通信。MQ通过存储和转发消息,实现了发送者和接收者之间的解耦,提高了系统的可扩展性、可靠性和灵活性…

高等数学学习笔记 ☞ 函数的极限

1. 函数的极限定义 备注:已知坐标轴上一点,则: ①:的邻域:指附近的开区间,记作。 ②:的去心邻域:指附近的开区间,但不包含,记作。 ③:的邻域&…

OpenMV与STM32通信全面指南

目录 引言 一、OpenMV和STM32简介 1.1 OpenMV简介 1.2 STM32简介 二、通信协议概述 三、硬件连接 3.1 硬件准备 3.2 引脚连接 四、软件环境搭建 4.1 OpenMV IDE安装 4.2 STM32开发环境 五、UART通信实现 5.1 OpenMV端编程 5.2 STM32端编程 六、SPI通信实现 6.1…

Xilinx DCI技术

Xilinx DCI技术 DCI技术概述Xilinx DCI技术实际使用某些Bank特殊DCI要求 DCI级联技术DCI端接方式阻抗控制驱动器(源端接)半阻抗控制阻抗驱动器(源端接)分体式DCI(戴维宁等效端接到VCCO/2)DCI和三态DCI&…

pip安装paddle失败

一、pip安装paddle失败,报错如下 Preparing metadata (setup.py) ... error error: subprocess-exited-with-error import common, dual, tight, data, prox ModuleNotFoundError: No module named common [end of output] 二、解决方法: 按照提示安装对…

报错:websocket注入为null,已解决!

错误截图 原因分析: WebSocket 在 Spring 框架中的注入问题是由其生命周期与 Spring 容器的作用域不一致引起的。spring管理的都是单例(singleton),和 websocket (多对象)相冲突。如果你的WebSocket 处理类…

基于微信小程序的校园点餐平台的设计与实现(源码+SQL+LW+部署讲解)

文章目录 摘 要1. 第1章 选题背景及研究意义1.1 选题背景1.2 研究意义1.3 论文结构安排 2. 第2章 相关开发技术2.1 前端技术2.2 后端技术2.3 数据库技术 3. 第3章 可行性及需求分析3.1 可行性分析3.2 系统需求分析 4. 第4章 系统概要设计4.1 系统功能模块设计4.2 数据库设计 5.…

回顾2024,加油2025!All, You and me!

原文链接:回顾2024,加油2025!All, You and me! 前言 今天是2024年12月31日,是2024年最后一天。 那么,你2024年你做了什么呢?有那些收获呢? 这是,每个人都会在做工作总结。也许&am…

面试场景题系列:设计视频分享系统

在本章中,你被要求设计一个像YouTube那样的系统。与这个面试问题类似的还有:设计一个类似Netflix和Hulu的视频分享平台,它们的解决方案是相同的。YouTube看起来很简单:内容创作者上传视频,观看者点击视频后播放。它真的…

WPF编程excel表格操作

WPF编程excel表格操作 摘要NPOI安装封装代码测试代码 摘要 Excel操作几种方式 使用开源库NPOI(常用,操作丰富)使用Microsoft.Office.Interop.Excel COM组件(兼容性问题)使用OpenXml(效率高)使用OleDb(过时) NPOI安装 封装代码 using System; using System.IO; u…

基于AT89C51单片机的可暂停八路抢答器设计

点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/90196607?spm1001.2014.3001.5503 C15 部分参考设计如下: 摘要 随着社会进步和科技发展,电子设备在各类活动中的应用日益普遍&#xff0c…

goView二开低代码平台1.0

官网文档地址:GoView 说明文档 | 低代码数据可视化开发平台 简介:GoView 是一个拖拽式低代码数据可视化开发平台,通过拖拽创建数据大屏,使用Vue3框架,Ts语言和NaiveUI组件库创建的开源项目。安装步骤和地址文档里都有…

计算机网络-L2TP VPN基础实验配置

一、概述 上次大概了解了L2TP的基本原理和使用场景,今天来模拟一个小实验,使用Ensp的网卡桥接到本地电脑试下L2TP拨号,今天主要使用标准的L2TP,其实在这个基础上可以加上IPSec进行加密,提高安全性。 网络拓扑 拓扑说明…

ListenAI 1.0.6 | 解锁订阅的文本转语音工具,支持朗读文档和网页

ListenAI是一款强大的文本转语音工具,能够将文字转换为逼真的语音,让用户随时随地倾听。它提供多种自然声音选择,适合不同内容。用户可以自定义语速和音量,获得个性化的体验。该软件无缝整合文档和网页内容,方便多任务…

torch.nn.GRU介绍

torch.nn.GRU 是 PyTorch 提供的一种循环神经网络(RNN)模块,与 LSTM 类似,但结构更简单。GRU(Gated Recurrent Unit,门控循环单元)通过较少的门控机制减少了计算复杂度,同时仍能有效解决标准 RNN 中的梯度消失问题。 GRU 的核心机制 GRU 的门控机制包括两个门:更新门…

MySQL数据库笔记——多版本并发控制MVCC

大家好,这里是Good Note,关注 公主号:Goodnote,本文详细介绍MySQL的并发控制:多版本并发控制MVCC。 文章目录 背景介绍数据库并发控制——锁机制悲观锁和乐观锁悲观锁乐观锁 数据库并发控制——MVCC 的引入MVCC 和锁机…

python数据分析之爬虫基础:selenium详细讲解

目录 1、selenium介绍 2、selenium的作用: ?3、配置浏览器驱动环境及selenium安装 4、selenium基本语法 4.1、selenium元素的定位 4.2、selenium元素的信息 4.3、selenium元素的交互 5、Phantomjs介绍 6、chrome handless模式 1、selenium介绍 &#xff0…

案例分析-采样率对模拟链路的带宽的影响

目录 问题来源: 情况分析: 总结 问题来源: 在进行模拟带宽调整时,发现设计值 与实测值,不一样,就这一问题,进行详细分析。 情况分析: 在本项目中,采用巴特沃兹四阶滤波器,设计带宽350M,改滤波器设计可以采用fiter solution工具进行设计,实测值仅仅260M,因此针…