




已阅读5页,还剩81页未读, 继续免费阅读
(计算机软件与理论专业论文)基于cwm的关系型数据库建模工具的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于c w m 的关系型数据库建模工具的研究 摘要 对象管理组织o m g 是独立于各厂商的非盈利性组织,其宗旨是要统一不 同的商业产品和标准之间的数据交换及互操作性,从而改善各厂商的软件产品 之间不兼容的情况。为此,o m g 为分布式对象计算的分析、设计、部署以及 定义在具体企业中间件平台上的应用对象和应用组件等各个方面制定了开放的 标准。m d a 及相关规范是o m g 组织继c o r b a 规范之后,为解决分布、异构 系统的集成问题而提出的下一代解决方案。其中c w m 规范是模型驱动架构及 开发方法在数据仓库领域的应用,它旨在推动数据仓库、智能商务和知识管理 方面元数据的共享和交换。 本论文首先介绍了m d a 及四个核心规范:m o f 、u m l 、c w m 和x m i 。 在此基础上对目前支持m d a 的工具开发三层架构信息系统的过程进行分析, 指出了在建立以数据为中心的信息系统时由p i m ( u m l ) 模型向关系p s m 模 型映射中存在诸多不足之处,提出了对系统建模时采用数据p i m 和应用p i m 两 种p i m 描述。由于目前流行的关系型建模工具暂时还不提供对c w m 的支持, 因此本文对基于c w m 的关系型数据库建模工具r d m t 2 c w m 进行设计,使 r d m t 2 c w m 不仅可以将所建模型保存为满足c w m 的元数据,还支持将建立 的p i m ( c w m ) 映射成关系p s m ( m ss q ls e r v e r ) ,并在j b u i l d e r x 开发环境 上利用j a v ad i a g r a m 、j d o m 组件实现了原型。最后,按照本文提出的对同一 系统用两种p i m 进行建模的方法,将r d m t 2 c w m 工具应用于具体的焊接管理 系统的数据p i m 建立中,建立的系统具有良好的可扩展性,易于交换和集成的 元数据。 关键字:m d a ,c w m ,数据p i m ,r d m t 2 c w m ,x m l r e s e a r c ho nc w m b a s e dr e l a t i o n a ld a t a b a s em o d e l i n gt o o l a b s t r a c t t h e0 b j e c tm a n a g e m e n tg r o u p ( o m g ) i sa no p e nm e m b e r s h i p ,n o t - f o r p r o f i t c o n s o r t i u mt h a t p r o d u c e s a n dm a i n t a i n s c o m p u t e ri n d u s t r ys p e c i f i c a t i o n s f o r i n t e r o p e r a b l ee n t e r p r i s ea p p l i c a t i o n s t oa c h i e v e t h i sg o a l ,t h eo m g s p e c i f i e so p e n s t a n d a r d sf o re v e r y a s p e c t o fd i s t r i b u t e d c o m p u t i n gf r o ma n a l y s i s a n d d e s i g n , t h r o u g hi n f r a s t r u c t u r e ,t oa p p l i c a t i o no b j e c t sa n dc o m p o n e n t sd e f i n e do nv i r t u a l l y e v e r ye n t e r p r i s e m i d d l e , r a r e p l a t f o r m m o d e l d r i v e na r c h i t e c t u r e ( m d a ) a n d c o r r e l a t i v es p e c i f i c a t i o n s ,f o l l o w i n gc o m m o no b j c o tr e q u e s tb r o k e ra r c h i t e c t u r e ( c o r b a ) s p e c i f i c a t i o n ,a i m s a t s o l v i n gi n t e g r a t i o np r o b l e m s o fd i s t r i b u t e d h e t e r o g e n e i t ys y s t e m a m o n gt h e m ,c o m m o n w a r e h o u s em e t a m o d e l ( c w m ) i st h e s p e c i f i c a t i o no fm d aa p p r o a c hi nw a r e h o u s ea n da i m st o d r i v em e t a d a t a ss h a r e a n d i n t e r c h a n g ea b i l i t y o fw a r e h o u s e ,i n t e l l e c t i v e b u s i n e s s ,a n dk n o w l e d g e m a n a g e m e n t i nt h i sd i s s e r t a t i o n ,m d aa n di t sf o u rc o r es p e c i f i c a t i o n s :m e t a0 b j e c tf a c i l i t y ( m o f ) ,u n i f i e dm o d e l i n gl a n g u a g e ( u m l ) ,c o m m o nw a r e h o u s e m e t a m o d e l ( c w m ) a n d x m lm e t a d a t ai n t e r c h a n g e ( x m i ) a r ef i r s t l yi n t r o d u c e d b a s e do nt h i s t h ep r o c e s so ft h r e e - t i e ra r c h i t e c t u r ed e v e l o p e db yc u r r e n t l ym d a s u p p o r t i n gt o o l i s a n a l y z e d t h es h o r t a g e sa r ep o i n t e do u tw h e nt h ep i mm o d e lm a p p i n gt o t h e r e l a t i o n a lp s mm o d e li nt h ep r o c e s ss e t t i n g u p t h ed a t ac e n t e r e di n f o r m a t i o n s y s t e m t w op i md e s c r i p t i o n s :d a t ap i ma n da p p l i c a t i o np i ma r ep r e s e n t e dt o s y s t e mm o d e l i n g f o rc u r r e n t l yp o p u l a rr e l a t i o nm o d e l i n gt o o ln o ts u p p o r tc w m , s or d m t 2 c w mt o o li s d e v e l o p e dt os o l v et h i sp r o b l e m r d m t 2 c w mc a nn o t o n l y s a v et h em o d e la sc w m m e t a d a t a ,b u ta l s or e a l i z et h ef u n c t i o nt h a td a t a p i m ( c w m ) c a nb em a p p e dt o r e l a t i o n a l p s m ( m ss q ls e r v e r ) t h i ss o f t w a r e p r o t o t y p ei s r e a l i z e du s i n gj a v ad i a g r a ma n dj d o mi nj b u i l d e rx d e v e l o p m e n t e n v i r o n m e n t a tl a s t ,a c c o r d i n gt ot h em e t h o dm o d e l i n gt h es y s t e mu s i n gt w op i m p r e s e n t e di nt h i sd i s s e r t a t i o n ,r d m t 2 c w m i sa p p l i e di nd a t am o d e l i n gi nw e l d i n g m a n a g e m e n ts y s t e m ,w h i c hm a k e st h es y s t e me a s yt ob ee x p e n d e da n dm e t ad a t a e a s yt ob ei n t e r c h a n g e d ,i n t e g r a t e d k e yw o r d s :m d a ,c w m ,d a t ap i m 。r d m t 2 c w m ,x m l 合肥工业大学 本论文经答辩委员会全体委员审查,确认符合合肥工业大学硕 士学位论文质量要求。 答辩委员会签名( 工作单位、职称) 拂当惭叶阅眼索坟 委员: 导师 绍嘶伽氓螽久 互涯 ”、, 面f 7 赧旋 彩 夕伊 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我 所知除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究 成果,也不包含为获得金熙王些盔堂或其他教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所傲的任何贡献均己在论文中作了明确的说明并表示谢意。 学位论文作者签名:茸南每 签字日期:j 姒f 年4 月加臼 学位论文版权使用授权书 本学位论文作者完全了解盒目l 王些去堂有关保留、使用学位论文的规定,有权保留并向 国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权金箧王些 搜可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存、汇编学位论文 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名: 丰盛彦 签字日期:j 呱年4 月日 学位论文作者毕业后去向 工作单位: 通讯地址: 导师签名 签字日期妇佴乒月弦日 电话: 邮编: 致谢 我的硕士研究生生涯随着毕业论文的完成而走向尾声,我希望借此机会向 在此期间所有关心和帮助我的人表示深深的感谢。 首先要感谢我的导师袁兆山教授,在这两年多的研究生生活中对我的悉心 指导与无微不至的关怀。袁老师渊搏的学识、求实的治学态度、平易近人的工 作作风和对科学的执著产谨的精神值得我学习和敬仰,谨向敬爱的导师以崇高 的敬意和衷心的感谢f 感谢李心科副教授、李宏芒讲师和徐本柱讲师,他们严谨的作风和执著的 精神给我留下了深刻的印象。在整个学习和项目开发过程中,他们对我的学习 和工作提供了许多宝贵的意见和指导。 向所有参与本论文评审和答辩的老师致敬,感谢他们为本论文所付出的辛 勤劳动。 感谢曾经一起参加项目的张国宁师兄、刘姗姗师姐、王玮、金兆翼、牟涛; 感谢成琦、宋淼、刘奎、陈刚、王晓莉等同学在项目中的支持和帮助。 同时感谢实验室的李超、蔡彬辉、吴雷、谢芸和李彬彬等同学在学习上对 我的帮助。 非常感谢我的父母和亲人,在我读书期间给予我的无私照顾和帮助,支持 我顺利完成学业,非常感谢你们。 作者:朱晓春 2 0 0 5 年3 月 1 1 论文的背景 第一章绪论 对象管理组织( o b j e c tm a n a g e m e n tg r o u p ,o m g ) 是独立于各厂商的非盈 利性组织,其宗旨是要统一不同的商业产品和标准之间的数据交换及互操作 性,从而改善各厂商的软件产品之间不兼容的情况。为此,o m g 致力于改善 软件行业发展中出现的各厂商之间产品不兼容的情况。 模型驱动架构( m o d e l d r i v e h a r c h i t e c t u r e ,m d a ) 及相关规范是对象管理 组织继公共对象请求代理体系结构( c o m m o n0 b j e c tr e q u e s t b r o k e r a r c h i t e c t u r e ,c o r b a ) 规范之后,为解决分布、异构系统的集成问题而提出 的新的解决方案。m d a 是一种基于统一建模语言( u n i f i e dm o d e l i n gl a n g u a g e , u m l ) 以及其它工业标准的架构,支持软件设计和模型的可视化、存储和交换。 以独立于实现的技术开发,以标准化的方式存储机器可读和高度抽象的模型 并进行数据交换等操作【l 】。m d a 的核心思想是抽象出与实现技术无关、完整 描述业务功能的平台独立模型( p l a t f o r mi n d e p e n d e n tm o d e l ,p i m ) ,针对不同 实现技术制定多个映射规则,然后通过这些映射规则及辅助工具将p i m 转换成 与具体实现技术相关的平台相关模型( p l a t f o r ms p e c i f i cm o d e l ,p s m ) ,最后, 在一定程度上将p s m 自动转换成代码。 软件产品之间不兼容同样也困扰着数据仓库领域的软件,数据仓库中最为 重要的部分就是元数据,因此这种不兼容突出表现在元数据的不同表示上。元 数据被用在数据仓库的建设、管理、维护和使用等诸多方面。由于各种数据管 理和数据分析工兵都使用不同的元数据和元模型,无法在一个企业中通过单一 的存储库( r e p o s i t o r y ) 来为所有的元数据统一部署元模型,因此如何定义和管 理数据仓库中的元数据、如何使数据仓库中的元数据在不同的工具之间实现无 缝交换是开发数据仓库项目的关键。 o m g 在2 0 0 1 年2 月年正式发布了公共数据仓库元模型( c o m m o n w a r e h o u s em e t a m o d e l c w m ) 规范1 0 版。c w m 是模型驱动架构及开发方 法在数据仓库领域的应用,它旨在推动数据仓库、智能商务和知识管理方面元 数据的共享和交换。与o m g 合作提出c w m 规范的公司有:i b m ,u n i s y s , n c r h y p e r i o ns o l u t i o n s ,o r a c l e ,u b sa g g e n e s i sd e v e l o p m e n t ,d i m e n s i o n e d i 。经过修订,目前的版本是1 1 。 1 2 论文的研究内容 当今,以严谨数学为基础的关系数据库已经十分成熟,在众多企业信息管 理系统中起举足轻重的作用。很多面向对象的开发项目,都用它来存储数据。 这样,需要把对象转换成表( t a b l e ) ,而数据库中的表,则成了持久对缘的代 表 3 。j o h np o o l e 在参考文献2 中指出:数据建模工具应该不仅仅被看作构造 实体关系模型的工具,而应视为元数据的来源,或者更深刻地说,应被视为元 数据的创造工具( m e t ad a t aa u t h o r i n gt 0 0 1 ) 2 。 詹姆斯马丁( j a m e sm a r t i n ) 提出数据位于企业信息系统的中心位置,只 要企业的性质和目标不变,它的数据类( d a t ec l a s s ) 就是稳定的 4 】。也就是 说,在企业的总体经营目标和性质不变的前提下,即使企业的组织机构和业务 活动发生变动,管理业务所涉及的数据类是不变的或变化很小。目前,支持 m d a 的工具丈部分使用v m c “进行p r m 的建模,再将p i m 映射成一个或多个 f s m ,最后自动生成代码。数据库的实现是按照c w m 规范的变换规则将用 u m l 创建的p i m 的对象模型转换为关系模型后,再映射为p s m 5 。由于u m l 是面向对象的建模工具,因此采用u m l 为以数据为中心的信息系统建模时, 有几个缺陷:( 1 ) 由类映射到关系时会丢失原有类之间的语义f 6 。( 2 ) 当数 据库涉及到数据量较大且关系复杂时,由u m l 的各种类向关系型表转换时, 涉及到的主外键( p r i m a r y k e y ,f o r e i g n k e y ) 较多,容易出错。( 3 ) 采用u m l 进行建模不利于主题数据库的建立,从而影响数据仓库对数据库数据的集成与 共享。 论文在m d a 和c w m 规范研究豹基础上,根据马丁的数据中心论,依据 模型驱动架构、模型驱动开发方法,提出在以数据为中心的信息系统的模型建 立过程中将数据p i m ( d a t ap i m ) 与应用p i m ( a p p l i c a t i o np i m ) 分开设计, 这样当企业的业务发生变化时,只需修改应用p i m ,而无需修改数据p i m ( 或 修改较少) ,这使得开发系统具有较高的可扩展性。针对用u m l 建立以数据为 中心的信息系统p i m 的不足之处,开发一种基于c w m 规范i i 版的关系型数 据库建模工具r d m t 2 c w m ( r e l a t i o n a l d a t a b a s e m o d e l i n gt o o l 。r d m t ) 。因此, 论文围绕以下几个方面进行研究,主要内容如下: m d a 及其四个核心规范的研究 m d a 的四个核心规范分别是元对象设施 1 0 】( m e t a o b j e c t f a c i l i t y ,m o f ) , 统一建模语言【l l 】( u n i f i e dm o d e l i n gl a n g u a g e ,u m l ) ,公共仓库元模型【1 2 】 ( 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 ) 和x m l 元数据交换【1 3 】( x m l m e t a d a t ai n t e r c h a n g e ,x m i ) 。其中m o f ,u m l 和c w m 用于建立模型x m i 用于数据的集成和互操作。理解m d a 及模型驱动开发方法首先必须对它的 四个核心规范有所了解。为了解c w m 规范的关系型元模型,必须深入研究它 们在c w m 中是如何定义、x m i 是如何表示的。 基于m d a 信息系统模型的研究 对基于m d a 三层架构信息系统建模过程的研究,目前支持m d a 的工具 是用u m l 进行p i m 映射,然后根据架构设计将p i m 映射成多个p s m ,其中数 据模型部分一般采用将p i m 映射成关系p s m 。作者重点研究了由用u m l 建立 的以数据为中心的信息系统p i m 模型向关系型p s m 模型映射时对象向关系转 换过程中的不足及存在的问题。从元数据共享和集成角度考虑,在对以数据为 中心的信息系统按照m d a 架构建模时,采用数据p i m 和应用p i m 对同一系统 的不同方面进行建模。数据p i m 的元数据将用c w m 元模型进行描述。应用 p i m 仍然采用u m l 进行描述。 基于c w m 的关系型数据库建模工具的研究 目前流行的数据建模工具p o w e r d e s i g n e r 、e r w i n 等建模时都采用自身的元 数据模型定义格式,而没有直接提供对e w m 的支持( 有些建模工具提供到 c w m 的转换) 。因此本文对c w m 关系型元模型和扩展c w m ( c o m m o n w a r e h o u s em e t a m o d e le x t e n s i o n s 。c w m x ) 实体关系包研究的基础上,设计了 c w m 的关系型数据库建模工具r d m t 2 c w m 。r d m t 2 c w m - 1 - 具一方面可以 建立关系型模型,保存满足c w m 规范的x m l 文件,实现数据p i m ( c w m ) 的设计过程;另一方面,r d m t 2 c w m 工具可以把所创建的数据p i m 中的模型 映射成m ss q ls e r v e r 数据库中的表,实现数据p i m 向关系p s m 的映射过程。 同时探讨了满足c w m 规范的元数据如何用x m l 文件格式表示和如何将满足 c w m 的元数据映射成关系数据库管理系统m ss q ls e r v e r 数据库表s q ld d l 语句集等闯题。最后在j b u i l d e r 艾开发环境中实现了r d m t 2 c w m 工具原型的 设计。 1 3 论文的意义 论文对模型驱动架构、开发方法和公共数据仓库元模型等相关理论和规范 进行研究,并在论文中阐述了基于c w m 的关系型数据库建模工具 r d m t 2 c w m 的研究和设计,在力求减少由u m l 创建的p i m 到p s m 转换过程 中对象模型到关系模型的转换步骤同时,充分发挥c w m 规范的作用,提高元 数据在数据仓库、智能商务和知识管理方面的共享和交换。此工具的优点是: ( 1 ) 可由p i m 直接映射成关系p s m ,省略了将对象模型转换为关系模型的步 骤。 ( 2 ) 种图形化的设计工具而不是转换工具。数据库的设计人员可以方便地 设计、创建和维护关系型数据库,生成满足c w m x m i 标准格式的元数 据,易于数据仓库的导入、集成和交换。 ( 3 ) 满足c w m 标准,简化数据仓库集成步骤。由于利用此工具开发数据库 模式直接采用c w m 元数据表示,一方面不需要开发针对特定建模工具 的m i m b 7 】( m e t ai n t e g r a t i o nm o d e lb r i d g e ) 转换工具,另一方面也避 免了通过m i m b 将特有数据库模式的元数据格式转换为c w m 格式的步 骤从而简化了数据仓库集成的过程,提高了集成的效率。 ( 4 ) 便于维护。当数据库模式发生改变时,不需要首先重新生成特定建模工 具的元数据格式,然后再通过m i m b 转换工具转换为c w m 格式的元数 据,可直接由该工具修改数据库模式,生成满足c w m 格式的元数据文 件。 ( 5 ) 易扩展性。由于该工具生成的元数据文件为满足o m g 的c w md t d 的 x m l 格式的文件,可以充分利用x m l 良好的扩展性。 1 4 论文的课题来源 本论文受到安徽省自然科学基金( 编号0 1 0 4 2 2 0 7 ) 和国家软件新技术重点 实验室基金( 编号a 2 0 0 1 0 4 ) 资助。 1 5 论文的组织结构 本论文比较系统地分析了依据m d a 以数据为中心的信息系统建模过程中 由u m l 建立的p i m 向关系p s m 映射时对象向关系转换过程中存在问题,提出 用基于c w m 的建模工具对信息系统的数据部分进行建模,用满足c w m 规范 的x m l 文件保存模型的元数据,便于信息系统集成和数据共享,并用j b u i l d e r x 实现了建模工具r d m t 2 c w m 的原型。各章的内容安排如下: 第章绪论:简单介绍了本论文的背景、论文的研究内容和论文的组织结 构。 第二章m d a :介绍m d a 的基本概念、开发方法和体系架构点,并简单介 绍m d a 的四个核心规范以及四个规范在m d a 中的关系和作用。 第三章c w m :介绍c w m 规范的作用、设计原则和组成结构,并详细分 析了c w m 关系型元模型和c w m x 实体关系包,为后文设计基于c w m 的 x m l 文件格式提供依据。 第四章基于c w m 的关系型数据库建模工具的设计:首先分析了依据m d a 以数据为中心的三层架构信息系统建模过程中由u m l 建立的p i m 向关系 p s m 映射时对象向关系转换过程中存在问题;然后比较了信息系统的两种 建模模型的优缺点;指出关系建模比面向对象数据模型更适合以数据为中 心信息系统的建模;提出两种p i m 的模型驱动的信息系统建模方法,即采 用关系型数据库建模工具建立数据p i m ,采用基于u m l 的建模工具建立应 用p i m 。为了使建立的数掘p i m 符合c w m 规范要求,本文设计了基于c w m 的关系型数据库建模工具r d m t 2 c w m ,并根据r d m t 2 c w m 的功能构建 其架构,并分析了r d m t 2 c w m 实现过程中的难点。 第五章基于c w m 的关系型数据库建模工具的实现:根据第四章对 r d m t 2 c w m 的分析和架构,在j b u i l d e rx 开发环境下利用j a v ad i a g r a m 组件和j d o m 组件实现r d m t 2 c w m 的原型。并分析了利用r d m t 2 c w m 4 进行三层架构的以数据为中心的信息系统建模的优点。 第六章r d m t 2 c w m 工具应用实例研究:首先分析了采用两种p i m 的模型 驱动信息系统建模过程。以焊接系统的焊工培训p i m 模型的建立为例,介 绍了如何用r d m t 2 c w m 建立数据p i m 、获取满足c w m 规范的元数据以 及映射关系p s m 。验证了r d m t 2 c w m 的实用性。 第七章结束语:对全文进行总结,论述了论文中所做的工作,以及今后需 要进一步研究和完善的问题。 2 1m d a 简介概述 第二章模型驱动架构 由于商业利益及其它些原因,软件行业的发展中经常出现各厂商之间产 品不兼容的情况。这种情况的存在对于软件的集成和发展都造成了障碍,直接 导致了软件成本的提高和开发的复杂度上升。国际标准化组织o m g ( o b j e c t m a n a g e m e n tg r o u p ) 是独立于各厂商的非盈利性组织,其宗旨是要统一不同的 商业产品和标准之间的数据交换及互操作性,从而改善各厂商的软件产品之间 不兼容的情况。c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ,公共对 象请求代理结构) 是o m g 以往的一个重要工作成果,c o r b a 致力于提供一 个跨平台和跨语言的对象互操作框架,在中间件层次上统一不兼容的平台和不 同语言开发的对象。但从目前来看,o m g 的这个努力已经被证明没有达到预 期的效果。在中间件层次涌现出来的j 2 e e 和n e t 造成了新层次上的不兼容。 为此,2 0 0 0 年1 1 月o m g 提出模型驱动架构,力图在比c o b r a 更高的抽象层 次上进行统一。 模型驱动架构是一种i t 系统规范的方法,它把系统功能规范和其在特定技 术平台上的实现分离开。m d a 把需求抽象成与平台及应用技术无关的模型, 把应用细节和系统功能相分离,一旦功能和所采用的具体实现平台确定后,再 根据标准的映射机制,把与平台无关的模型映射到平台相关的模型。通过标准 的映射技术,由功能模型定义的应用系统就可以构建在不同的技术平台上,同 时也支持了不同的应用系统通过模型层的联系实现系统的集成,保证了完整性 和互操作性。 m d a 把建模语言当作编程语言来用,它不是类似于对象管理体系结构 ( o m a :0 b j e c t m a n a g e m e n t a r c h i t e c t u r e ) 和c o r b a 的分布式体系结构,而是 一种使用模型进行软件开发的方法。o m g 的m d a 规范描述了m d a 如何定义 o m g 的各项规范之间的关系,使它们可以相互协同工作【8 】。m d a 是一种新技 术但m d a 不是要大规模取代原来的技术。而是以一种新的方式整合一系列 现有技术,扩展这些技术并更好地推动它们的发展。 m d a 开发的优点: 提高生产效率。可以在任何中间件平台上构建基于m d a 的应用开发,应用 系统的基本功能可以用平台无关的模型表示。使软件开发人员的关注点转 移到平台无关模型上的开发上,由于不再需要关注目标平台的细节,所以 可以摆脱很多技术细节的困扰,从而提高了软件开发的效率【1 1 。 互操作性。只要企业把应用系统的功能封装或集成到m d a 架构中,则不论 m d a 架构中的系统是构建在哪一种中间件平台之上的它们之间可进行互 6 操作,m d a 工具将自动进行平台之间的映射。 可移植性。一旦新的中间件标准出现,o m g 组织将通过定义新的映射标准 把其包括到m d a 架构中,使m d a 工具的扩展性得到加强,提高了系统的 可移植性。 2 2 基本概念 2 2 1 模型 m d a 中,模型( m o d e l ) 是以精确定义的语言对系统的一部分结构、功能 或行为的形式的规约。首先,模型是一种系统规约,这种规约既可以是对结构 的规约,也可以是对系统功能或系统行为的规约;其次,这种规约必须是形式 的,即必须使用一种严格定义没有歧义的语言。这种语言要求有一种明确定义 的形式( 语法) 、意义( 语义) 以及可能的分析、推论规则,或其构造的证明。语法 可以是图形或文本形式的。所以一个模型必须和一种严格定义了语法和语义的 建模语言绑定在一起。根据模型的这种定义,程序代码也是模型。 2 2 2 平台 一个平台 ( p l a t f o r m ) 是多种技术的集合,提供了各种功能接口,它是通用的、 跟具体技术相关的( 例如j a v a ) ,特定于软件提供商相关的( 例如微软的n e t 平 台) 。在m d a q b ,c i m 代表软件生命周期中的需求模型,p i m 代表分析模型, p s m 代表设计模型,c o d e 代表实现模型。某个特定的平台代表运行环境,系 统是一系列应用程序的集合,代表了解决方案。 2 2 3 抽象和求精 抽象是对事物的一种描述,忽略其中与抽象目的不一致的某些细节,它是 泛化的逆过程。例如,对于一台笔记本电脑,可以有三个规约:台电脑”、 台笔记本电脑”、“某某牌某某型号的笔记本电脑”。从这个例子中可以看出, 在一个客观系统中可以挖掘出无穷多的细节一个系统的任何规约都是从一个 特定的角度描述这个系统的某个层面,都是对这个客观系统的某种程度上的抽 象。上述例子中的三个规约是一个不断逼近客观现实的关系,这种关系就是抽 象和求精。简单地说,抽象就是略去无关的细节,求精就是现实化。 2 2 4 计算无关模型 计算无关模型( c o m p u t a t i o n a li n d e p e n d e n tm o d e l ,c i m ) 是指不带任何系 统结构细节的模型。计算无关模型通常又称为领域模型,或者需求模型。 2 2 5 平台无关模型 平台无关模型( p l a t f o r mi n d e p e n d e n tm o d e l ,p i m ) 为系统的结构和功能提 供形式化的规范,从而使系统的功能模型独立于任何平台的具体实现技术细 节。 2 2 6 平台相关模型 平台相关模型( p l a t f o r ms p e c i f i cm o d e l ,p s m ) 包括了特定技术细节,这 种模型描述了建立在特定平台技术基础之上的系统结构和功能特征。 2 2 7 视图 视图( v i e w ) 是模型某一方面的表示。一个模型可以由多个视图组成,每 一个视图都描述了模型的某一个方面,每一个视图都必须和一个模型对应,视 图和模型之间是单映射关系。 2 2 8 映射 映射( m a p p i n g ) 是一系列规则和机制,用于种模型向另一种模型的变 迁。图2 - 1 中描述了一个m d a 的元模型。在m d a 中,平台无关的模型、平 台相关的模型和映射技术都基于用o m g 核心技术( 如m o f 、c w m 或u m l ) 描述的元模型。 闰2 - i m d a 元模型【8 】 在m d a 中,主要包括四种类型的映射: 1 p i m 到p i m 的映射 8 在系统开发生命周期中,当需要增强、过滤或具体化模型时使用这种映射, 这种映射不需要任何平台相关的信息,如分析模型到设计模型的映射。p i m 到 p i m 的映射通常与模型精化有关。 2 p i m 到p s m 的映射 当已经充分细化的p i m 需要映射到具体的运行平台上时使用这种映射方 式。当进行此类映射时,通常需要附加许多平台相关的概念。如:从一个逻辑 组件模型到一个现存的商业组件模型( 如j 2 e e 平台的e j b 、c o r b a 平台的 c m c ) 的映射是一种从p i m 到p s m 的映射。 3 p s m 到p s m 的映射 当生产和发布组件时需要这种映射。例如,组件打包时需要选择服务、准 备其相应的配置;打包完成,需要交付组件时。又要具体化初始数据、目标机 器、容器生成和配置等。p s m 到p s m 的映射通常与平台相关的模型精化有关。 4 p s m 到p i m 的映射 当把现存的、基于特定技术实现细节的抽象模型映射为平台无关的模型时 使用这种转换。这类映射很像是“挖掘”过程,很难完全自动实现。尽管如此, 也会有相应的工具支持。理想情况下,这类映射的结果应该与相应的p i m 到p s m 的映射一致。 2 3m d a 的体系架构和系统开发 2 3 1m d a 的体系架构 在m d a 中。模型不再仅仅是描述系统、辅助沟通的工具,而是软件开发 的核心和主干。m d a 对系统的关键模型做了区分,并把这些模型置于一个统 一结构中。图2 - 2 描绘了m d a 的模型体系结构。这些模型分为三个层次:计 算无关模型( c i m ) 、平台无关模型( p i m ) 和平台相关模型( p s m ) 。计算无 关模型从最抽象的视点描述系统。p i m 提供了稍微具体一点的系统逻辑视点, 它是需求的细化。p s m 提供了更具体的系统视点,它描述了与特定平台相关的 特征。p s m 是p i m 的细化。按m d a 的模型定义,代码也是一种模型,因此比 p s m 更细化的模型是具体的代码模型。m d a 的指导思想就是一切都是模型, 一切由模型驱动。这样,软件的开发过程就是自顶向下。逐步求精的建模过程。 模型之间通过模型机制相互映射【2 2 】。 每个模型都出丌发过程中特定的人员来完成。需求分析员为业务组件和应 用程序创建c i m ,他们具有某领域技术背景。应用工程师丌发业务组件和应用 程序,他们创建并维护p i m 。他们同需求分析员一起工作以确保p i m 和需求模 型保持同步。生成器从这些p i m 生成p s m 和代码。还有一个重要角色是架构 师。他们建设企业的建模架构,即用建模语言和映射来实现。他们定义并维护 9 驱动企业架构的模型,规定不同建模架构和其它基础设旋元素如何配合。他们 审查分析员和工程师的工作以确保他们遵从架构,还从他们那里收集反馈信息 以改善架构。 2 3 2m d a 架构下的系统开发 图2 - 2 m d a 模型体系结构 通常i t 系统的开发、管理、集成技术的发展是随着一系列的方法学、开 发工具和中间件平台的发展雨向前演化的。目前,这种发展的趋势仍然在进行 中。 在实际应用开发的生命周期中,每个阶段都不可避免地涉及到多个由不同 厂商提供的软件产品,因此解决不同工具和中间件产品之间的信息互操作问题 成为关键。m d a 架构及其相关标准为各种应用提供了一个完备的、可扩展的 语义模型和一种适用于交换的数据表示方式,使得基于m d a 的开发方法能够 覆盖整个系统的开发生命周期。在m d a 中,c i m 一般包含系统的数据信息等, 它代表软件生命周期中的需求模型;p i m 由系统数据、处理进程等平台无关的 信息组成,它代表软件生命周期中的分析模型;p s m 由系统的数据、处理进 程等平台相关的信息组成,p s m 代表软件生命周期中的设计模型 9 。 m d a 是一个开放的,中立于软件供应商的架构,它广泛地支持不同的应用 领域和技术平台,能够成为应用领域和具体技术平台之间的杠杆。目前,在m d a 中,由于o m g 对c i m 的定义没有统一的规范和描述语言,并且p s m 至t j 代码一般 由具体的工具自动实现,所以m d a 中一般注重p i m 和p s m 两种模型。图2 。3 描述 了挞于m d a 系统丌发过程。在m d a 开发方法中,p i m 代表对需求的建模( 不考 0 虑c i m ) ,p s m 代表应用具体技术后的模型,这使得m d a 成为需求和技术之问 的杠杆;它们各自的改变都可以是相互独立的,不会造成商业逻辑和实现技术 的紧密耦合,同时m d a 又可以通过映射技术来弥补它们之间的鸿沟。m d a 开发 途径使得我们的系统能够灵活地被实现、集成、维护和测试,系统的轻便性、 互操作性和可重用性都可以长期保持,能够应对未来的变化。m d a 开发方法对 分布系统、异构系统的建模主要是利用u m l 、m o f 和c w m 的标难规范建立p i m , 并对该模型进行细化,以达到期望的细度,然后再根据具体的平台映射成p s m , 并对这个模型进行细化,直至达到应用的需要。在下一节中,本文将介绍这几 个规范。 2 4m d a 的四个核心规范 图2 - 3 基于m d a 系统开发过程 m d a 的四个核心规范分别是元对象设施 1 0 ( m e t ao b j e c tf a c i l i t y ,m o f ) 筑_ 建模语言【“】( u n i f i e dm o d e l i n gl a n g u a g e ,u m l ) ,公共仓库元模型【1 2 】 ( c o m m o nw a r e h o u s e m e t a m o d e l ,c w m ) 和x m l 元数据交换 1 3 】( x m l m e t a d a t ai n t e r c h a n g e ,x m i ) 。其中m o f ,u m l 和c w m 用于建立模型,x m i 用于数据的集成和互操作。 2 , 4 1 元对象设施( m o f ) 元数据是指用来描述数据的数据,它也可以被其它的数据描述,即元模型。 同理,描述元模型的数据称为元元模型( m e t am e t a m o d e l ) ,也叫m o f 模型。 理论上,还可以进一步抽象,但由于m o f 模型是自描述的,所以,元数据的最 高层就是m o f 模型。 m o f 定义了一个通用的元模型,为m d a 提供标准建模、交换构造块o m g 所有建模规范( 包括m o f 本身) 根据元模型来定义。这使得起源相同的各种舰 范能够很好地配合、协同工作。元模型实际上是一种描述各种元数据的抽象语 言。m o f 为元数据的交换和互操作提供了公共基础。 2 4 1 1 元层次 m o f 是逐层抽象的模型,如表2 1 中所示,用模型定义数据,用元模型定义 模型,最后用一个通用的抽象元元模型定义各种元模型。相邻两层中,上层是 下层的抽象,定义了下层可以使用的概念,下层的概念定义中使用上层定义的 概念。上层是下层概念的结构描述,下层是上层概念的实例化 1 4 】。 表2 - 1 四层元模型体系结构 m 3元元模型m o f 模型 m 2元元数据、元模型u m l 元模型,c w m 模型 m 1元数据、模型使用u m l 建立的一个模型 m 0对象、数据具体数据 在四层元模型体系结构中: 用户对象m 0 层:包括用户要描述的信息,这些信息统称为数据。 模型层m 1 :由描述信息的元数据组成,该层的元数据一般都组合成模 型的形式。 元模型层m 2 :由定义m 1 层元数据格式和语义的描述信息组成,即元元 数据,一般也组合成模型的形式。 元元模型层m 3 :定义元模型的结构和语义。 f m 0 ) 圈2 - 4 元层次举例 图2 4 给出了四层元层次所对应的实例。上面两层的抽象是为了支持各种不 同的模型和元模型。图2 - 4 中四层的内容解释如下: 数据层是学生已录( r e c o r d ) 的实例,即具体的某个学生: 模型层描述学生这个记录类型的内容。它有一个名字( “s t u d e n t ”) 和两个 2 字段( f i e l d ) ,每个字段都有一个名字和类型,比如第一个字段的名字是 “n a m e ”,字段类型是s t r i n g ; 元模型层对r e c o r d 这种类型进行定义,在这一层,r e c o r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025标准法律服务合同范本(合同审查)
- 2025年版事业单位试用期间劳动合同指南
- 2025湖南益阳市市直事业单位引进紧缺(急需)专业人才62人考前自测高频考点模拟试题及答案详解(网校专用)
- 2025江苏南京江北新区产业投资集团有限公司下属子公司招聘拟聘考前自测高频考点模拟试题及答案详解(网校专用)
- 2025融资租赁代理服务合同
- 2025内蒙古峰市教育科学研究中心竞争性比选教研员5人考前自测高频考点模拟试题及答案详解(易错题)
- 电梯安全管理员证考试题库及答案
- 外贸海员考试题库及答案
- 药学转本考试题库及答案
- 规划报建考试题库及答案
- 2022年中国居民膳食指南
- 《微机原理》微型计算机原理全套教学课件
- DB34T 4718-2024 农村房地一体不动产确权登记成果质量检查验收规范
- 2024-2025学年山东省青岛五十八中高一(上)第一次月考数学试卷(含答案)
- PANTONE国际色卡CMYK色值对照表3
- 教科版科学六年级上册全册各单元教学课件
- DL∕T 5371-2017 水电水利工程土建施工安全技术规程
- GB/T 44143-2024科技人才评价规范
- 锚杆格梁施工合同书
- 汽车用品采购合同
- TD/T 1057-2020 国土调查数据库标准(正式版)
评论
0/150
提交评论