基于模型驱动的面向对象应用程序框架的关键技术研究

基于模型驱动的面向对象应用程序框架的关键技术研究

论文摘要

学术界从上个世纪90年代起就对面向对象的应用程序框架(以下简称为应用程序框架)就开始进行深入的理论研究,并在应用程序框架的特点、模型、工具及其与其它技术的关系等方面取得了大量的研究成果。目前,应用程序框架技术已经在软件开发的实践中得到了广泛的应用。由于该技术能够显著地改善软件的开发效率,越来越成为软件开发过程中不可缺少的工具。然而在实践中,应用程序框架的设计、开发和实例化依然是件颇有挑战性的任务,这在很大程度上阻碍了应用程序框架的进一步普及。导致该状况的原因首先是缺少成熟的应用程序框架的形式化或者半形式化的模型。尽管有不少这方面的研究,但是它们依然没有成为开发人员设计应用程序框架的主要依据。其次,缺乏方法的指导是应用程序框架面临的另一个问题,在模型提供了对应用程序框架的认识的基础上,还需要有相应的方法或者步骤用来指导应用程序框架的设计、开发和实例化的过程。本文重点对上述问题展开针对性的研究,将模型驱动架构(MDA,ModelDriven Architecture)中比较成熟的方法、标准和工具引入到对应用程序框架的研究中,为应用程序框架建立了基于MDA的元模型,并在此基础上,建立了基于Z语言的形式化的元模型,提出了以框架特征视图为中心的应用程序框架的开发方法。所开展的工作和成果主要体现在以下四个方面:提出了基于MDA的应用程序框架元模型。运用模型驱动架构的相关标准,定义了应用程序框架及其实例化元模型,并定义了框架约束语言,使得模型能够更为精确地描述应用程序框架。与其它的应用程序框架模型相比,本模型以框架特征为核心,而不是基于诸如热点、角色或者设计模式这些相对低层次的概念,提高了模型的抽象层次和复用层次,便于设计和开发人员对应用程序框架的把握和理解。提出了基于Z语言的应用程序框架形式化模型。尽管基于MDA的模型可以通过约束语言进行模型的验证,但若要进一步提高开发的效率,使模型能够支持推理,就需要形式化的支持。本文使用Z语言对所提出的基于MDA的应用程序框架元模型中的关键概念进行了形式化的描述。使用该形式化模型可以精确地定义应用程序框架中的基本概念,比如特征、角色、和设计模式等。其形式化的特征使得它可以用来验证应用程序框架实例的正确性和完整性,同时该模型中定义的约束条件亦便于推导出应用程序框架实例中的变量的取值,从而简化实例化的工作量,提高实例化的准确性。提出了以框架特征视图为中心的应用程序框架构造方法。针对所提出的以框架特征为核心的应用程序框架元模型,本文给出了一组用于完整描述应用程序框架的视图,并重点描述了构造该组框架特征视图时的注意事项和具体方法,同时通过实例说明了以框架特征视图为中心的应用程序框架的设计方法的具体过程。实现了一个可视化建模环境的原型系统通过一个基于Eclipse ModelingFramework(EMF)和Graphic Modeling Framework(GMF)的可视化建模环境的原型系统的实现,说明了在本文所提出的基于MDA的应用程序框架元模型的基础上,运用MDA的相关工具集解决应用程序框架领域中问题的潜力。

