Vitruvius is a framework for view-based (software) development. It assumes different models to be used for describing a system, which are automatically kept consistent by the framework executing (semi-)automated rules that preserve consistency. These models are modified only via views, which are projections from the underlying models. For general information on Vitruvius, see our GitHub Organisation and our Wiki.
This DSLs project provides several languages to specify consistency preservation rules in terms of model transformations for keeping models consistent.
Currently, the Reactions
and the Commonalities
language are available with different levels of maturity.
The Reactions
language is the most used and best maintained one.
The DSLs only depend on the change definition of Vitruvius, such that they can be used standalone to define and execute model transformations.
This project depends on the following other projects from the Vitruvius framework: