Blended modeling is an emerging paradigm involving seamless interaction between multiple notations for the same underlying modeling language. We focus on a model-driven engineering (MDE) approach based on meta-models to develop textual languages to improve the blended modeling capabilities of modeling tools. In this thesis, we propose an approach that can support the co-evolution of meta-models and grammars as language engineers develop textual languages in a meta-model-based MDE setting. Firstly, we comprehensively report on the challenges and limitations of modeling tools that support blended modeling, as well as opportunities to improve them. Second, we demonstrate how language engineers can extend Xtext's generator capabilities according to their needs. Third, we propose a semi-automatic method to transform a language with a generated grammar into a Python-style language. Finally, we provide a solution (i.e., GrammarOptimizer) that can support rapid prototyping of languages in different styles and the co-evolution of meta-models and grammars of evolving languages.
翻译:混合建模是一种新兴范式,涉及同一底层建模语言中多种表示法间的无缝交互。本文聚焦于基于元模型的模型驱动工程(MDE)方法,通过开发文本语言来提升建模工具的混合建模能力。我们提出一种方法,能在基于元模型的MDE环境下,支持语言工程师开发文本语言时实现元模型与语法的协同演化。首先,我们系统报告了支持混合建模的建模工具所面临的挑战与局限性,以及改进机遇。其次,我们展示了语言工程师如何根据需求扩展Xtext的生成器能力。第三,我们提出一种半自动方法,将具有生成式语法的语言转换为Python风格语言。最后,我们提供了一种解决方案(即GrammarOptimizer),可支持不同风格语言的快速原型开发,以及演化语言中元模型与语法的协同演化。