Multi-Level Language Engineering: A New Paradigm for Conceptual Modelling and Software Development
Model-driven software development is promising attractive benefits. Developers and prospective users can focus on conceptual models rather than on cryptic code, coding principles can be enforced by software generators, and model-driven software architectures allow for a great deal of independence from specific implementation level languages and platforms. In recent years, domain-specific languages have gained increasing attention. They promote the productivity of modelers and programmers, and contribute to system quality, too. Therefore, they are suited to strengthen further the idea of model-driven software development. However, model-driven software within the dominating object-oriented paradigm suffers from serious limitations. A new language paradigm that enables an unlimited number of classification levels, multi-level language engineering, promises to overcome these limitations. It does not only allow for more expressive models, but it also promotes reuse and maintainability as well as user- empowerment. Based on the analysis of problem with the current paradigm, the talk introduces a particular approach to multi-level software engineering that includes a versatile metamodel, various multi-level DSMLs and a language-engineering and execution engine. It allows for the common representation of models and code. As a consequence, there is no need for synchronizing code and models.
Click to view keynote's slide