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

定义

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

DSSA具备以下特征:

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

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

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

基本活动

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

参与角色

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

建立过程

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

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

DSSA的三层次系统模型如下

相关推荐
大闲在人20 小时前
传统软件工程在 AI 时代急需改进的四个核心维度
人工智能·软件工程
带娃的IT创业者21 小时前
解密OpenClaw系列11-OpenClaw自动更新系统
开发语言·软件工程·自动更新·软件发布·ai智能体·openclaw·桌面智能体
带娃的IT创业者1 天前
解密OpenClaw系列10-OpenClawSparkle框架集成
软件工程·agent·策略模式·自动更新·ai智能体·智能体开发·openclaw
雾江流1 天前
醒图国际版 8.2.0| 解锁永久会员,免登录,专业照片编辑工具
软件工程
雾江流2 天前
悦读 1.11.1 | 有情感的AI电子书朗读,多国语言,支持多格式
软件工程
彷徨的蜗牛2 天前
软件系统架构设计:从蓝图到实现
架构·系统架构
zlp19922 天前
软考(系统架构师)-软件架构设计之基于架构的开发方法
系统架构·软件工程
专注前端30年2 天前
智能音箱产品系统架构深度解析(含案例+代码)
系统架构·智能音箱