企业架构系列(四)ArchiMate第二节:关系和关系连接器

一、关系的概述

  • 结构关系:用于模拟相同或不同类型的概念的静态构造或组合
  • 依赖关系:用于模拟元素如何支持其他元素
  • 动态关系:用于模拟元素之间的行为依赖关系
  • 其他关系:不属于上述类别的其他关系

二、结构关系

结构关系表示架构内的“静态”一致性。

2.1 组成关系

组成关系表示一个元素由一个或多个其他概念组成。组成是一种整体/部分关系,它表达了一种存在依赖关系:如果删除了一个组合,那么它的各部分(通常)也会被删除。

是源元素的全部或部分由目标元素的全部组成:

示例:展示了“财务处理”业务功能由三个子功能组成的两种表达方式。如果删除任意一个子功能,则“财务处理”将不能完整的存在。


2.2 聚合关系

聚合关系表示一个元素结合了一个或多个其他概念。与“组成”不同,聚合并不意味着聚合概念与被聚合概念之间存在依赖关系。

是源元素的全部或部分聚合了目标元素的整体:

示例:展示了“客户档案”由“保险单”和“理赔”聚合而成。如果删除任意一个概念,其他概念仍可以完整存在。


2.3 分配关系

分配关系表示责任的分配、行为的履行、存储或执行。

示例:展示了分配关系的两种方式。"财务"应用程序组件分配给"交易处理"应用程序功能,"付款接口"分配给"付款服务"。


2.4 实现关系

实现关系表示一个元素在更抽象元素的创造、实现、维持或操作中起着关键的作用。

示例:"交易处理"业务功能实现了"结算服务";"结算数据"业务对象通过"纸张发票"实现。


三、依赖关系

依赖关系描述元素如何支持或被其他元素使用。

3.1 服务关系

服务关系表示一个元素向另一个元素提供其功能。

示例:展示了“支付接口”服务于“客户”,而“支付服务”服务于该客户的“支付发票”业务流程。


3.2 访问关系

访问关系表示行为和主动结构元素观察或作用于被动结构元素的能力。访问关系表示流程、功能、交互、服务或事件对被动结构元素“执行某项操作”;例如,创建新对象、从对象读取数据、写入或修改对象数据或删除对象。

在元模型级别,关系的方向始终是从主动结构元素或行为元素到被动结构元素:


指向一个方向表示“读”访问,指向两个方向表示“读写”访问 :

示例:展示了“创建发票”子流程写入/创建“发票”业务对象;“发送发票”子流程读取该对象。


3.3 影响关系

影响关系表示某个要素影响某一激励要素的实施或实现。

属性可指示影响的符号和/或强度,例如:{++、+、0、-、--} 或 [0..10]。

示例:展示了如何使用影响关系来模拟同一个要求“指派个人助理”的不同影响,即对“减少员工工作量”有强烈的积极影响,但对“降低成本”有强烈的消极影响。


3.4 关联关系

关联关系表示未指定的关系,或未由另一个 ArchiMate 关系表示的关系。

关联默认是无向的,但可以是有向的。

示例:展示了一个“保险单”合同及其所引用的两个业务对象之间的两个有向关联关系。它还显示了一个流关系与该合同之间的关联,以表明该合同已从“保单创建”移到“保单管理”。


四、动态关系

动态关系描述了架构内元素之间的时间依赖关系。

4.1 触发关系 

触发关系表示元素之间的时间或因果关系。用于对流程中行为元素的时间或因果优先性进行建模。源元素的某些部分应在目标元素开始之前完成。例如:交通灯变绿也会触发汽车通过十字路口。

示例:展示了触发关系用于模拟(子)过程和/或事件之间的因果依赖关系。


4.2 流向关系

流向关系表示从一个元素到另一个元素的转移。流向关系用于对行为要素之间的信息、商品或金钱等的流动进行建模。流向关系并不意味着因果关系。

示例:展示了“理赔评估”业务功能,该功能将有关理赔的评估结果转发给“理赔结算”业务功能。为了确定理赔评估的顺序,“理赔评估”利用了从“时间计划”业务功能收到的日程安排信息。


五、其他关系

5.1 特定化关系

特定化关系表示一个元素是另一个元素的特定类型。也可称为:特化关系、专业化关系。

示例:展示了“购买旅行保险”和“购买行李保险”业务流程是更通用的“购买保险”业务流程的特定化。


六、关系连接器

连接点并不是一种与本篇中描述的其他关系同等意义上的实际关系,而是一种关系连接器。

连接点用于连接相同类型的关系。连接点用于明确表示所有元素必须一起参与关系(和连接点)或至少有一个元素参与关系(或连接点)。

示例1:使用“与”连接点表示了“销售”和“财务”业务功能共同实现“发票”业务服务。


示例2:或连接点用于表示选择:业务流程“评估请求”触发“接受请求”或“拒绝请求”。 (通常对两个单独的触发关系的解释是,一个从“评估请求”到“接受请求”,一个从“评估请求”到“拒绝请求”,即“评估请求”触发其他两个业务流程。)


七、关系总结

八、关系的推导

在 ArchiMate 语言中,我们可以根据已建模的关系推导出模型中元素之间的间接关系。这样就可以从不相关的中间元素中抽象出来,以显示支持影响分析的特定架构模型或视图。

示例:展示了如何从功能、子功能和服务中进行抽象。即从“财务应用程序”到“发票和收款”业务流程(派生链条是:分配>组成>实现>服务)派生出间接服务关系(左侧粗红色箭头)。



 参考文献:ArchiMate 3.2 Specification 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一万小石

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值