MDWorkbench is a model-driven development environment to build:
Code generators are text template based and can be built for any target architecture or framework.
Transformations are rule-based and are performed from any number of source models into any number of target models, or may modify the source model only.
Text templates and rules constructs can be combined transparently in the environment to allow intuitive and efficient model processing.
These constructs may be enriched using Java code for additional services, such as string handling. Fully independent Java libraries can be seamlessly accessed directly from the rulesets or templates.
You should have basic knowledge of Java concepts: packages, types, methods, etc.