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

定义

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

DSSA具备以下特征:

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

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

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

基本活动

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

参与角色

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

建立过程

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

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

DSSA的三层次系统模型如下

相关推荐
电子科技圈13 小时前
从工具到平台:如何化解跨架构时代的工程开发和管理难题
人工智能·设计模式·架构·编辑器·软件工程·软件构建·设计规范
AI成长日志16 小时前
【GitHub开源项目】OpenClaw深度解析——开源多模态大模型系统的架构设计与核心实现
人工智能·系统架构·开源·github
启航挨踢17 小时前
2026软考各类资料
软件工程
AaronZZH18 小时前
规范驱动开发(SDD):AI时代的软件工程新范式
人工智能·驱动开发·软件工程
-Da-18 小时前
【操作系统学习日记】操作系统核心机制深度解析:中断、DMA与进程管理
linux·后端·系统架构
无心水19 小时前
【OpenClaw:认知启蒙】4、OpenClaw灵魂三件套:SOUL.md/AGENTS.md/MEMORY.md深度解析
java·人工智能·系统架构
min1811234561 天前
在线绘制跨职能流程图电脑端简单操作优化部门协作效率
人工智能·系统架构·pdf·流程图
雾江流1 天前
myDV 1.0.4 | 纯净开源,专为电视遥控器设计的抖音第三方TV版
软件工程
电子科技圈1 天前
IAR扩展嵌入式开发平台,推出面向安全关键型应用的长期支持(LTS)服务
嵌入式硬件·安全·设计模式·软件工程·代码规范·设计规范·代码复审
无心水1 天前
【OpenClaw:源码解析】15、OpenClaw Gateway 大脑中枢——dispatch_task 函数与消息队列设计探秘
人工智能·arcgis·系统架构·openclaw·openclaw·三月创作之星·ai前沿