论文部分内容阅读
近年来,随着Internet和Intranet/Extranet的快速发展,Web应用被广泛应用到各个领域,Web应用的开发效率及质量要求不断提高,开发工作的难度不断增加。如何快速有效的开发出Web应用成为业界研究的焦点之一。OMG提出并倡导的MDA(Model Driven Architecture),通过可视化建模将业务逻辑从具体的平台中分离出来,建立起平台无关模型(Platform IndependentModel,PIM),在模型映射规则支持下,建立起包含特定平台信息的平台相关模型(Platform Independent Model,PSM),最终由代码生成器生成可执行代码。基于MDA的软件开发在应用开发层次、开发效率、模型复用程度、可移植性、代码一致性和可维护性上都有很大提高。当前基于MDA的模型转换方法大都依赖源模型和目标模型的语法结构,这要求源模型和目标模型在结构上具有较高的相似度。但在实际的模型转换中,源模型和目标模型在建模语言、建模侧重点以及建模者主观因素等方面的差异,使得源模型和目标模型之间在语法结构上具有较低的相似度,因而难以直接建立二者之间的转换关系。针对以上问题,本文在对模型转换中的语义要求进行深入研究的基础上,提出了一种基于语义一致性的模型转换方法,并将此模型转换方法应用于实际模型转换的研究开发中。具体如下:首先,本文深入分析课题的研究背景和研究现状,对模型相似度、模型语义和模型转换的语义要求进行归纳和总结,提出语义一致性和语义一致性的模型转换等概念。在此基础上,创新性的提出基于语义一致性的模型转换方法。其次,从宏观语义一致性和元语义一致性两个层面说明基于语义一致性的模型转换方法。通过语义约束概括抽象目标语义模型,建立源模型与目标语义模型的转换关系以及目标语义模型与目标模型的转换关系,从而以目标语义模型为桥梁,建立源模型与目标模型之间的宏观转换关系;分析MDA模型转换框架结构,提出应用形式化语言扩展机制重构语言概念集的方法,建立元语义级的转换关系。第三,借助具体源模型(FMP模型)与目标模型(基于JavaServer Faces平台)的转换,从理论上对该方法进行说明。在此基础上,将该方法应用于基于FMP模型的代码自动生成工具AUI的开发实践中,建立起AUI JavaServer Faces代码生成器,从实际应用角度说明该方法并验证可用性和实用性。除此之外,本文还对当前研究状况进行了总结,并指出了未来需要完成的工作。基于语义一致性的模型转换方法,将模型转换从单纯依靠语法指导下的转换提高到语法和语义相结合下的转换,在语义的约束下建立模型之间的转换,从而为模型转换提供语义层面的指导。这些研究将有力地推动模型转换方法和代码自动生成的研究与发展,有着重要的理论意义和实用价值。