“Model-Driven Data Access” (MDDA) is a software development environment. Starting with a data model, with the help of MDDA database schemes, interfaces, XML formats and display elements can be generated. MDDA is offered with Eclipse and Java.

MDDA substantially reduces the development time of databases and associated interfaces and enables the client to focus its own developments on its core skills.


Software development, especially in the database field, has for several years increasingly focussed on explicit data models and generated interfaces. Software firms that have merged in the OMG (Object Modelling Group) have for a long time given precedence to a standardized approach, which they refer to as MDA (Model-Driven architecture).

ECOFIN has followed this development from an early stage and has been developing software based on this principle since early 2000 onwards. Over time a software development environment has evolved with which database schemes, interfaces, XML formats and display elements have been generated based on a data model.

The software has proven its worth in ECOFIN internal and external database projects.



Code generation for Java is based on a UML model. Java Application Programming Interfaces (APIs) are generated in several stages, in which the general UML model is firstly transferred by conversion into a Java programming model, which then serves as the starting point for generation of Java code.

The plug-ins for model conversion and code generation are embedded in the Eclipse development environment. They utilise standard Eclipse tools, in particular the UML2 interfaces and the Eclipse Modelling Framework (EMF). The Java code generated does not use EMF libraries any more. Hibernate is used as the persistence layer.

With division of generation into different transformation processes, intermediate results can be used again. The entire process then becomes considerably more flexible. The individual transformation steps are configurable and can be adapted or exchanged as required by the client or for special project requirements.


Dr. Jürg Grossmann
Telephone: +41 43 499 3236