一文说清楚UML的MOF四层元模型

一、MOF

MOF元模型架构分为四层, 如下图所示分别为

M3 元元模型层;   M2  元模型层;  M1  模型层;   M0 模型实例层(信息层)

下面由深入浅的谈下我对这几层模型的认识。

(参考标准Meta Object Facility (MOF) Specification 

https://www.omg.org/spec/MOF/ISO/19502/PDF

1. 元元模型层

定义:元元模型层由元元数据的结构和语义信息描述组成,这层的主要职责是为了描述元模型而定义的一种"抽象语言"。

案例:在元元模型层,定义了组成元模型不同元素的具体信息,如定义了元素(Class Heading、SuperClass、Contained Elements、Attributes、References、Operations、Constraints、IDL)的结构和语义信息。

2. 元模型层

定义:元模型层是由元元数据组成,元元数据定义了元模型的结构和语义,这些元元数据的实例化集合被称作为元模型。元模型层的主要职责是为了描述模型层而定义的一种“抽象语言”,是对模型层的进一步抽象。

案例:根据元元模型中定义的类元素(Class Heading、SuperClass、Contained Elements、Attributes、References、Operations、Constraints、IDL),他们组合形成类Class的元模型。Class元模型是所有Class模型的上级抽象。除了类元模型(Classes),还有关系(Associations),数据类型(DataTypes),包(Packages)几种元模型。

所有类的模型层都是在继承类元模型的结构框架下构建的。

3. 模型层

定义:根据元模型层确立模型实体规则,而建立的具体模型。

如Classes的具体结构已经在元模型进行了准确定义,Classes包括了Class Heading、SuperClass、Contained Elements、Attributes、References、Operations、Constraints、IDL八类信息内容。UML将形成了Class的成熟结构,我们只需要调用在结构上填充信息即可。

案例:建立一个类,填充了Heading和Attributes信息如下。

 

4. 模型实例层

定义:根据模型层定义的数据结构,填充具体现实数据而形成的模型实例对象

案例:如下图所示,通过具体信息填充(名称和年龄结构)形成数据实例。

二、元数据

下面对元数据、元对象和元模型的定义进行补充介绍。

1. “元数据” 是用来指那些用来描述其他数据的数据。就是指将模型实例层的具体数据信息进一步抽象提炼而出的数据结构,从而用于描述具体数据信息。

2. “元模型” 用来指某种元数据的模型,类似上述模型层,将描述的数据结构进行建模实现。

3.“元对象” 用来指代表示元数据的抽象或技术特定的对象,即上述建模实现后的“男人”类 模型。

三、UML元模型拓展

在采用UML进行建模操作时,大部分的元模型都由MOF定义好了,但是在针对具体业务开展建模实践时,这些元模型往往是不够贴合业务的,因此为了拓展元模型,一些建模软件支持自定义拓展元模型,生成对应的Profile文件,进而实现项目的Profile导入和应用,从而更好地实现面向业务的建模工作。

这方面技术是可行的,笔者也在实践中,实现后会出blog分享。

以上仅是自己的学习和认识,欢迎交流指正。

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: CWM(Common Warehouse Metamodel)是一种数据模型,它为数据仓库和商业智能系统的数据提供了一种标准化的、综合性的描述方式。CWM包含了一系列的规范和模型,其中核心内容主要包括以下几个方面。 首先,CWM定义了一套通用的模型,用于描述与数据仓库和商业智能系统相关的数据。这些模型包括了数据仓库中的各种对象,例如维度、事实表、数据库表等,以及它们之间的关系和属性。通过这些通用的模型,CWM提供了一种统一的、标准化的数据描述方法,使得不同数据仓库和商业智能系统之间的数据可以互相理解和交换。 其次,CWM定义了一组通用的模型操作,用于对数据进行管理和操作。这些操作包括数据的创建、修改、查询、删除等,以及数据之间的关联和依赖关系的管理。通过这些操作,CWM提供了对数据的全生命周期管理,使得数据可以在不同的环境中被有效地管理和利用。 另外,CWM还定义了一套数据交换格式,用于在不同的数据仓库和商业智能系统之间进行数据的交换和共享。这个交换格式基于XML技术,以一种结构化的方式描述了数据的各个方面,包括对象的定义、属性的定义、关系和依赖关系等。通过这个数据交换格式,CWM使得不同系统之间的数据可以方便地进行交换和共享,从而实现了数据的互操作性和可移植性。 总之,CWM是一种数据模型,它提供了一套通用的、标准化的方法和规范,用于描述和管理数据仓库和商业智能系统的数据。CWM的核心内容包括模型模型操作和数据交换格式,通过这些内容,CWM实现了对数据的一致性管理和跨系统的数据交换与共享。 ### 回答2: CWM(Common Warehouse Metamodel)即通用仓库模型,是一种用于描述数据仓库和商业智能系统数据的模型。CWM的核心内容包括以下几个方面: 1. 对象模型MOF):CWM使用统一的对象模型来描述数据,并定义了一系列对象类型和关联关系。这样可以确保不同数据仓库和商业智能系统之间的数据互操作性,提供了一个标准的数据描述和交换方式。 2. 数据仓库:CWM提供了一种标准的数据仓库模型,用于存储和管理数据仓库和商业智能系统中的数据。数据仓库可以为用户和应用程序提供统一的数据访问接口,便于数据的查询、更新和管理。 3. 共享数据:CWM通过定义数据模型数据交换格式和数据接口等标准,可以实现不同数据仓库和商业智能系统之间的数据共享。这样可以提高数据的一致性和可重用性,减少系统集成和维护的成本。 4. 数据管理:CWM提供了一套数据管理的方法和工具,包括数据的采集、存储、更新和删除等操作。数据管理可以帮助用户和管理员对数据进行有效的管理和控制,保证数据仓库和商业智能系统的正常运行。 总之,CWM是一种用于描述数据仓库和商业智能系统中数据的模型,包括对象模型数据仓库、共享数据和数据管理等核心内容。它提供了一套标准的数据描述和交换方式,可以提高数据的一致性和可重用性,简化系统集成和维护的工作。 ### 回答3: CWM(Common Warehouse Metamodel)是一种用于数据仓库和商业智能系统的数据模型。它为数据仓库提供了一个统一的数据定义和管理框架,以支持数据的集成、转换和利用。 CWM的核心内容包括以下几个方面: 1. 模型(Metamodel):CWM定义了一系列的模型,用于描述数据仓库中的各种数据、数据和它们之间的关系。这些模型包括了范围从数据项、数据集合、数据容器到模式、模型和对象的抽象层次。通过模型,CWM提供了一种可扩展和可移植的数据管理架构。 2. 对象(Metaclass):CWM定义了多种对象,用于表示数据中的各种对象和概念,如数据表、列、索引、视图、数据仓库、数据源等。每个对象都有一组属性和关系来描述它们的特性和关联。 3. 属性(Metaproperty):CWM定义了一系列属性,用于描述对象的属性,如数据类型、长度、精度等。通过属性,CWM可以对对象的特性进行描述和约束。 4. 关联(Metaassociation):CWM定义了关联,用于描述对象之间的关系和联接。关联可以用于建立数据仓库中数据项、数据集合之间的关联关系,以支持数据的集成和查询。 CWM的核心内容还包括了用于数据转换、集成、查询、分析和数据挖掘的相关模型和技术,如ETL(Extract, Transform, Load)、OLAP(Online Analytical Processing)、数据挖掘、模型驱动开发等。 总的来,CWM作为一个数据模型,提供了一种标准化的数据管理方式,用于描述和管理数据仓库中的各种数据和数据。它为数据仓库的设计、开发、维护和利用提供了一种统一的框架和方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值