This talk presents a low-code, model-driven Softwarefactory, using over 20 Domain Specific Languages (DSL) written with Xtext to generate large-scale business web-applications. Each DSL contains a grammar for a required business-application-layer. A model created with a DSL is used to generate executable code, structured data and configuration settings or is interpreted during runtime.
The DSL concept makes it easy to specify requirements on each application layer, to design the required specification and to understand existing models. The consequent usage of OSGi for the Softwarefactory and the applications generated with it, significantly reduce complexity and thus development and maintenance expenses. As far as element ids are used in the UI, they are automatically extracted to localization files for translation, making the resulting application available for international use.
Dependencies between models reveal inconsistencies immediately while modifying and prevent generating code until these are resolved. Therefore turnaround cycles are short, errors are easy to discover and prototypes materialize in a very short time. Most DSLs generate against open-source frameworks like EclipseLink, Smooks, Mondrian, Vaadin, and jBPM thus enabling everybody to use complex frameworks without deeper knowledge of their API.
We show some of the most important layers and how their domain specific language creates user interface features and increases functionality with very little effort.