As the name implies, AMDD is the agile version of Model Driven Development (MDD). MDD is an approach to software development where extensive models are created before source code is written. A primary example of MDD is the Object Management Group (OMG)’s Model Driven Architecture (MDA) standard. With MDD a serial approach to development is often taken, MDD is quite popular with traditionalists, although as the RUP/EUP shows it is possible to take an iterative approach with MDD. The difference with AMDD is that instead of creating extensive models before writing source code you instead create agile models which are just barely good enough that drive your overall development efforts. AMDD is a critical strategy for scaling agile software development beyond the small, co-located team approach that we saw during the first stage of agile adoption.
Have you ever evolved your metamodel in EMF and your models were no longer valid afterwards? Or have you avoided to evolve your metamodel in order not to invalidate your models? Or have you even deteriorated your metamodel so that it remains downwards compatible to previous versions in order to avoid these problems?
This site introduces COPE, a tool based on EMF that eases the migration of models in response to an evolving metamodel. COPE explicitly records the history of the metamodel as a sequence of changes and allows to attach information of how to migrate models (which is referred to as coupled evolution). The attached information can be used to automatically migrate models to the new version of the metamodel. COPE even goes one step further and allows to reuse combinations of metamodel adaptation and model migration steps across metamodels.
In order not to disturb EMF users in their habits, COPE seamlessly integrates into the Ecore editor. A demonstration of the tool in action can be looked at here. It is planned to contribute COPE to the Eclipse community.
Model-based Data Export Tool
Features
* Mass data export to XML and SQL.
* Generates hierarchically structured XML and topologically sorted SQL-DML.
* Exports consistent and referentially intact row-sets from your productive database and imports the data into your development and test environment.
* Removes and archives obsolete data from your productive database without violating integrity.
* Open Source. Entirely written in Java. Platform independent. DBMS agnostic.
M. Rohr, M. Boskovic, S. Giesecke, и W. Hasselbring. Proceedings of the Workshop ``Models@run.time'' at the 9th International Conference on Model Driven Engineering Languages and Systems (MoDELS/UML'06) 2006, (октября 2006)
T. Weise, M. Zapf, M. Khan, и K. Geihs. Kasseler Informatikschriften (KIS), 2007, 2. University of Kassel, Fachbereich 16: Elektrotechnik/Informatik: Kassel, Hesse, Germany, (2007)