UML扩展

2024-05-31

UML扩展 篇1

数据仓库技术在决策支持系统中发挥着关键的作用, 它对决策支持系统提供一些商业信息, 从而提高了决策能力。数据建模作为数据仓库构建过程中最为关键的技术环节, 它直接决定数据仓库构建的成败。一方面, 多维数据模型更加接近于人们分析数据的方式;另一方面, 多维数据模型简单的结构能够提高我们预测最终用户需求的能力。现有方法都没有考虑把数据仓库作为一个集成的整体来设计, 由平台无关模型PIM (Platform Independence Model) 、平台相关模型PSM (Platform Specific Model) 、代码 (CODE) 驱动开发的模型驱动体系架构MDA (Model Driven Architecture) 就是为解决分布、异构系统的集成问题而提出的下一代解决方案。PIM不同于PSM, PSM与具体的平台相结合, 必须考虑开发平台的特性。PIM是业务系统与软件系统的结合点, 是考虑业务模型如何能更好地用计算机表述, 而这种表述与特定的平台无关。从数据仓库MDA开发过程可以看出, PIM是非常重要的一环, 关系到PSM建模的实现。本文主要讲述了数据仓库多维数据的PIM (即多维数据概念模型) 建模问题。

目前, 在数据仓库概念建模领域, 国内外采用的方法有:DWER概念建模方法[5], 此方法建立在ER模型的基础上, 主要应用于静态结构建模, 对动态部分 (预测查询行为) 和功能建模 (在维上增加度量或者层次级别间的功能关系) 的建模能力非常弱;事实-维模型 (DFM) [6], 它是一种数据仓库概念设计的专用模型, 但在概念模型中没有使用标准的符号, 这样就要为此学习其相应的符号及表示法。相对于其他概念建模方法, 由Juan Trujillo提出的基于UML扩展的多维数据概念建模方法[1]较其他方法更加具有通用性, 主要是因为它采用UML这个定义元数据结构和语义的标准语言进行建模, 这为后来的元数据的管理和集成带来了极大的便利。但是此方法没有给出多维模型的形式化表述, 从而使得模型在理解上过于繁琐。针对上述概念建模方法中存在的问题, 本文在Juan Trujillo提出的基于UML扩展的多维数据概念建模方法基础上, 提出了构建多维数据模型事实和维的数学定义方法, 并从模型通用性上, 给出了简约的版类集合以及每个版类的自然语言描述约束。

1 相关技术介绍

1.1 MDA

MDA是对象管理组织OMG (Object Management Organization) 为解决分布、异构系统的集成问题而提出的一种解决方案。

MDA开发方法强调了“模型是MDA关注点”的事实。在MDA标准中, 一个模型是对一个系统的功能、行为、性能及系统结构等因素的描述或表示, 是对系统的功能、行为、性能及系统结构等因素的形式化规约。MDA所指的“模型驱动”, 决不意味着模型只在软件系统开发的前期发挥重要作用, 而是要求模型必须贯穿于整个生命周期, 从理解系统开始, 到分析、设计、构建、部署直到后期的实际运行维护和二次修改, 都要以模型作为指导。MDA目前定义了三类最基本的模型:PIM是具有高抽象层次、独立于任何实现技术的模型。PSM为某种特定实现技术量身定做, 让你用这种技术中可用的实现构造来描述系统的模型。CODE:MDA中实现相关模型不是程序员通过程序语言翻译设计模型实现的, 而是通过转换规则定义人员在实施人员的协助下定义转换规则, 通过指定目标系统的实现方式和具体中间件技术后, 通过MDA工具和自动程序设计软件自动生成的, 它的建立意味着系统的实现。

1.2 UML扩展

UML是由OMG维护使用的PIM建模语言, 也是目前为止应用最广泛的。UML中语义归约和实现归约的分离, UML的可扩展性都是其作为PIM建模语言的优点。可以充分利用UML的扩展机制, 通过使用版类、加标签值和约束来增强特定的UML模型元素的语义信息, 使它们能更好地满足用户的建模需求。下面就简要地介绍一下UML的这三种扩展机制:

·版类 版类扩展机制是指在已有的模型元素基础上建立一种新的模型元素。版类的表示方法是在元素名称上面添加一个版类的名字。版类的名字用字符串 (用双尖括号括起来) 表示, 同时版类也可以用一个图型表示。

·加标签值 加标签值是一种模型元素的新性质, 加标签值把性质明确地定义为一个名—值对, 其中, 把名称为标签, 标签和值都用字符串表示。且用大括号把他们括起来, 放在其他元素的下面。

·约束 约束是元素的一种语义条件或限制。通过约束限定元素的用法或元素的语义。约束显示在大括号内, 放在模型元素的旁边, 约束可以用自然语言表达, 也可以用OCL表示。

2 基于UML扩展的多维数据PIM建模

多维数据模型由维和事实来定义。维是关于一个组织想要记录的视角或观点。事实是一个数据度量, 对所要考察的数据的一个数值度量。本文首先进行了如下关于多维数据模型的定义。

定义1 (维) 维是个三元组, 标记为D= (DC, BC, DAG) , 其中:

