软考(系统架构师)-软件架构设计之特定领域软件体系结构

定义

特定领域软件架构DSSA(Domain Specific Software Architecture)以一个特定问题领域 为对象,形成由领域参考模型参考需求参考架构等组成的开发基础架构,支持一个特定领域中多个应用的生成。

DSSA具备以下特征:

  • 一个严格的问题域和问题解域
  • 具有普遍性,使其可以用于领域中某个特定应用的开发
  • 对整个领域的构件组织模型的恰当抽象
  • 具备该领域固定的、典型的在开发过程中可重用元素

DSSA中的领域含义划分(从功能覆盖的范围):

  • 垂直域 :定义了一个特定的系统族,包含整个系统族内的多个系统,结果是在该领域中可作为系统的可行解决方案的一个通用软件体系结构
  • 水平域 :定义了在多个系统和多个系统族中功能区域的共有部分。在子系统级上涵盖多个系统族的特定部分功能

基本活动

  • 领域分析 :目的是为了建立领域模型
  • 领域设计 :目的是获得DSSA(特定领域软件架构)
  • 领域实现 :目的是依据领域模型和DSSA开发和组织可重用信息

参与角色

  • 领域专家:主要任务包括提供关于领域中系统的需求规约和实现的知识
  • 领域分析人员:主要任务包括控制整个领域分析过程,进行知识获取,将获取的知识组织到领域模型中
  • 领域设计人员:主要任务根据领域模型和现有系统开发出DSSA,并对DSSA的准确性和一致性进行验证,建立领域模型和DSSA之间的联系
  • 领域实现人员:主要任务根据领域模型和DSSA,或者从头开发可重用构件,或从现有系统提取可重用构件,并进行验证,建立DSSA和可重用构件间的联系

建立过程

DSSA的建立过程是并发的、递归的和反复进行的 ,也即它是螺旋模型

  • 定义领域范围
  • 定义领域特定的元素:目标是编译领域字典和领域术语的同义词词典
  • 定义领域特定的设计和实现需求约束:目标是描述解空间中有差别的特性
  • 定义领域模型和体系结构:目标是产生一般的体系结构,并说明构成它们的模块或构件的语法和语义
  • 产生、搜集可重用的产品单元:目标是为DSSA增加构件

DSSA的三层次系统模型如下

相关推荐
火云牌神1 天前
如何用项目规则给 AI 划定编码边界
人工智能·系统架构·ai编程·vibecoding
zhaoshuzhaoshu1 天前
软件需求工程:需求开发详解
软件工程
@insist1231 天前
系统集成项目管理工程师-架构基础与系统架构
架构·系统架构·软考·系统集成项目管理工程师·软考中项·软件水平考试
科技之门1 天前
精密制造设备国产替代提速:机器视觉系统架构解析与选型评估指南
系统架构·制造
梁辰兴2 天前
软件工程:面向数据结构的设计方法
数据结构·软件工程·梁辰兴·面向数据结构的设计方法·jackson方法·warnier方法·方法比较
jufeng13072 天前
【系列:MiniKV 原理剖析 · 第 6 篇】
linux·软件工程·个人开发·makefile
__zRainy__2 天前
软件开发工程化 · 入门篇:什么是工程化
软件工程·工程化
jufeng13072 天前
【系列:MiniKV 原理剖析 · 第 5 篇】
linux·网络·c++·软件工程
jufeng13072 天前
【系列:MiniKV 原理剖析 · 第 8 篇(完结篇)】
linux·c++·log4j·软件工程·makefile
caimouse2 天前
ReactOS 图形系统架构分析
系统架构