论文目录

  • 目录
  • 摘要
  • Abstract
  • 第一章 绪论
  • 1.1 什么是面向对象应用程序框架
  • 1.2 应用程序框架的特点
  • 1.2.1 技术特点
  • 1.2.2 过程特点
  • 1.3 应用程序框架示例
  • 1.4 应用程序框架相关研究概述
  • 1.5 应用程序框架当前存在的问题
  • 1.5.1 开发阶段存在的问题
  • 1.5.2 实例化阶段存在的问题
  • 1.5.3 应用程序框架的关键技术
  • 1.6 本文主要工作
  • 1.6.1 主要创新点
  • 1.6.2 论文结构
  • 第二章 应用程序框架的相关研究
  • 2.1 概述
  • 2.2 应用程序框架模型
  • 2.2.1 UML-F
  • 2.2.2 F-UML
  • 2.2.3 角色模型(Role Model)
  • 2.2.4 UML 2.0
  • 2.2.5 FSML
  • 2.2.6 框架约束语言
  • 2.3 应用程序框架与设计模式
  • 2.4 应用程序框架与领域特定语言(DSL)
  • 2.5 应用程序框架与复用
  • 2.6 应用程序框架与AOSD/AOP
  • 2.7 应用程序框架的实例化
  • 2.8 小结
  • 第三章 模型驱动架构概述
  • 3.1 概述
  • 3.2 MDA的目标
  • 3.2.1 提高抽象层次
  • 3.2.2 提高复用层次
  • 3.3 MDA的元模型架构
  • 3.4 MDA的基本概念
  • 3.5 小结
  • 第四章 基于MDA的应用程序框架元模型:FOFML-MOF
  • 4.1 概述
  • 4.2 FOFML-MOF元模型架构
  • 4.2.1 模型空间以及四层元模型架构对于应用程序框架建模的不足
  • 4.2.2 FOFML的五层模型架构
  • 4.3 FOFML-MOF元模型的构成
  • 4.4 应用程序框架核心元模型:FOFML-CORE
  • 4.4.1 应用程序框架构成相关模型元素
  • 4.4.2 框架特征及设计模式相关模型元素
  • 4.4.3 角色类型及角色相关模型元素
  • 4.5 FOFML-MOF实例化模型元模型:FOFML-I
  • 4.5.1 实例化元模型中的模型元素
  • 4.6 应用程序框架约束语言元模型:FOFML-FCL
  • 4.6.1 OCL简介
  • 4.6.2 扩展OCL的方式
  • 4.6.3 FCL抽象语法
  • 4.6.4 FCL语言描述
  • 4.6.5 FCL的表示
  • 4.7 应用程序框架/设计模式建模示例
  • 4.7.1 适配器模式(Adapter)
  • 4.7.2 访问者模式(Visitor)
  • 4.7.3 树视图(Tree Viewer)
  • 4.7.4 对象属性视图(PropertySupport)
  • 4.8 小结
  • 第五章 基于Z语言的应用程序框架元模型:FOFML-Z
  • 5.1 概述
  • 5.2 形式化与非形式化
  • 5.3 Z语言及Obiect-Z概述
  • 5.3.1 Z的类型系统
  • 5.3.2 Object-Z
  • 5.4 基于Z语言的面向特征的应用程序框架元模型:FOFML-Z
  • 5.4.1 面向对象系统中基本概念的Z语言模型
  • 5.4.2 应用程序框架相关模型元素的Z语言模型
  • 5.4.3 框架特征复用时的约束
  • 5.5 建模示例
  • 5.6 小结
  • 第六章 以框架特征视图为中心的应用程序框架构造方法
  • 6.1 概述
  • 6.2 应用程序框架视图模型
  • 6.2.1 框架特征视图
  • 6.2.2 静态视图
  • 6.2.3 动态视图
  • 6.2.4 框架实例视图
  • 6.3 基于模型驱动架构的应用程序框架工程
  • 6.4 小结
  • 第七章 实时测量系统框架建模实例
  • 7.1 概述
  • 7.2 实时测量系统框架概述
  • 7.3 框架特征视图
  • 7.4 静态视图
  • 7.5 动态视图
  • 7.6 框架实例视图
  • 7.7 小结
  • 第八章 框架特征视图的图形化建模环境原型系统的构建
  • 8.1 概述
  • 8.2 Ecore元模型
  • 8.3 创建GMF模型
  • 8.4 基于EMF的其它工具概述
  • 8.4.1 EMFT-OCL
  • 8.4.2 xText
  • 8.4.3 xPand
  • 8.5 小结
  • 第九章 总结与展望
  • 参考文献
  • 攻读学位期间参与的科研项目及发表论文
  • 致谢
  • 附录一:Eclipse RCP实例化代码
  • BuildingManager.java
  • Building.java
  • Room.java
  • BuildingContentProvider.java
  • BuildingViewLabelProvider.java
  • BuildingTreeViewer.java
  • BuildingAdapterFactory.java
  • BuildingPropertySource.java
  • Plugin.xml
  • 相关论文文献

    • [1].基于服务的插件应用程序框架设计与实现[J]. 电脑知识与技术 2014(12)
    • [2].基于RBAC的应用程序框架模型的设计与实现[J]. 信阳师范学院学报(自然科学版) 2010(02)
    • [3].应用程序框架在嵌入式系统中的应用[J]. 指挥控制与仿真 2009(06)
    • [4].利用Spring.NET构建动态的三层应用程序框架[J]. 硅谷 2013(14)
    • [5].建立Java应用程序框架降低Java信息系统开发难度[J]. 硅谷 2014(15)
    • [6].MFC应用程序框架封装技术在Matlab/Simulink中的应用[J]. 测控技术 2011(02)
    • [7].NI推出大规模MIMO应用程序框架,加速5G原型验证创新[J]. 电子测量技术 2016(08)
    • [8].利用Spring.NET构建动态的三层应用程序框架[J]. 计算机时代 2009(09)
    • [9].建立Java应用程序框架降低Java信息系统开发难度[J]. 西南民族大学学报(自然科学版) 2009(03)
    • [10].基于Model/View嵌入式Qt应用程序框架的研究与实现[J]. 长江大学学报(自然科学版)理工卷 2009(03)
    • [11].NI推出大规模MIMO应用程序框架,加速5G原型验证创新[J]. 国外电子测量技术 2016(08)
    • [12].新版LabVIEW Communications推动5G的快速原型化[J]. 国外电子测量技术 2016(09)
    • [13].新版LabVIEW Communications推动5G的快速原型化[J]. 电子测量技术 2016(09)
    • [14].新版Lab VIEW Communications推动5G的快速原型化[J]. 电子测量与仪器学报 2016(09)
    • [15].5G大规模多入多出(MIMO)测试台:从理论到实现[J]. 国外电子测量技术 2014(11)
    • [16].Ajax,Struts和Spring的比较分析[J]. 太原师范学院学报(自然科学版) 2011(04)
    • [17].WWDC大会见闻[J]. 程序员 2010(07)
    • [18].MFC算法概述[J]. 艺术科技 2016(11)
    • [19].基于消息的嵌入式系统应用框架研究[J]. 计算机测量与控制 2011(05)
    • [20].安卓系统安全设置及控制措施探究[J]. 电子技术与软件工程 2015(13)
    • [21].NI宣布802.11应用程序框架提供MAC层支持,以推动WiFi和5G研究[J]. 电子测量技术 2018(01)
    • [22].NI宣布802.11应用程序框架提供MAC层支持,以推动WiFi和5G研究[J]. 国外电子测量技术 2018(01)
    • [23].基于SingalR的Web实时应用程序框架设计[J]. 计算机工程与设计 2015(10)
    • [24].校园计算机信息管理系统的设计与开发探讨[J]. 数码世界 2017(12)
    • [25].数字资源跨平台整合系统的设计与实现[J]. 计算机技术与发展 2010(01)
    • [26].在基于wxWidgets的应用程序中使用ActiveX控件的一种通用方法[J]. 计算机应用与软件 2009(10)
    • [27].在线学习平台设计与实现[J]. 电脑编程技巧与维护 2020(03)
    • [28].Ruby on rails开发框架的实际应用[J]. 通讯世界 2015(17)
    • [29].Qt框架中信号和槽机制的研究[J]. 计算机光盘软件与应用 2013(11)
    • [30].基于Qt对Windows自动安全检查的研究与应用[J]. 信息与电脑(理论版) 2020(05)

    标签:;  ;  ;  

    基于模型驱动的面向对象应用程序框架的关键技术研究
    下载Doc文档

    猜你喜欢