DC (Dimension class) :维类。

BC (Base Class) :基类, 一个基类体现维级的一层, 是维类的上层。其中维类和基类包含相同的属性, 标记为:DC= (OID, D, DA) , BC= (OID, D, DA) 其中:

OID:是基类或者维类的唯一标识。

D (Descriptor) :代表基类或者维类的描述性属性, 它是后面进行OLAP操作所必须的属性。

DA (Dimension Attribute) :维属性, 它是基类和维类中的一些描述性属性, 可以为空。

DAG (Directed Acyclic Graph) :是一个定义在基类或者维类上的有向的、非循环的弱连通图。图中的每一个结点代表一个维类或基类。图中的边有两种含义, 一种表示基类或维类之间的上卷或下钻的关系 (例如:日期, 星期, 年之间的关系) , 另一种代表基类或维类之间的继承关系 (例如食物和鱼肉之间的关系) 。

严格性和完整性是一个维级中很重要的两个概念。严格性是指维级中的底层基类和它上一级的维类或基类是一对一的关系。完整性是指所有的基类只属于一个高层基类或维类, 且这个高层基类或维类也只包含这些底层基类。在这里, 我们认为一个多维模型的维级是不严格的, 默认情况下是不完整的。

定义2 (事实) 设D1, D2, …, Dn是n个维, 则事实 (F) 是定义在这n个维上的共享聚合, 它可以表示成如下的三元组, F= (DC, DFR, FC) 。

DC:维类的共享聚合。

DFR (Dimension Fact Relationship) :维与事实的关系。一般情况下, 维与事实之间是一对多的关系, 但在特殊的情况下, 维和事实之间也存在多对多的关系。两种关系的区别在于拥有不同的聚合关系重数。

FC (Fact Class) :事实类是一个两元组, FC= (OID, FA) , 其中:

OID:事实类的唯一标识, 即退化维 (一个只在事实类中定义, 而没有特定维定义的属性) 。

FA (Fact Attribute) :事实属性可以是原子的或导出的属性, 若是导出的属性, 要表明其导出规则。

默认情况下, 认为所有的事实属性都是可相加的, 即加法操作在所有的维上对事实属性都是可行的。在某一维上不可加的事实属性, 应注明此属性在该维上不能相加。

由定义1和定义2, 本文引入了八个版类, 其中三个继承UML中的类模型元素, 四个继承UML中的属性模型元素, 一个继承UML中的关联模型元素。关系如图1所示。

下面分别对各个版类进行描述:

(1) FC (事实类) 描述多维数据模型中事实的版类, 它有如下约束:事实类的属性只能是OID或FA;与事实有关的连接只能是聚合连接;事实类只能与维类进行连接。

(2) DC (维类) 描述多维数据模型中维的版类, 它有如下约束:维类的属性只能是OID、D或者DA;维与事实的所有连接必须能够对事实进行聚类操作;维与事实的所有连接不能对维进行聚类操作;维不能与别的维进行连接。

(3) BC (基类) 代表维级中的上层的版类, 它有如下约束:基类的属性只能是OID、D或者DA。OID和D是基类中的必需属性;基类可以与其他的基类或维类进行关联;一个基类不能同时属于继承关系和关联关系。

(4) OID 该版类描述的是多维数据模型中事实、维的关键属性, OID属性是类中的唯一标识性属性。它有如下约束:OID不能是导出的属性。

(5) FA (事实属性) 该版类描述的是多维数据模型中事实类的属性, 它具有如下约束:事实属性只能属于某一事实;如果一个事实属性是通过推导得出的, 应标出其导出规则。

(6) D (描述符) 该版类描述的是维类和基类的描述型属性, 它具有如下约束:D只属于维类和基类;如果D是通过推导得出的, 应标出其导出规则。

(7) DA (维属性) 该版类描述的是多维数据模型中维类的属性, 它有如下约束:维属性只属于某一维类和基类;如果这个属性是通过推导得出的, 应标出其导出规则。

(8) R-D 描述维类与基类或基类与基类之间的关联关系, 它有以下约束:R-D关联的两端只能是维类或基类;R-D关联的一端包含角色r, 另一端包含角色d。r表示roll-up-to的方向, d代表drill-down的方向。

为了对类中的基本属性和推导属性进行区分, 在这里引入了推导元素的标记, 它是在相应元素名称前边加一斜线, 而元素的图示标记没有改变。

3 方法应用

3.1 应用实例

前面对多维模型的八个版类进行了定义, 下面针对某钢铁企业采购系统的采购价格差异分析主题, 具体地介绍在基于模型驱动架构的数据仓库构建过程中, 数据仓库多维数据PIM模型的建立。

采购价格作为组成采购成本中最主要的一部分, 对企业决策人员提供关于采购价格在不同时期、不同物资类别以及不同供应商上的价格差异分析, 可以使得决策人员更加有效地控制采购成本。针对此采购价格分析主题, 抽取出一个事实、三个维, 它们分别是采购价格事实、时间维、物资维、供应商维。如下分别是时间维的维级图 (如图2所示) 、物资维的维级图 (如图3所示) 以及采购价格差异多维数据PIM模型图 (如图4所示) 。

