已阅读5页,还剩57页未读, 继续免费阅读
(计算机应用技术专业论文)模型驱动系统中模型转换技术的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
, 一 c l a s s i f i e di n d e x : u d c : ad i s s e r t a t i o nf o rt h ed e g r e eo f m e n g ( c o l l e g et e a c h e r s ) r e s e a r c ho ft h em o d e lt r a n s f o r m a t i o n t e c h n o l o g yi nm d a c a n d i d a t e :z h a o p i n g s u p e r v i s o r :p r o f z h a n gw a ns o n g a c a d e m i cd e g r e e a p p l i e df o r :m a s t e ro fe n g i n e e r i n g s p e c i a l i t y :c o m p u t e ra p p l i c a t i o n t e c h n o l o g y d a t eo fs u b m i s s i o n :j a n u a r y , 2 0 1 0 d a t eo fo r a le x a m i n a t i o n :m a r c h ,2 0 1 0 u n i v e r s i t y :h a r b i ne n g i n e e r i n gu n i v e r s i t y 乞 产 哈尔滨工程大学 学位论文原创性声明 本人郑重声明:本论文的所有工作,是在导师的指导下,由 作者本人独立完成的。有关观点、方法、数据和文献的引用已在 文中指出,并与参考文献相对应。除文中已注明引用的内容外, 本论文不包含任何其他个人或集体已经公开发表的作品成果。对 本文的研究做出重要贡献的个人和集体,均已在文中以明确方式 标明。本人完全意识到本声明的法律结果由本人承担。 山 作者( 签字) :灸辫 日期: 劲,9 年方月明 哈尔滨工程大学 学位论文授权使用声明 本人完全了解学校保护知识产权的有关规定,即研究生在校 攻读学位期间论文工作的知识产权属于哈尔滨工程大学。哈尔滨 工程大学有权保留并向国家有关部门或机构送交论文的复印件。 本人允许哈尔滨工程大学将论文的部分或全部内容编入有关数据 库进行检索,可采用影印、缩印或扫描等复制手段保存和汇编本 学位论文,可以公布论文的全部内容。同时本人保证毕业后结合 学位论文研究课题再撰写的论文一律注明作者第一署名单位为哈 尔滨工程大学。涉密学位论文待解密后适用本声明。 本论文( 陆授予学位后即可口在授予学位1 2 个月后口解 密后) 由哈尔滨工程大学送交有关部门进行保存、汇编等。 作者( 签字) : 勃岳 日期:2 o l o 年岁月d - 日 导师( 签字) :孝辨 山f 。年弓月r 门 一二 产 哈尔滨1 :稃大学硕十学何论文 摘要 2 0 0 1 年,o m g ( 国际对象管理组织煨出了m d n 模型驱动构架) 。m d a 的关 键之处就是软件开发过程是由对软件系统的建模行为驱动的。m d a 的目标是把 业务和应用逻辑与底层的平台技术分离。目前虽然构建平台模型方面业内己经建 立了相关标准,并提出了很多转换方法和提案,却没有形成统一的标准,因此, 只能说模型间的相互转换技术尚处在探索阶段,还需进一步研究和讨论。所以本 文将以m d a 整体框架为起点,对m d a 中的模型转换技术进行深入研究。 首先,全面的介绍m d a 的相关理论及技术,深入的阐述o m g 定义的m d a 的四个核心标准:u m l ,m o f ,c w m ,x m i 。然后对现阶段p i m 到p s m 模 型转换的各种方法进行讨论,包括它们的优点和不足。 其次,对u m l 标准的子标准对象约束语言( o c l ) 进行详细介绍,包括o c l 元模型与其在m d a 中的主要用途等。由于o c l 不但可以用于模型约束、查询, 还可以用于定义模型转换规则和定义建模语言等,所以本文将结合o c l 的特性 分析其在m d a 框架中的应用,然后提出一种基于u m l 和o c l 的模型转换方法。 然后,重点阐述基于u m l 和o c l 的模型转换方法。包括定义转换原理和 转换规则,利用元模型和对象约束语言分别去定义具体转换规则,以及给出相应 的完整的模型转换框架,并给予详细说明。 最后,通过一个高校排课系统对研究成果进行应用和验证。详细介绍了系统 需求分析和总体设计,并基于w e b 的三层模式给出了此种方法从p i m 到p s m 模 型转换的具体过程,说明了基于u m l 和o c l 的模型转换方法的可行性。 关键词:模型驱动体系;平台无关模型;平台相关模型;模型转换 一 三 产 哈尔滨t 程大学硕+ 学何论文 a b s t r a c t i n2 0 0 1 ,o m g ( o b j e c tm a n a g e m e n tc r o u p ) p m p o s e dm d a ( m o d e ld r i v e n a r c h i t e c t u r e ) t h ek e yt om d a i st h a tt h ep r o c e s sf o rs o f t w a r ed e v e l o p m e n ti sd r i v e n b yt h em o d e l i n gb e h a v i o ro fs o f t w a r es y s t e m t h eg o a lo fm d a i st os e p a r a t eb u s i n e s s a n dl o g i ca p p l i c a t i o nw i t hr o c k - b o t t o mp l a t f o r mt e c h n o l o g y a l t h o u g ht h ef i e l do f p l a t f o r mm o d e l i n gc o n s t r u c t i o nh a se s t a b l i s h e dt h er e l e v a n ts t 争n o a r d sa n dp u tf o r w a r d m a n yc o n v e r s i o nm e t h o d sa n db i l l sa tp r e s e n t , i td o e s n tf o r mau n i f i e ds t a n d a r d t h e r e f o r e ,w ec 锄s a yo n l yt h a tt h em u t u a lc o n v e r s i o nt e c h n o l o g yb e t w e e nm o d e l si s s t i l la tt h es t a g eo fe x p l o r a t i o na n di ts t i l ln p 地a :i sf u r t h e rr e s e a r c ha n dd i s c u s s i o n s ot h e t h e s i si ss t a r t e dw i t hm d aw h o l ef l a m e w o l k , a n di t d e e p l ys t u d i e st h em o d e l i n g t r a n s f o r m a t i o nt e c h n o l o g yi nm d a f i r s t , t h et h e s i si n t r o d u c e st h er e l a t e dt h e o r ya n dt e c h n o l o g yo fm d a i nd e t a i la n d i te x p o u n d st h ef o u rc o r es t a n d a r d so fm d aw h i c hi sd e f i n i t eb yo m gt h a ti s ,u m l , c w m ,x m i , m o et h e ni td i s c u s s e st h ev a r i o u sm e t h o d so fm o d e u i i gt r a n s f o r m a t i o n f r o mp i mt op s ma tp r e s e n t , i n c l u d i n gt l l e i ra d v a n t a g e sa n dd i s a d v a n t a g e s s e c o n d , i ti n t r o d u c e st h es u b - s t a n d a r do fu m l - o b j e c tc o n s t r a i n tl a n g u a g e ( o c l ) , i nd e t a i l ,i n c l u d i n gt h em e t a - m o d e lo fo c la n di t sm a i nu s ei nm d a b o c a u s co c l n o to n l yc a ni x :u s e dt ot h em o d e lc o n s t r a i n ta n dq u e r yb u tt od e f i n ec o n v e r s i o nr u l e s a n dm o d e l i l l gl a n g u a g e ,t h et h e s i sw i l la n a l y z et h ea p p l i c a t i o no fc h a r a c t e r i s t i c so f o c lw h i c hi si nm d a f i a m e w o r k , t h e ni tp u t sf o r w a r dam o d e lt r a n s f o r m a t i o nm e t h o d t l l a ti sb a s e do nu m l a n do c l t h i r d , t h et h e s i si l l u s t r a t e st h em o d e lt r a n s f o r m a t i o nm e t h o d sb a s e do nu m la n d t h eo c lf r o mt h ed e f i n i t i o no fc o n v e r s i o np r i n c i p l ea n dc o n v e r s i o nm l e s ,i tu s e st h e m o d e la n dt h eo b j e c tc o n s t r a i n tl a n g u a g et od e f i n es p e c i f i cc o n v e r s i o nm l e s ,g i v e st h e c o r r e s p o n d i n gf u l lm o d e lt r a n s f o r m a t i o n , a n dg i v e sd e t a i l e dd e s c r i p t i o n k 毽t t h et h e s i sa p p l i e sa n dv e r i f i e st h er e s e a r c ha c h i e v e m e n t sb yac o l l e g e c o u r s e s - a r r a n g e m e n ts y s t e m i ti n t r o d u c e st h es y s t e md e m a n da n a l y s i sa n dt h eo v e r a l l 一 哈尔滨t 稃大学硕十学位论文 - _ _ i i _ _ _ _ _ _ i _ _ _ _ _ _ _ _ _ _ _ i _ _ _ i i i i i i i i i i i i i i i ; d e s i g ni nd e t a i l ,a n db a s e do nt h et h r e e - l a y e rm o d e lo nt h ew e b ,i tg i v e st h es p e c i f i c p r o c e s so fm o d e lt r a n s f o r m a t i o nf r o mp i mt op s m ,a n di l l u s t r a t e st h ef e a s i b i l i t yo ft h e m o d e lt r a n s f o r m a t i o nm e t h o db a s e do nu m la n dt h e0 c l k e y w o r d s :m o d e ld r i v e na r c h i t e c t u r e :p l a t f o r mi n d e p e n d e n c em o d e l :p l a t f o r m 哈尔滨t 稗大学硕+ 学位论文 目录 第1 章绪论1 1 1 课题研究背景与意义1 1 2 国内外研究现状1 1 3 本文主要研究内容3 1 4 论文结构组织3 第2 章m d a 与模型转换5 2 1m d a j e 玉苤5 2 1 1m d a 开发过程6 2 1 2m d a 的核心标准7 2 2 模型”1 2 2 3 模型转换概述1 3 2 4p i m 到p s m 模型转换的主要方法1 4 2 4 1 手动转换方法1 4 2 4 2 基于元模型的转换方法”1 5 2 4 3 结构驱动的模型转换方法1 5 2 4 4 基于x s l t 的模型转换方法1 6 2 4 5 基于模式的模型转换方法”1 7 2 4 6 混合的模型转换方法1 7 2 5 本章小结”1 7 第3 章基于o c l 的模型转换1 8 3 1o c l 简介1 8 3 2o c l 元模型1 9 3 3o c l 在m d a 中的应用2 0 3 3 1o c l 用于模型约束2 0 3 3 2o c l 用于定义建模语言2 1 3 3 3o c l 用于定义模型转换规则2 2 哈尔滨t 稃人学硕十学位论文 3 3 4o c l 用于模型查询2 2 3 4 基于o c l 的模型转换2 4 3 4 1 基本的o c l 实现模型转换的方法2 4 3 4 2 扩展的o c l 实现模型转换的方法2 5 3 5 本章小结2 6 第4 章基于u m l 与o c l 的模型转换方法研究2 7 4 1u m l 建模过程简介2 7 4 2 基于u m l 的图形模型转换2 7 4 2 1 基于u m l 的图形转换定义2 7 4 2 2 转换的策略2 8 4 3 转换规则”二2 8 4 3 1 转换规则的定义2 8 4 3 2 基于u m l 的图形模型转换规则2 9 4 3 3 元模型表示的转换规则”3 0 4 3 4 转换规则的o c l 定义3 3 4 4 基于u m l 与o c l 的模型转换框架3 5 4 5 本章小结3 6 第5 章应用实例高校排课系统3 7 5 1 系统分析3 7 5 2 建立p i m 类模型3 9 5 3 模型变换路线3 9 5 4 从p i m 到p s m 的转换4 0 5 4 1 从p i m 到s q lp s m 的转换”4 1 5 4 2 从p i m 到e i b 组件p s m 的转换4 3 5 4 3 从p i m 到w e b 组件p s m 的转换4 5 5 5 本章小结4 7 结论z 1 8 参考文献5 0 攻读硕士学位期间发表的论文和取得的科研究成果5 3 致谢”5 4 个人简历。5 5 哈尔滨丁程大学硕十学位论文 第1 章绪论 1 1 课题研究背景与意义 伴随计算机应用的普及,计算机与计算机软件已经渗透到国防、国民经济、 日常生活的每一个领域。回顾这五十几年的发展历程,不难发现这样的事实,那 就是计算机软件技术的发展速度是惊人的,从以机器为中心到以应用为中心,再 到以企业为中心,计算机在越来越多地帮助着人类。同时,随着人类生活的不断 进步,人们对计算机所能实现的自动化程度的期望也越来越高,使得每一个软件 系统变得日渐庞杂,为此要满足人们的种种要求,既需要计算机硬件的不断完善 更需要计算机软件工程的继续改革与更新。 为了实现业务逻辑的分析设计与实现技术之间的低藕合关系,对象管理组织 ( o b j e c t m a n a g e m e n t g r o u p ,o m g ) 提出了模型驱动架构这种新的软件开发方法, 为软件开发提出了一个新的方向,并逐步成为软件工程技术的研究热点和发展趋 势。m d a 通过应用模型和模型转换技术,提升了抽象层次,以此来应对软件开 发的复杂性。由此,模型转换作为m d a 中的一项关键技术,成为研究人员所关 注的焦点,现已被提出一些典型的转换方法,如基于x s l t 的模型转换,基于模 式的模型转换等,但是在这些方法中大都侧重于不同抽象层次间模型转换具体实 现技术的研究,而在映射关系的定义原则,以及转换的可行性和正确性验证等方 面,仍缺乏理论基础的支撑,因此,可以说m d a 研究的理论仍不完善也很难达 到预期的实现。鉴于此,继续研究模型转换技术为m d a 的发展提供一点自己的 想法就是本论文的最终目的。 本文将借鉴已有的软件体系结构和软件形式化等方面的研究成果,在对模型 转换过程和方法进行深入研究的基础上,提出了一种基于u m l 和o c l 的模型 转换方法。 1 2 国内外研究现状 m d a 是一个把业务逻辑自动转换到可执行组件的标准软件开发方法,它最 哈尔滨t 程大学硕十学佗论文 早是由o m g 提出的。o m g 是一个非赢利性组织,不属于任何厂商,其主旨是 要统一不同的商业产品和标准之间的数据交换及相互操作,从而改善各厂商的软 件产品之间不兼容的情况,提出m d a 就是要实现从企业化模型到最终代码的自 动化生成i l j 。 其实早在1 9 8 9 年,o m g 已经为解决企业间的应用集成问题作出努力,并制 定了跨平台的应用集成和互操作性标准一c o r b a ,c o r b a 技术可以在异构硬 件平台、异构操作系统和异构编程语言间交互顺利,为人们提供了一个中间件技 术平台。除此之外,n e t 和j 2 e e 也提供了类似的服务,但是这些还是不能完全 解决企业间跨平台计算的要求。因此,2 0 0 1 年初,o m g 首先提出了m d a 的概 念,并定义了相关建模语言( 如u m l 等) 用于创建模型,开始了人们探索m d a 的艰难之路。 经过这些年研究人员的不懈努力,现在已经取得了一定的成绩,也出现了成 功运用m d a 架构的事例,如针对政府医疗方案进行管理的g c b r ( g o v e r n m e n t c o m u t e r - - - b a s e dp a t i e n tr e c o r dp r o j e c t ) ,这个系统就是运用m d a 构架开发进行 研制的。同时还有一些公司还推出了开发m d a 系统的工具集,如c o m p u w a r e 公司推出的o p t i m a l ,i n t e r a c t i v eo b j e c t s 公司推出的a r c s t y l e r ,以及开放源代码 的a n d r o sm d a 等都已经在一些项目中得到了广泛的应用,并且取得了显著的效 梨2 j 。如今的o m g 网站上已经列出了上百种支持m d a 的开发工具,可以说具 备m d a 特征的开发工具的发展是非常迅速的,但是从p i m 模型到p s m 模型转 换方法的标准化却迟迟不能完成。因此m m ,b o r l a n d 和其他大型制造商仍都保 持谨慎的态度,尽管他们在开发工具中会提供m d a 职能的某一部分,但仍然没 有完全符合o m g 的m d a 标准定义。即便如此,m m 公司却在r a t i o n a l 中合理 增加了m d a 的功能外( 在x d e ,r o s e 等工具中都提供了m d a 功能) ,还在其 开发源代码项目e c l i s e 的宣传中也提出了一个创新的m d a 代码生成系统项目 e m f ( e c l i s e m o d e l i n g f r a m e w o r k ) ,由此可见i b m 对m d a 非常重视。b o r l a n d 公 司声称,他们也在时刻关注相关的m d a 运用技术,并且准备在t o g e t h e r 中增加 基于m d a 模型的自动生成功制引。 虽然国外在m d a 方面的研究已经有近十年的历程,但是国内真正开始了解 m d a 还是近些年的事情,相关研究及运用更是起步较晚。虽然如此,在国内也 看到了对m d a 极大的关注,比如m d a c h i n a 作为一个关注与研究m d a 的专 2 哈尔滨l :稃大学硕十学何论文 业网站逐渐壮大,吸引了越来越多的m d a 关注人事。除此之外,在很多关于计 算机技术的论坛中也纷纷建立起m d a 专区。并且国内的许多公司及大学也正在 研究m d a 技术,如作为国内e r p 软件开发领袖企业的金蝶软件就宣称成功地将 m d a 的思想应用到其d o s 系统中,而隶属于武汉大学的软件工程实验室也在研 究m d a 的模型间的互相转换,并提出了一些先进性的想法。但是,我们要面对 一个现实。那就是,m d a 仍然处在发展初期,需要完善及明确的内容还有许多, 如m d a 模型中从p i m 到p s m 的转换方法还有待于标准化,c w m 元模型比较 难以在p i m 中实现,m o f 和u m l 发展不协调,以及m d a 模型中的诸多细节 没有明确定义等,这些都将在一定程度上影响m d a 的快速发展。 综上所述,代表软件工程领域发展趋势的m d a 模型驱动系统正处于快速发 展阶段,尽管现在在一些重要的环节问题还存在分歧,甚至有一些问题无法解决, 但它将在未来慢慢成熟。 1 3 本文主要研究内容 为了更好的完善m d a ,早日实现模型转换的标准化,本文也将针对模型转 换进行研究。主要研究内容包括: ( 1 ) m d a 的相关理论和技术。具体包括m d a 的四个核心支撑标准,m d a 的开发过程和整体技术框架等,为下面的研究提供了理论基础。 ( 2 ) 模型转换的相关概念及原理。尤其对现阶段p i m 到p s m 模型转换的各 种方法进行讨论,指出它们的优点和不足。 ( 3 ) o c l 与u m l ,及其二者在m d a 中起到的作用。 ( 4 ) 提出一种基于u m l 与o c l 的模型转换方法。然后从转换原理、转换 规则,到转换规则的制定及模型转换框架几个方面,对这种方法进行具体阐述。 最后通过一个高校排课系统更进一步展示此种转换方法。 1 4 论文结构组织 第1 章介绍了课题的研究背景与意义,国内外研究现状等情况。然后概要 介绍了本论文所要研究的主要内容和文章的组织结构。 第2 章对m d a 的相关知识与模型转换进行简要的介绍,概述了现有的模 3 哈尔滨一:稗大学硕+ 学何论文 型转换方法。 第3 章研究0 c l 在m d a 中的应用,为下一章的u m l 与0 c l 的联合应 用,打下理论基础。 第4 章提出一种基于u m l 与o c l 的模型转换方法,具体介绍此种方法的 转换原理、转换规则以及模型转换整体框架。 第5 章通过一个高校排课系统展示m d a 的开发过程,同时对本文提出的 转换方法进行应用与验证。 最后结论给出本论文的总结及下一步需完善的工作。 4 哈尔滨t 稃火学硕十学何论文 2 1m d a 概述 第2 章m d a 与模型转换 m d a ( m o d e ld r i v e na r c h i t e c t u r e ) - 一模型驱动体系架构,是2 0 0 1 年7 月对象管 理组织o m g ( o b j e c tm a n a g e m e n tg r o u p ) 发布的一个软件开发框架。m d a 以模型 为主要研究对象,并由软件系统的建模行为驱动整个开发过程。o m g 的构想是 将目前的开发行为提升到更高的抽象层次分析模型级,然后把针对特定计算 平台的编码工作交给机器来自动完成,实现业务逻辑与实现技术的分离,使二者 相对独立变化,其中模型的价值也将在包容已有技术的条件下被最大化 4 1 。 m d a 对应用集成中间件技术和产品形成有力的影响。一方面,各类中间件 技术在m d a 平台独立的思想的指引下重新融合在一起,同时在集成的企业信息 架构中,都找到了属于自己的位置:一方面,业务构件的抽象性让企业业务模型 能够独立于中间件技术而存在,大大丰富了构件的层次性,从而为企业信息资产 的积累提供了巨大的机会;此外,在m d a 应用开发的完整生命周期理念的指引 下,基于中间件的应用开发平台将与运行平台完美地结合在起,为新的构件协 同框架带来显著优势,如提高生产效率、增加软件的可移植性和可维护性等。 基于m d a 的开发重点是解决应用程序的功能和行为问题,而不是实现时将 采取什么具体技术的问题。m d a 以模型为基础,并将模型通过业务逻辑和实现 细节的不同作了具体区分。m d a 的开发过程可简单概括为:先建立与平台无关 的模型( p i m ) 和一些针对具体平台的映射,然后按照转换规则自动生成一个与 特定的平台技术相关的模型系统( p s m ) ;最后通过建立一些针对于具体实现语 言的映射,将p s m 自动生成代码,从而实现最终系统。由于p i m 与平台无关, 因此,当有新技术( 如x m l s o a p ) 出现时,我们没有必要再重复系统的建模 过程,只需要重新定义有关新技术的映射,再配合适当的转换工具,就可以实现 新的模型转换。也就是说,在m d a 的开发过程中,我们对系统的功能和行为建 模只有一次,并只有一次。于是,m d a 为解决许多不相容的平台和中间件技术 在系统集成和互操作性中存在的各种各样缺陷提供了一种新的想法,这是其他架 5 哈尔滨j 稗大学硕+ 学位论文 构所不能达到的1 5 j o 2 1 1m d a 开发过程 m d a 开发过程和传统开发过程一样,要经过概念化和需求收集、分析和功 能描述、设计、编码、测试、部署这些过程,重要的是不同开发过程后获得的开 发产品大不一样。 m d a 开发周期 传统开发周期 图2 1m d a 开发周期和传统开发周期比较 由图2 1 可见,二者主要区别在于p i m 和p s m ,通常一个系统跨越几种技术, 所以一个p i m 通常对应几个p s m ,如图2 2 所示。由于p s m 和代码在一个抽象层次 上,所以从p s m 到代码的转换相对来说要容易实现一些。因此m d a 开发过程中 的最重要的一步是将p i m 转换到p s m ,这也是m d a 中最难的一步。 m d a 创新和实现的关键是把p 订到p s m 与p s m 到代码的模型转换完全自动 化,由转换工具来执行模型转换,但现有的工具还不能达成这一意愿,如今要达 到百分之百的成功转换p 到p s m ,还必须经过开发人员的手动帮助完成关键模 型与代码的生成,也就是从p i m 到p s m 的转换仍有待完善。尽管如此,现有的工 具也可以做到从p i m 生成一个可运行的应用程序,并提供创建、改变系统中对象 属性等基本功能,让开发者在开发过程中能够收到p i m 的立即反馈,以便可以及 时动态的创建最终的基本原型。 6 哈尔滨t 稗大学硕十学位论文 il 职厥i 刊1 髂1 n g b m 供型卜,l 此m 脚伞 _ i 应 刊s q lp s m 模型b s o l d d l 用p 蹦 一 商模 e i b 胳m 模型馨 j a v a 源代码 飞 j 业 v ,型 逻 刊n e t 黔m 模型b l 阱一 辑 o k 酬模型馨 相应代码 j , 2 1 2m d a 的核心标准 图2 2m 叫旺作机理 o m g 的m d a 的结构如图2 3 所示,在这个结构刚7 l 中,你可以清楚的看到 m d a 的核心( 也就是在图的中心位置) 是各种o m g 标准( m o f ,u m l ,和c w m ) 图2 3o m g 的m d a 结构图 以及其他支持m d a 的标准的结合关系。m d a 就是依靠这些标准来支持它的开 7 哈尔滨t 稃火学硕十学位论文 发过程,下面具体介绍这些标准,及他们在m d a 中的作用。 2 1 2 1u m l u m l ( u i l i 丘e dm 0 d e 1 1 9l a n g u a g e 卜统一建模语言,是一种建模语言,是 第一代用来为面向对象开发系统的产品进行说明、可视化和编制文档的方法。是 一种标准的表示,而不是一种方法( 或方法学) i8 】。 软件的一大难题是项目参与者之间的交流,通常包括在该领域的专家、软件 设计和开发人员与客户等之间的交流问题。而u m l 雨j 用表示方法的标准化,为 各类开发人员在不同过程中提供了一个统一的描述方法,在极大程度上促进了人 们相互之间的理解。 u m l 作为面向对象建模语言,它语义丰富,包含类、对象、职责、关联、 接口、活动、u c a 、包、顺序、协作和状态等有关建模的概念;并且还有一 系列图形化设计工具的支持。在传统的u m l 中,使用用例图、类图、对象图、 时序图、状态图、活动图、组件图、协作图和配置图共九种图来描述表示系统, 用基于u m l 的精确元模型为u m l 的所有元素在语法和语义上提供了简单、一致 和通用的定义性说明,消除了不同表达方法所造成的影响,使开发者能在语义上 取得了一致,但由于这些图是从不同的视角对系统行为特征的描述,而且表示零 散、语法简单,所以根本不能使静态结构和动态行为紧密结合,更谈不到保证模 型到代码的完全转换。 为了让u 嗽备可执行性,u m l 2 0 在传统u m l 的基础上进行了加强与完 善,使其可以作为p i m 的建模语言。u m l 2 0 其实就是传统u 1 诅与u m l a s ( u m l a c t i o ns e m a n t i c s ,u m 珩为语义) 的动态行为组合,它为对象约束语言( o b j e c t c o n s t r a i nl a n g u a g e ,o c l ) 作出了更为精确和完整的定义,又给出了o c l 的元模 型,并将o c t , 的功能和数学语义在一定程度上进行了提升。另外,在u m _ 2 0 中 还引入包合并( m e r g em e c h a n i s m ) 机制,这并不是重新去定义新的、独立的包,而 是通过和包导入机制( i m p o r tm e c h a n i s m ) 将模型元素联系起来,维护了被合并包 和合并包之间的依赖关系。同时实现了设计关联的复杂化,提高了基本构件的重 用性。在u m i 2 0 中包合并符号用 代替t 。 总之,m d a 的开发人员可以很容易地使用u m l 对目标系统建模和分析模型, 8 哈尔滨t 程大学硕+ 学位论文 这样开发人员面临的不再是代码而是模型,使得系统更容易理解。同时u m l 还 让系统在编码之前完成了评估,这样不但有利于在需求与设计上的错误在编码之 前就被发现并及时得到纠正,还能成功的降低了软件成本。 2 1 2 2m o f m o f ( m e t ao b j e c tf a c i l i t 办一元对象设施,是通用的、抽象的,用于定义 元模型的语言,被称为定义元元模型( m e t a m e t a m o d e l ) 或者定义元模型的模型。 m o f 是面向对象的,它定义了基本的元素、语法、元模型的结构,是比u m l 抽 象层次更高的建模语掣8 l 。 m o f 具备描述各种不同元模型的能力,即便i 沮也可以用m o f 定义元模型, 并且in 小,元模型的核心子集与m o f 模型的核心子集在建模理念上大致相同,使 得m o f 描述的元模型也可以采用u m l 的语法机制,导致m o f 的建模结构和u m l 的建模结构毫无差异。 在m o f 中的核心元建模结构中,用于定义和构建元模型的核心概念有类 ( c l a s s e s ) 、包( p a c k a g e s ) 、聚合( a g g r e g a t i o n ) 、关联( a s s o c i a t i o n ) 、引用( r e f e r e n c e ) 、 数据类型( d a t at y p e s ) 等。m o f 构架包含四个层次。这四个层次依次被命名为m 0 , m 1 ,m 2 ,m 3 如图2 a t 9 j 所示。 图2 4m o f 的元层次 在m o f 模型抽象的四层中,上一层都是下一层的抽象,下一层都是上一层的 9 哈尔滨丁稃大学硕十学位论文 实例( 当然这并不是绝对,有时可以根据需要增加一些层) ,表2 1 给出层次问的 大致描述。其中,m 0 层是要被建模的对象;m 1 层是模型,比如u l v l l 模型;m 2 层是元模型,比如,u m l 规范在的抽象语法模型;m 3 层是元元模型,表达m 2 层元模型的建模语言的规范,m 3 层的元模型是反射式定义的因式不需要更高的 层次,所以也是m o f 的最顶层。 表2 1m o f 元体系的层次结构 层次实体描述 实例 m 3 元元模型m o f 是元语言定义语言的模型m o f 类,m o 瞩性,m o f :关联等 m 2 元模型由m o f 的实例组成i 咖类,l 属性,i 咖关联等 m 1 模型 用户模型,由m 2 的实例组成t e a c h e r 类,s t u d e n t 类等 m 0 实例对象和数据赵老师,张明等 c w m ( c o m m o nw a r e h o u s em e t a m o d e l 卜公共数据仓库元模型,提供了一 种数据格式变换的手段。通过使用c w m 可以在任意的模型之间实现两种数据模 型的转换,如将数据实体从关系数据库转换为) 洲l 格式等。在m o f 的框架下, c w m 让通用的数据模型变换引擎成为可能嗍。 c w m 的目的是在分布式异质异构环境下,为数据仓库平台、数据仓库工具 和数据仓库存储建立一个商务智能元数据的交互机制,最大化的重用对象模型 o b j e c tm o d e l ( u m l 的子集) ,尽可能的共享通用的模型构建。最典型的是,c w m 重用依赖对象模型来描述面向对象的数据资源:另外,其它类型的数据资源的 主要m e t a m o d e l 元素,在对象模型中都有相同的模型元素与之相对应。 c n c m 包含一系列的子元模型,通过它们可以描述建立数据仓库和商业智能 的通用的数据仓库元数据。子元模型主要包括:数据资源( d a t ar e s o u r c e s ) 、数据 分析( d a t aa n a l y s i s ) 和数据仓库管理( w a r e h o u s em a n a g e m e n t ) 。其中数据资源包括各 个元模型,描述了面向对象数据、关系数据库、记录、多维和小等数据;数 据分析包括描述d a t at r a n s f o r m a t i o n s 、o l a p ( 在线分析数据) 、数据挖掘 ( d a t a m i n i n g ) 、信息展示及商业术语等的元模型;数据仓库管理包括数据仓库管理 过程以及数据仓库操作结果的元模型 9 1 。 1 0 哈尔滨t 程大学硕十学何论文 c w m 还提供了一整套标准化的元模型,可以使得企业的数据采集跨越数据 库的范围,甚至做得更好。c w m 把重点放在了数据的建模上,而不同于u m l 把 重点放在应用程序的建模上。就像u m l p r o f f l e 疵数据的部分,制定m e i a 对应数 据库的纲要,而不是在应用程序部分。 由于c w m 本身就是完全独立于任何具体实现的元模型,而且还在不断地吸 收一些新的技术,所以,接下来不但支持c w m 的工具可以了解到它的每一个元 数据实例,还将使采用c w m 的元数据交换过程变得更加简单、有效。 2 1 2 4 舢 x m i ( x m lm e t a d a t ai n t e r c h a n g c 卜沮元数据交换,是o m g 为支持u m l 的x m l 串行化而制定的一套m 标签,旨在支持基于m o f 标准的儿文档交 换。直接支持i 小模型转换和作为o m g 技术标准是方式的优点所在。但是 通常x m i 文档非常庞大,一个较小的lh 沮模型对应的x m i 文档通常长达上百行。 而且不同工具间的x m i 文档并无统一的x m l s c h e m a 。比如:r a t i o n a lr o s e 导出的 x m i 文档通常不能在g e n t l e w a r e u m l 和后续的p o s e i d o n 中使用 8 1 。 x m i 的执行规范,主要包括x m ld t d s ( d o c u m e n t t y e d e f i n i t i o n s ) 和m ,文 档的产生规则。前者负责为准备使用) a i 进行编码的元数据文件产生相应的x m l d t d 文件,有利于通用的x m l t 具对x m i 文档进行有效性检测;后者负责为元 数据到纯m 坟档提供编码规则、重新构造生成元数据以及把m 文档进行反编 码等。 由于o m g 用m o f 作为元数据表示技术,因j h 2 x m i 规范也自然地把重点放到 m o f 元数据的交换上。事实上,x m i 是m o f 元数据和m ,文档之间的平行映射, 也是m o f 元模型和x m ld t d 之间的平行映射。虽糊i 是一个元数据传输的新 方法但x m i 是一种数据交换格式而不是c o r b a 接口,所以我们没必要使用 c o r 日i a 来干扰我们的转化过程,因为任何一个有传输a s c i i 能力的机制都可以圆 满地完成这种转化工作。 因此,广义上来讲,x m i 就是一种独立于
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年茄子黄萎病识别与防治用药技术
- 2026年案场物业服务品质检查表
- AI在研学旅行管理与服务中的应用
- 2026年新安法对从业人员权利义务规定培训心得
- 2025重庆市中考历史真题(解析版)
- 2026年幼儿园档案资料管理办法
- 2026年护理质量改进专项培训计划
- 2026年工程机械智能化安全控制
- 2026年企业数字化转型顶层设计指南
- 2026年人工智能赋能弱势群体伦理考量
- 2026中国冶金地质总局山东局校园招聘46人笔试历年参考题库附带答案详解
- 2026中共广州市海珠区委社会工作部招聘雇员1人备考题库(广东)含答案详解(完整版)
- 2026国家知识产权局专利局专利审查协作招聘1500名专利审查员信息重点基础提升(共500题)附带答案详解
- 初中物理跨学科实践活动的设计与实施课题报告教学研究课题报告
- 2026广东深圳市优才人力资源有限公司招聘编外聘用人员(派遣至深圳市龙岗区机关事务管理局)补充笔试备考试题及答案详解
- 2026年广东省高三语文二模作文题目解析及范文:“意外”的价值
- 2026年上海市虹口区八年级下学期期中语文试卷参考答案与评分标准
- 中核汇能广东能源有限公司笔试
- Unit 5 Nature's Temper 单元练习题 新教材人教版八年级英语下册
- 水库库区水质富营养化治理方法及管控措施
- 2026年及未来5年市场数据中国数据标注与审核行业发展监测及市场发展潜力预测报告
评论
0/150
提交评论