一。DSSA 特定领域软件体系结构
1.1. DSSA 必备特征
- (1) 一个严格定义的问题域和问题解域
- (2)具有普遍性,使其可以用用于领域中某个特定应用的开发
- (3)对整个领域的构件组织模型的恰当抽象
- (4) 具备该领域固定的、典型的 开发过程中可重用元素
-
从功能覆盖的范围的角度,有 2 种理解 DSSA 中领域含义的方式:
(1) 垂直域:定义了一个系统蔟,包含整个系统蔟内的多个系统,结果是在该领域中可作为系统的可行解决方案的一个通用软件体系结构。
(2)水平域:定义了在多个系统和多个系统蔟中功能区域的共有部分。在子系统级上涵盖多个系统蔟的特定部分功能。
1.3. DSSA 的基本活动
graph LR
A[$$领域分析$$]--> B[领域设计]
B --> C[领域实现]
1.3.1. 领域分析
- 主要目标是获得领域模型
- 领域模型描述的需求为领域需求
1.3.2. 领域设计
-
领域设计的目标是获得 DSSA,DSSA 是对领域模型中领域需求的一种抽象,它描述了领域模型中领域需求的一种实现方式。
-
由领域模型中的领域需求具有一定的变化性,DSSA 也要相应地具有变化性,因此领域设计需要考虑领域模型中需求的变化性,从而设计出具有变化性的领域模型。
在这个阶段通过获取 DSSA,也就同时形成了重用基础设施的规约
1.3.3. 领域实现
- 领域实现的目标是获得领域实现模型,领域实现模型是对 DSSA 的具体实现,它描述了 DSSA 中可重用元素的具体实现方式。开发和组织可重用信息
1.4. 参与 DSSA 的人员
1.4.1. 领域专家
- 有经难的用户、从事 yynnw 领域中系统的需求分析、设计、实现以项目管理的有经售的软件工程师。
1.4.2. 领域分析人员
-
- 由具有知识工程背景的有经验的系统分析员来担任。
主要任务是将获取的知识组织到领域模型中。
$$
- 由具有知识工程背景的有经验的系统分析员来担任。
1.5. DSSA 建立过程
graph LR
A[定义领域范围] --> B[定义领域特的元素]
B --> C[定义领域特定的设计和实现需求约束]
C --> D[定义领域模型和体系结构]
D --> E[产生、搜集可箐的产品单元]
(1) 定义领域范围:主要输出是领域中的应用需要满足一系列用户需求,这些需求可以由领域模型来描述。
(2) 定义领域特定的元素:本阶段的目标是编译领域字典和领域术语的同义词词典。对前一阶段产生的高层块圈将被增加更多细节,特别是识别领域中应用间的共同性差异性。
(3) 定义领域特定的设计和实现需求约束:主要目标是描述解空间中有差别的我不仅要识别出约束,并且要记录约束对设计和实现决定千万的后果,还要记录对处理这些问题时产生的所有问题的讨论。
(4) 定义领域模型和体系结构:本阶段的目标是产生一般体系结构,并说明构成它们的模块或构件的语法和语义。
(5)产生、搜集可重用的产品单元。本阶段的目标是为DSSA增加构件,使它可以被用来产生问题域中的新应用。
1.6.1. 领域实现人员
由具有软件工程背景的有经验的软件工程师来担任。
独学而无友,则孤陋而寡闻。