为了对提出的采购价格差异多维数据PIM模型进行验证, 在图4的基础上, 我们采用JAVA语言, 开发了基于B/S模式的某钢铁企业的采购价格分析决策支持系统。图5是某企业2008年1月—3月螺栓类别各项物资采购价格差异分析结果。从结果可以看出, 此系统具有一定的采购价格分析功能, 使得决策者能够良好地控制采购成本。实践表明, 利用此模型开发的系统不但在开发效率上较传统的E-R模型提高了, 而且此模型是基于国际标准建模语言 (UML) 建立的, 使模型更加具有规范性, 可以很好地实现不同模型之间的共享, 同时, 也有利于模型的重用和维护。

3.2 方法评价

文献[7]提出了一个数据仓库的评价标准, 该标准包括如下主要内容:

(1) 显式地表达维的层次;

(2) 平等地对待维和聚合属性;

(3) 支持维上的多重层次;

(4) 支持对度量进行正确的聚合或抽象;

(5) 支持非到上的层次 (所谓非到上的层次是指下层的每一个对象都一定要在它的直接上层有一个层次与它对应) ;

(6) 支持非严格的层次:主要指维的多对多关系;

(7) 支持事实与维之间的“多对多关系”;

(8) 支持度量的抽象或聚合的不同层次的粒度;

(9) 支持跳跃式的层次, 通过起点和终点相同的不同路径表示;

(10) 处理时间变化。

根据该标准, 对本文提出的多维数据PIM建模方法进行了简单的评价, 从图2—图4可以看出, 该方法明显地支持第 (1) 、 (3) 、 (5) 、 (8) 、 (9) 条;对于第 (6) 、 (7) 条, 由于本方法是UML的一种扩展, 借助于UML本身的联系的基数约束就能很好地进行表达;通过引入的属性版类, 标准的第 (4) 条也得到了有力的支持;对于第 (2) 条, 由于推导属性的引入, 它也得到了广泛的支持;在进行多维数据概念建模时, 一般都引入了时间维, 从而也就支持了标准的第 (10) 条。

4 结论与展望

本文通过对UML进行扩展, 利用版类、加标签值和约束, 建立了基于UML扩展的多维数据PIM模型。这种基于UML的多维建模方法, 一个显著优点就是建立在一种广泛接受的面向对象建模语言的基础上, 从而使开发人员在具体的应用时, 不必重新学习一些新的模型及相关概念, 便于广泛应用。

本文实现了基于模型驱动架构的多维数据PIM模型。多维数据PIM模型与多维数据PSM模型的转化、多维数据PSM模型的表示方法、数据仓库中的其他过程 (例如ETL) 基于模型驱动架构的构建方法等问题还有待于在今后的工作中作进一步的研究。

参考文献

[1]Sergio LujanMora, Juan Trujillo, Il Yeol Song.A UML profile for multi-dimensional modeling in data warehouses[J].Data&Knowledge Engi-neering, 2006, 59 (3) :725-769.

[2]Jose Norberto Mazón, Juan Trujillo.An MDA approach for the develop-ment of data warehouses[J].Decision Support Systems, 2008, 45 (1) :41-58.

[3] OMG (Object Management Group) .UML Superstructure Specification (v2.0) .Available from: http://www.omg.org/cgi-bin/doc?formal/05-07-04.

[4]Juan Trujillo, Manuel Palomar, Jaime Comez.Designing Data Warehou-ses With OO Conceptual Models[J].IEEE Computer, Special Issue onData Warehouse, 2001, 34:67-75.

[5]Chen Ming, Wu Guo wen, Shi Bai le.Design the Data Warehouse Con-ceptual[J].Mini-Micro Systems, 2002, 23 (12) :1453-1458.

[6]Golfarelli M, Maio D, Rizzi S.The dimensional fact model:a conceptu-al model for data warehouses[J].International Journal of CooperativeInformation Systems, 1998, 7 (2-3) :215-247.

UML扩展 篇2

基于扩展的UML活动图的质量工作流建模

为满足2000版ISO9000过程管理模式的要求,使用工作流技术解决过程控制问题成了企业质量管理的一种需要.本课题用UML类图表达了工作流参考模型,统一了UML活动图与工作流过程模型的概念,并根据工作流的概念扩展了UML活动图.文末,利用扩展的活动图表达了质量管理中一个典型的`过程--不合格品的控制过程.

作 者:曾清华 李青 Zeng Qinghua Li Qing  作者单位:北京航空航天大学机械学院 刊 名:航空制造技术  ISTIC英文刊名:AERONAUTICAL MANUFACTURING TECHNOLOGY 年,卷(期):2006 “”(9) 分类号:V26 关键词:工作流   过程模型   扩展的UML活动   图   质量管理  

【UML扩展】推荐阅读:

语句扩展06-17

词汇扩展04-29

扩展运用05-04

扩展策略05-07

扩展装置05-20

业务扩展05-23

扩展服务05-31

扩展提升06-01

扩展裂纹06-07

扩展特性06-08

上一篇:物流发展问题分析下一篇:奶牛抵抗素