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