本文主要是介绍ArchiMate 2.0规范(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
2.1 设计方法(Design Approach)
通常为企业架构元模型的开发的一个关键的挑战是:
打破个别架构领域语言的特殊性与一套极普通的架构概念之间的平衡,这反映了作为一个相互关联的实体仅仅是一套系统的看法。图1所示的概念可用于不同的专业化水平。
Figure 1: Metamodels at Different Levels of Specificity
在三角形的基础上,我们找到具体组织所使用的架构建模概念,以及各种现有的建模语言和标准中的元模型(metamodels),在此类别的语言中,UML是一例子。在三角形的顶部,我们可发现对于系统架构的“最泛化的”元模型,本质上,一个元模型仅仅包括如“实体”(entity)和“关系”(relation)的概念。
ArchiMate语言的设计起始于一套比较泛化的概念(在金字塔越往上)。这些已专门针对在不同的架构层的应用,在下面的章节解释。
在(建模)语言上,最重要的设计约束是,它被明确设计成尽可能的小,但对于大多数的企业架构建模任务却仍然可用。许多其他语言,如UML 2.0中,尽量满足尽可能的用户的所有需求。基于学习、使用简单的好处,ArchiMate限制了概念,以满足建模众所周知的80%的实用案例。
2.2 核心概念(Core Concepts)
语言的核心主要由三种类型的元素组成(注,该模型元素通常在现实世界中的表示为实体类):
主动结构元素(active structure elements),行为元素(behavior elements)和被动结构元素(passive structure elements即对象)。主动结构元素,是商业行为者,应用程序组件,设备,显示实际的行为,也就是说,“主题”活动(图2右侧)。
一个主动的结构元素被定义为一个实体,它能够执行行为。
再有就是行为或动态切面(dynamic aspect)(图2中心)。主动结构概念被分配到行为概念,以显示谁或什么来执行行为。
行为元素被定义为单元的活动,由一个或多个活动结构元素来执行。
被动结构元素是执行行为的对象。
被动结构元素被定义为执行行为的对象。
在信息密集型的领域,这是语言的主要焦点,被动结构元素通常是信息或数据对象(Data Object),但它们也可能被用来代表物理对象。这三个切面 - 活动结构,行为和被动结构 - 受到自然语言启发,对应于主题(活动结构),动词(行为),对象(被动结构)。
第二,我们对外部视图和系统内部视图之间做了区别。当寻找行为切面时,这些视图反映了面向服务的原则。
一个服务被定义为一个单元的功能,系统公开其环境,而隐藏内部运作,它提供了一定的价值(货币或其他)。
因此,该服务从系统使用的角度来看,是提供系统外部可见的行为;环境提供系统以外的一切组成。价值提供服务的存在的动机。对于外部用户,仅显露出功能和价值,与非功能性方面,如服务质量,成本,等等,都是相关的。这些可以被指定在合同或服务等级协议(SLA)当中。服务通过接口访问,在活动结构切面构成了外部视图。
接口被定义为一个访问点,其中一个或多个服务成为可用的环境。
接口提供了一个服务提供商的外部视图并隐藏其内部结构。
2.3 协作和交互(Collaboration and Interaction)
进入更深一层的语言结构,我们去区分行为是由一个单一的结构元素(例如,Actor,角色组件等)来执行还是由集体行为(互动),即多个结构元素协作来执行。
协作被定义为(临时的)两个或更多的结构元素分组(或聚合),一起工作,以完成一些集体行为。
这种集体行为可模型化为交互。
交互被定义为一个单元的行为,由2个或以上的结构元素协作完成。
2.4 关系(Relationships)
做为上述概念的下一核心,ArchiMate包含一套核心的关系。这其中的几个关系早已被采用于现有标准中的对应关系概念;如来自于UML2.0的组成,聚合,关联,和专业化的关系,同时也引发被用在许多业务流程建模语言。
注:为了提高可读性,在下一节中的元模型图例中不显示语言中的所有可能的关系。请参考7.5节的其他派生关系。此外,聚集,组成和专业化的关系,经常准许两个元素之间具有相同的类型。
这篇关于ArchiMate 2.0规范(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!