7.4 Incremental Consistency

When a target model has been generated, it usually needs some extra work, such as filling in the code of an operation, or fine tuning a user interface for optimal use. When you regenerate the target model (because of changes in the source model), you want the extra work done on the original target model to remain . This is what we call incremental consistency.

When a change in a source model takes place, the transformation process knows which elements in the target model need to be changed as well. An incremental transformation process can replace the old elements with the newly generated ones, while keeping the extra information in the target model in place. This means that changes in the source model have minimal impact on the target model.

We can see why minimizing these changes is important in Rosa's Breakfast Service, where one of the target models is a relational model of a database. Rosa might already have a fully populated database in use. If we simply regenerate the complete target model and lose the explicit relationship with the existing target model, we have created a problem. We can create a new database corresponding with the new relational model, but we need to do a migration from all data in the existing database to the new one. If we use the incremental approach, we can keep all the data of unchanged parts of the relational target model without any migration. We only need to migrate the parts whose model has changed.

Note that both traceability and incremental consistency are most relevant as long as the PIM is not a complete description of the system and the transformation tools are not as good as current day compilers. Both are less relevant in the transformation from PSM to code. The implications of these features on PIM to PSM transformations are addressed in section 7.6.



MDA Explained. The Model Driven Architecture(c) Practice and Promise 2003
Project Leadership (The Project Management Essential Library)
ISBN: N/A
EAN: 2147483647
Year: 2004
Pages: 118

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net