1、厦门大学本科毕业论文 I 本科毕业论文 (科研训练、毕业设计 ) 题 目:基于 RSA的 MDA实现与研究分析 姓 名: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 学 号: 指导教师(校内): 职称:副教授 年 月 日 厦门大学本科毕业论文 II 基于 RSA的 MDA实现与研究分析 摘要 2002 年, OMG(国际对象管理组织)提出了 MDA(模型驱动架构)。 MDA 的目标是把业务和应用逻辑与底层的平台技术分离。基于 MDA 及相关标准的平台独立应用能够在一些开放或者专有平台上 实现。充分细化的 PIM(平台无关模型)能够智能化地转换为实现,而不必关注与具体实现技术相关
2、的编码,也更好地实现系统的互操作性和适应业务的演化。为了实现 MDA 的构想, OMG 制定了一系列的标准,国外很多开发工具也应运而生,具有部分 MDA 特性。 MDA 技术总体上尚处于初级发展阶段,但是已经表现出极大改变软件开发状况的潜力。目前国内研究对 MDA 模型变换、 MDA 框架下的标准及各种标准之间的相互关系关注甚少。 MDA 模型的变换和 MDA 框架下主要标准是开发具有 MDA 特性工具和这些工具下进行应用开发的基础。 本文在对 MDA 的分 析和研究上,以 MDA 的基本概念作为切入点,通过用 RSA 实现的一个基于 MDA 的模型转换框架( Hibernate 框架)插件(
3、从 PIM 到 PSM的转换)。并对 MDA的优点、不足及未来作了深入的探讨和思考。 关键词 模型驱动架构、模型转换、 RSA、 Hibernate 厦门大学本科毕业论文 III The analysis and research of the development of MDA in RSA Abstract In 2002, MDA (Model Driven Architecture) was brought forward by OMG (Object Management Group). MDA aims to separate business or application lo
4、gic from underlying platform technology. Platform-independent applications built using MDA and associated can be realized on a range of open and proprietary platform. Fully-specified Platform-independent Model (PIM) can enable intellectual property to move away from technology-specific code, helping
5、 to insulate business application from technology evolution, and further enable interoperability. In addition, business application, freed from Technology specific, will be more able to evolve at the different pace of business evolution. In order to realize visualization of MDA, OMG established a se
6、ries of standards. Many accessorial tools have parts of MDA characteristic have published overseas. MDA is a kind of technology that still in seedtime, but it represents deep potation. Domestic research draws little attention to standards under MDA framework and MDA model transformation. Developing
7、accessorial tools have MDA characteristic and developing system using the tools must base on standards under MDA framework and MDA model transformation. About the analysis and research of MDA, this paper base on analyzing the basic concepts deeply, using a case which is implemented by IBM RSA to dev
8、elop a plug-in unit which is a hibernate architecture which base on MDA model transformation architecture (the transformation is from PIM to PSM). Discusses the advantage and shortage of MDA and prospects the development of MDA in the future. KeywordMDA、 Model transformation、 RSA 、 Hibernate 厦门大学本科毕
9、业论文 IV 目录 第一章 绪论 . 8 1.1. 课题研究背景 . 8 1.1.1. MDA背景 . 8 1.1.2. RSA简介 . 9 1.2. MDA 发展状况以及 RSA 的优点 . 9 1.2.1. MDA发展状况 . 9 1.2.2. RSA的优点 . 10 1.3. 本文的组织结构 . 10 第二章 MDA与 RSA模型转换的基础 . 12 2.1. MDA 的相关概念 . 12 2.1.1. MDA的定义 . 12 2.1.2. MDA的基本术语 . 12 2.1.3. MDA的体系结构 . 15 2.1.4. MDA的核心标准 . 16 2.1.5. MDA的原则 . 18
10、 2.2. RSA 模型转换的相关概念 . 19 2.3. MDA 的工具支持 . 19 第三章 MDA和传统的软件开发过程 . 21 3.1. 传统的软件开发过程 . 21 3.2. 基于 MDA 的软件开发过程 . 22 3.3. MDA 和传统软件开发过程的比较 . 22 3.4. MDA 的特点 . 23 第四章 在 RSA中实现 MDA的 PIM到 PSM的模型转换 . 25 4.1. HIBERNATE框架相关介绍 . 25 4.2. 在 RSA 中实现 MDA 的 HIBERNATE框架 . 25 厦门大学本科毕业论文 V 4.2.1. 插件的制作 . 25 4.2.2. 插件的
11、运行测试 . 33 第五章 总结与展望 . 41 致谢 . 43 参考文献 . 44 附录 . 45 厦门大学本科毕业论文 VI CONTENTS CHAPTER 1. INTRODUCTION . 8 1.1. RESEARCH BACKGROUND . 8 1.1.1. The background of MDA . 8 1.1.2. The introduction of RSA . 9 1.2. THE STATUS OF MDA AND THE ADVANTAGE OF RSA . 9 1.2.1. The status of MDA. 9 1.2.2. The advantage
12、of RSA .10 1.3. ORGANIZATIONAL STRUCTURE .10 CHAPTER 2. THE BASIC OF MDA AND MODEL TANSFORMATION.12 2.1. THE CONCEPT OF MDA .12 2.1.1. The definition of MDA .12 2.1.2. The basic term of MDA.12 2.1.3. The Architecture of MDA .15 2.1.4. The core standards of MDA.16 2.1.5. The principle of MDA .18 2.2.
13、 THE CONCEPT OF MODEL TRANSFORMATION .19 2.3. THE TOOLS OF MDA .19 CHARPTER 3.THE PROCESS OF TRANDITIONAL SOFTWARE AND MDA .21 3.1. THE PROCESS OF DEVELOPMENT OF TRANDITIONAL SOFTWARE .21 3.2. THE PROCESS OF DEVELOPMENT BASED ON MDA .22 3.3. COMPARE WITH MDA AND TRADITIONAL SOFTWARE DEVELOPMENT .22
14、3.4. THE CHARACTERISTIC OF MDA .23 CHAPTER 4. A APPLICATION BASED ON MDA BY RSA .25 4.1. THE INTRODUTION OF HIBERNATE ARCHITECTURE .25 4.2. DEVELOPMENT THE HIBERNATE ARCHITECTURE OF MDA BY RSA .26 厦门大学本科毕业论文 VII 4.2.1. The manufacture of Plug-in unit .26 4.2.2. The testing of Plug-in unit .31 CHAPTE
15、R 5. CONCLUTION AND PROSPECT .41 ACKNOWLEDGEMENT .43 REFERENCE .44 APPENDIX .45 厦门大学本科毕业论文 第 8 页 共 51 页 第一 章 绪论 1.1. 课题研究背景 1.1.1.MDA 背景 目前,计算机软件业内各种基础平台和工具技术的更迭愈演愈烈,为了提高软件开发效率,提出了面向对象( OO) 、基于组件开发( CBD)、模式、分布式计算基础构架、中间件等方法。而随着项目的进展,设计阶段产生的 UML模型和代码之间的同步变得越来越困难 代码为了应付新增加的需求和新产生的想法而不断变化,模型却一直停留在原地不动,
16、这使得模型在一段时间之后就失去了它的价值。 中间件技术的出现大大减轻了异构系统的集成负担,但是众多的中间件产品不断发展,难以形成统一的中间件标准, 从而使得新旧系统之间的集成或演化面临不同的实现技术。如何保证现有投资并驱动整个系统的技术升级成为不可避免但又难以解决的挑战。为此, OMG提出模型驱动体系( Model Driven Architecture, MDA),分离业务功能的分析设计与实现技术之间紧耦合的关系,从而是技术变化对系统的影响达到最小。从宏观看, MDA使得应有模型与领域模型在整个软件生命周期中得到了复用。 MDA支持整个系统生命周期中的集成,从业务建模到系统设计、组件的构造、
17、组装、集成、部署、管理和改进。 MDA以 UML为基础解决了系统建模问题 后使得软件开发过程变得更加自然、简单。 MDA的提出标志着通用软件建模开始走向成熟阶段。 MDA而言,模型不再是一种辅助工具,而是开发过程的产品;把建模语言当成编程语言来用,而不只是当作设计语言来用。 MDA最大的优势就是业务模型的持久价值,但是付出的代价是增加了抽象层。它适合建模完整的系统,例如三层架构、两层架构的系统、 Web Services、而对基于 J2EE和 .NET 的应用也都是适合的。 构造基于 MDA的应用需要良好工具的支持, IBM、 Oracle、 IONA等等都宣称将在自己的企业级软件解决方案中融
18、入 MDA的思想,两大建模工具厂商 Rational和 Together也声明自己的产品开始加入对 MDA的支持,因此开发 MDA工具本身将是下一阶段的重点。 其中 MDA的核心是模型转换( Model Transformation)。在 MDA中,人们关注分析胜过关注编码,关注模型胜过关注实现,关注业务胜过关注平台,关注模型转换胜过关注平台迁厦门大学本科毕业论文 第 9 页 共 51 页 移。模型允许开发者关注于应用的主要方面而将细节延后考虑,转换则扩展了模型的能力,使开发者可以替换模型的优化和细分。 1.1.2.RSA 简介 RSA( Rational Software Architect
19、)是 IBM的新一代软件开发平台,代号为 Atlantic。 RSA基于开放 /可扩展的 Eclipse 3.0构建 ,全面支持 UML 2.0标准和模型驱动的开发方法。 RSA为开发当今日益复杂的应用系统提供了一个强大的开发环境 ,整合了 UML建模、 J2EE、 XML、 web services、 C+开发工具以及 RUP过程指南等诸多功能 ,是软件架构师 /开发人员的首选工具。 为了支持模型驱动开发过程中各种模型之间的转换, RSA 提供了一个功能强大、易于扩展的模型转换框架( Model Transformation Framework),该框架是一个基于规则的执行引擎,基于该框架,
20、可以很方便地定义模型转换规则,实现各种模型之间的转换。 RSA模型转换框架实现了模型转换的注册和配置管理,提供了统一的运行界面,以及各种开发向导。 其整体框架图如图 1-1 所示。 图 1-1 RSA整体框架结构 RSA 预装有一些常用的模型转换,包括 UML2JAVA、 UML2CPP、 UML2EJB,这三个转换分别以 UML 模型为输入,生成对应的 Java 程序、 CPP 程序和 EJB。 1.2. MDA 发展状况以及 RSA 的优点 1.2.1.MDA 发展状况 厦门大学本科毕业论文 第 10 页 共 51 页 MDA 具有先进的思想,代表着软件 开发技术的趋势,但是没有严格明确的
21、规范。由于MDA 的概念提出了一种全新的软件开发方式(区别于以编码为中心的开发方式),为我们展现了美好的前景,所以有很多软件开发工具商对自己的工具作了改进增加了支持 MDA 的功能,并且宣称完全支持 MDA。也出现了不少专门的开源 MDA 软件工具。但是需要指出的,作为一个概念性的软件开发架构, OMG 并没有给出类似 J2EE 技术那样的参考实现( reference implementation)和兼容性测试工具( Compatibility Test Suite),所以各种开发工具都以自己对 模型驱动概念的理解对 MDA 进行支持。最大程度的使映射过程自动化应该是 MDA IDE 追求的
22、目标,让用户感觉就像在普通 IDE 中编译程序一样简单。但是完全实现自动化只是一个神话,在大多数情况下还是需要手工的编码的。 目前 MDA 开发有两种方式。一种是使用完全符合 MDA 的开发工具,这种工具支持MDA 的整个开发过程。另一种是把建模和代码生成分开,先使用一种 UML 建模工具设计模型,并完成各种模型的转换。然后这一阶段的成果就是 XML 文件。代码生成阶段就充分利用 XML 中包含的面向对象的信息生成类文件。 1.2.2.RSA 的优点 借助于 Rational Software Architect,我们可以将软件设计和开发的各个方面统一起来: (1). 开发应用程序时比以前更加卓有成效 (2). 利用建模语言技术中的最新成果 (3). 检查和控制 Java 应用程序的结构 (4). 利用开放的可扩展的建模平台 (5). 简化设计和开发工具解决方案 (6). 与生命周期中的其他方面进行整合 1.3. 本文的组织结构 本文共分为五章: 第一章主要介绍了 MDA 的研究背景以及发展状况以及 RSA 的基本介绍。 第二章阐述了 MDA 和 RSA 模型转化的知识和相关概念以及开发工具。 第三章 MDA 与传统的软件开发过程进行比较 。 第四章在 RSA 下利用 MDA 技术实现 Hibernate 插件的制作实现从 PIM 到 PSM 的转
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。