Model Comparison A Key Challenge for Transformation Testing







- Slides: 7

Model Comparison: A Key Challenge for Transformation Testing and Version Control in Model Driven Software Development Yuehua Lin, Jing Zhang, Jeff Gray {liny, zhangj, gray}@cis. uab. edu http: //www. cis. uab. edu/softcom/ * This research is funded by the DARPA Information Exploitation Office (DARPA/IXO), under the Program Composition for Embedded Systems (PCES) program.

Two Challenges in MDSD • Lack of a mechanism for validating the correctness of model transformations • Problem: – Model transformation specifications can be erroneous • Proposed Solution: – Testing may be applied to model transformations • Current version control tools do not match the structural nature of models • Problem: – Need to archive the history of model changes • Proposed Solution: – Model-centric version control

Model Transformation Testing Bugs?

Model-Centric Version Control • Storage and retrieval of versioned models • Merging of versioned models • Change detection between versioned models • Visualization of differences * Version 1. 0 Version 2. 0

Model Comparison • Calculate the mappings and differences between models. • In model transformation testing Model comparison is to compare the actual output model and the expected output model to find the errors in a model transformation specification. • In model-centric version control Model comparison is to compare versioned models to detect changes.

Issues toward Automation of Model Comparison • What properties of models need to be compared? – In modeling languages: a model consists of entities, associations, and attributes – Represent model differences: operational terms such as “create”, “delete”, “set/update”, etc • At which level to compare models? – Intermediate representation like XML, or underlying internal data structure? • What are effective algorithms? – Powerful or practical? general or specific? • How to visualize model differences? – Interpret the results (e. g. indicate various differences using coloring) – Support navigation of differences hierarchically

Questions? For publications, video demonstrations, and presentations, please see: http: //www. gray-area. org/Research/C-SAW/