这几篇文章讨论了以遵从美国国防部(DoD)体系架构(DoDAF)的方式为复杂系统架构建模的方法。它们阐述了如何利用建模最佳实践连同统一建模语言(Unified Modeling Language,UML)和 IBM Rational 工具来创建不但遵从 DoDAF,而且在不转移主要系统开发目标的投入精力的情况下增加复杂系统的设计和开发中的重要价值的模型视图。
在第 1 部分文章中,我介绍了 DoDAF 规范的概述,并探究了其运作视图(OV)产品。这是对要比较备选系统架构,并管理其开发的政府机构和其他运作决策者最有意义的产品。
在此第 2 部分,我将说明系统视图(SV)产品。这是与 DoD 承包商和其他设计并实现这些复杂系统架构的人最相关的模型视图。为了完整地了解 DoDAF 规范,我还将在第 2 部分中简要介绍技术标准视图(TV)产品。
系统视图产品
包含运作架构的系统必须协作,用以实现运作视图中指定的任务功能,这些我在第 1 部分文章中提到了。系统视图(SV)产品的用途是提供在考虑中的系统的多种透视图。这些视图描述了系统的结构并表明如何与企业架构的其他要素相互作用。
各种 SV 产品是从主题系统架构的白盒扩展得来的,这确定了为了达到所期望的行为必须相互作用的系统的逻辑和物理组件。这些系统(逻辑组件)和系统节点(物理组件)是原型的类,并且由系统环境图表示。这些要素之间的关系表现出创建 SV-10c 序列图(见下)时所指定的运作或请求消息。其他 SV 产品提供更多关于物理和逻辑系统接口、系统交互,和在运作企业环境下系统的有计划的演进。
表 1 罗列并描述了系统视图产品并推荐了一个创建它们的合理顺序。后面的部分更详细地介绍了 SV 的每一种产品。
产品 | 标题 | 描述 | 表示 | 创建顺序 |
---|---|---|---|---|
SV-1 | 系统接口描述 | 在节点内部和节点之间确定系统和系统组件及其接口。通过实现公共接口的逻辑和物理透视图的一致建模。 | 含有类、位置,和接口的类图 | 3 |
SV-2 | 系统通信描述 | 为物理节点及其相关的通信基础构架建模。 | 复合结构图 部署图 | 6 |
SV-3 | 系统矩阵 | 为企业整个架构的环境中的系统和子系统之间的关系建模。 | 存储模型文本矩阵 导出 XML | 5 |
SV-4 | 系统功能描述 | 确定系统行为及与该行为相关的信息流。 | 每个系统用例的活动图 | 8 |
SV-5 | 系统功能可溯性矩阵的运作活动 | 将系统内部行为(实现)映射到运作外部活动上(规范)。 | 存储模型文本矩阵 导出 XML |
9 |
SV-6 | 系统信息交换矩阵 | 详细说明系统要素之间的信息交换,包括应用程序和分配给那些要素的硬件。 | 存储模型文本矩阵 导出 XML |
10 |
SV-7 | 系统性能参数矩阵 | 描述系统要素的性能特征。 | 存储模型文本矩阵 导出 XML 联合实现表 |
11 |
SV-8 | 系统演进描述 | 描述朝着指定的未来实现增加的已计划的演进。 | 带有时间线的进度安排或项目计划 | 12 |
SV-9 | 系统技术预测 | 描述很可能影响系统的当前或指定的未来状态的新兴技术。 | 文本文档 | 13 |
SV10a | 系统规则模型 | 描述业务需求或运作任务需求所利用的影响系统功能的约束。 |
|
1 |
SV-10b | 系统状态转换描述 | 描述系统对事件的响应。 | 状态转移图 | ** |
SV-10c | 系统时间/跟踪描述 | 根据实现了反映 OV-6c 中确定的行为的运作场景或关键活动的运作序列和活动,描述内部系统行为。 | 行为的逻辑和物理实现的序列图 | 2(逻辑的) 4(物理的) |
SV-11 | 物理数据模型 | 描述数据存储和移动的物理实现。 | 类图指明模式到 OV-7 中逻辑数据要素的关系 | 7 |
** 状态转移图可选择地用于为对需要特殊处理的复杂事件的关键实时的响应建模。
SV-1:系统接口描述
SV-1 为主题系统的内部架构创建了基础。它描述了系统、系统节点,和存在于它们内部及其间的接口。这样,SV-1 提供了运作视图和系统视图之间的联接。这要求对系统进行逻辑分解并将逻辑功能分配到物理组件上。该视图中的分类器表示对应运作视图中确定的每个系统用例流或场景(源于对主题系统的运作或消息)的逻辑和物理版本的序列图中的对象。
我们开始来确定构成主题系统的候选逻辑要素。最初的发现过程可能是凭直觉并且根据领域经验。此处,重点是开始考虑可能构成逻辑子系统的组件。这些可能最终成为子系统,甚至是基本的,但该差别还不重要。之后,由于用例的流下和联合实现的活动,我们给那些为了实现指定行为而分配了逻辑功能的要素确定余下的位置(以及当我们为逻辑要素发现一个需求时的附加逻辑要素)。由该信息,我们可以将序列图中指示的运作分配给接口,每一个都是由逻辑(类)和物理(位置)要素实现的。SV-1 图包含类、位置、接口,和那些系统及系统节点之间的连接。
SV-2:系统通信描述
SV-2 称为系统通信描述。目的是反映物理节点(位置)及其通信基础架构,SV-2 是由复合结构图,一种 UML 2.0 的工件,表示的。复合结构图表示为一个明显地连接到与角色相关的通信口上的角色或对象的容器(参见图 1)。由于潜在的容量和各种与通信连接相关的信息,将这些模型要素与需求存储库,如 IBM Rational RequisitePro®,中的实体相关联,利用属性值作为支持信息是可取的。
图 1:描述了物理节点及其通信基础架构的复合结构图
SV-3:系统矩阵
SV-3 是存在于系统分解的任意指定层次中的系统到系统关系的矩阵视图。至少,矩阵应该确定哪个系统与其他系统有关。必要时,您还可以包含与那些关系的特征有关的附加内容。您能从 SV-10c 序列图中显示的行为的逻辑和物理实现中建立起来的关系得到生成 SV-3 的信息内容。
SV-4:系统功能描述
SV-4 描述了支持需要的系统行为所必需的功能和需要的数据流。它采用带有分配给负责活动的系统要素的分区的活动图的形式。向活动流中加入对象流,目的是指示指定的活动所必需的数据对象的输入和输出。SV-4 的信息内容提供了另一种来自带有消息和参数的 SV-10c 序列图的信息视图。
SV-5:运作活动到系统功能可溯性矩阵
SV-5 提供了运作活动(例如,用例流、场景)和实现了所需行为的系统功能(运作)之间的可溯性。我们用该信息生成一个列出运作节点、它们必须支持的运作,及那些运作的实现的分层列表。理论上您要扩展这些内容,包含那些共同协作影响实现的系统或子系统,并且包含发送到那些系统或子系统的消息或运作。
SV-6: 系统信息交换矩阵
SV-6 是一个数据交换矩阵,类似于第 1 部分文章中所描述的 OV-3,表示主题系统的组件系统和子系统之间的基于行为的交互。您可以利用 IBM Rational 基于 Eclipse 的建模工具,通过获得 SV-10c 的内容来自动地生成 SV-6。每个矩阵行表示一个数据交换,由 SV-10c 序列图中的一个交互中的角色或对象之间所传递的数据的特征所组成。矩阵为每对交互并交换信息的对象或角色确定一个唯一的数据交换。特定的数据交换特征与非功能的需求或设计约束相关。每个信息交换需求(Information Exchange Requirement,IER)的内容表示一个数据对象的具体实例,此处,属性表示 DoDAF 所需的数据特征。
SV-6 强调所交换信息的逻辑和运作特征。该产品的目的不是尽力获得体系结构中所交换信息的所有细节,而是要帮助我们了解交换的最重要的方面。表 2 和表 3 显示了相关信息内容的实例,取自 DoDAF 规范。 1 此内容要追溯到补充的或非功能的需求。
接口标识符 | 数据交换标识符 | 数据描述 | 生产者 | 消费者 | 事务特性 |
---|---|---|---|---|---|
系统接口名称和标识符 | 系统数据交换名称和标识符 |
|
|
|
|
接口标识符 | 数据交换标识符 | 性能属性 | 信息保证 | 安全 |
---|---|---|---|---|
系统接口名称和标识符 | 系统数据交换名称和标识符 |
|
|
|
SV-7:系统性能参数矩阵
SV-7 描述了对于有效达到主题系统的任务目标很关键的特征。该信息可以以表格、图表,或矩阵最好地表示出来。应用领域决定着该视图的特定内容。在 DoDAF 规范中可以得到一个概念的实例作为参考资料。一个联合实现表格(Joint Realization Form)特别为该意图而设计,称为系统运作规范,还可以通过 IBM Rational Software Services 得到。当完成时,您应该将 SV-7 存储在与模型相关的文档文件夹中,或者存储为 IBM Rational RequisitePro 中的可跟踪的需求文档。
图 2 例举出一个示例系统运作规范表格。
图 2:系统运作规范表格(SV-7)
SV-8:系统演进描述
SV-8 是不断演进的企业环境中系统演进的计划或进度方案。SV-8 是由调度工具获取的,如 Microsoft Project。关键的里程碑是关于对系统的结构和/或行为的变更的增量式的实现。我们推荐将与进度相关的文件存储在与基于 Eclipse 的模型相关的文档文件夹中。
SV-9:系统技术预测
SV-9 确定了很可能影响到系统在其企业环境中的结构或行为的新兴技术。理论上说,您要将技术上增量的变更与 SV-8 中的里程碑联系起来,从而简化整个决策制定和企业管理。
SV-10a:系统规则模型
SV-10a 获取限制满足运作目标所涉及的系统或子系统的行为的约束。信息以文本形式获取并以文档形式生成。您要利用适合组织观众的模板来获取信息。
区别商业规则/约束和需求是具有挑战性的。在这点上,我们应该铭记,活动图中的决策点应该反映那些规则的具体实例。有一些内容可能适用于用 SysML 或对象约束语言(Object Constraint Language,OCL)来表达,并且用于验证建模工具中的架构工件。然而,该视图的主要产品是文档。SV-10a 类似于 OV-6a(第 1 部分文章中所描述的),但反应更低层的系统分解。如同 OV-6a 一样,我推荐您使用文档及一个有关的需求管理工具,像 IBM Rational RequisitePro。
SV-10b:系统状态转换描述
当一个或多个关键架构要素的行为是事件驱动时,用状态图建模在理解该行为方面特别有用。此处这个方法证明是有效的,生成 SV-10b。
SV-10c:系统事件/跟踪描述
SV-10c 为 OV6c中确定的每个运作描述了主题系统的内部行为。我们使用序列图着重于利用消息交互的系统/子系统和系统节点。这些消息表示由相关的系统、子系统,或系统节点做出的对系统/子系统/系统节点的请求。运作规范存在于运作视图的层次中,并且在系统视图中实现。您通过选择拥有运作的类、单击鼠标右键,并选择 DoDAF > Create Operation Realizations 来为实现创造结构。任何作为那些请求一部分(例如,参数)而交换的信息由 IO 实体类的实例表示。每个消息交互还表示一个数据交换,并用于填充 SV-6 矩阵。您通过选择 DoDAF > Create SV-6 来创建该内容。矩阵显示在 SV-6 选项卡中。
SV-11:物理数据模型
SV-11 是 OV-7(第 1 部分中所描述的)的补充。我么使用一个类图来表示存储 OV-7 逻辑数据模型和 SV-4 的数据对象所表示的信息所必需的数据库模式关系。
技术标准视图产品
技术标准视图提供了指导或约束系统视图中描述的系统的实现的指导。在增量地开发系统,用以满足运作视图中指定的任务目标的情况下,TV 反映出制定设计决策所依靠的标准和限制因素。
TV 描述了适用于当前体系结构(TV-1)和该体系结构演进(TV-2)的标准,如表 4 中所描述的。
产品 | 标题 | 描述 | 表示 | 创建顺序 |
---|---|---|---|---|
TV-1 | 技术架构概要文件 | 提取应用到特定架构上的标准 | 文本文档中的参考模型标准和约束。考虑使用 IBM Rational RequisitePro 或等同的需求工具。 | 1 |
TV-2 | 标准技术预测 | 描述在特定的时机应用到架构上的新兴标准 | 文本文档中的参考模型标准和约束(带有时间或里程碑标准)。考虑使用 IBM Rational RequisitePro 或等同的需求工具。 | 2 |
TV-1:技术架构概要文件
TV-1 描述了可能影响运作企业的现有标准和运作约束。DoDAF 规范提供了一个示例模板,暗示利用基于文本的文档可以最好地获得该信息。我推荐您进一步结合具体标准和它们所影响的架构要素之间的关系,利用像 IBM Rational RequisitePro 这样的需求管理工具。您可以将标准的具体特性存储为该标准的属性,以便可溯性的建立成为一个相当简单的过程。
TV-2:标准技术预测
TV-2 描述了随着运作企业及其组件系统演进的过程中可能影响到它及其体系结构的潜在的和新兴的标准及运作约束。在该产品中获取了两类信息:
除了追踪性对于那些属于上面所述后者范畴实体的 SV-8 和 SV-9 是必需的以外,获取此信息的方法与 TV-1 的一样。
结束语
在第二部分文章中,我已经介绍了扩展并补充了第一部分中所介绍的运作视图(OV)中获取的信息的 DoDAF 系统视图(SV)和技术标准视图(TV)产品。我已进一步地介绍了随着我们从抽象功能到具体的逻辑和物理表示,不断增加地精心设计企业架构,系统工程团队能够如何利用 DoDAF 产品的内容。
一个健壮、可伸缩的过程,外加适当的自动化足以推动在集中的模型存储库中的一致的架构内容的开发。这样的存储库提供了对更大的开发组织和运作企业中的关键决策制定者必不可少的实现。IBM Rational 通过将已证实的系统工程过程和一个强大的、集成工具集进行整合,将在格式良好的系统架构模型的环境中对遵从 DoDAF 产品的创建进行自动化来支持 DoDAF 的遵从。
注释
1 DoD 体系架构(DoD Architectural Framework),1.0 版,卷 II,产品描述(Product Description),2004 年 2 月 9 日。