| As announced during the workshop, we have taken the initiative to set up a
SoSym Theme Issue on Models and Evolution .
The theme issue has an open call. So even though we strongly encourage the authors of ME2010 to submit their work, the call is not restricted to people who participated in our workshop series.
The deadline for sending us your intention to submit is 10 January 2011.
More information can be found in the Theme Issue section.
|The proceedings, the presentations, and some photos are available in the Downloads Section.|
|(ME 2010 is the continuance of MoDSE-MCCM 2009 at MoDELS, MCCM 2008 at MoDELS, MoDSE 2008 at CSMR, and MoDSE 2007 at CSMR)|
In general, software artifacts and applications are subject to many kinds of changes, which range from technical changes due to rapidly evolving technology platforms, to modifications in the applications themselves due to the natural evolution of the businesses supported by those software applications. These modifications include changes at all levels, from requirements through architecture and design, to source code, documentation and test suites. They typically affect various kinds of models including data models, behavioral models, domain models, source code models or goal models. Coping with and managing the changes that accompany the evolution of software assets is therefore an essential aspect of Software Engineering as a discipline.
In this context, models can play an important role. They can help and guide software evolution and can enforce and reduce critical risks and important resources (e.g., costs, personnel, time) involved in software evolution, by employing high-level abstractions. Models can thus help to direct evolution. Model-Driven Engineering (MDE) is an approach to software design and development in which models are the primary artifacts, and play a key role. The major objective of MDE is to increase productivity and reduce time-to-market by raising the level of abstraction and using concepts closer to the problem domain at hand, rather than those offered by programming languages. Models represent domain-specific concepts and conform to metamodels. A core task of MDE is the manipulation and transformation of models. Manipulating and transforming models can be very useful to manage software evolution. The objective is to enforce and reduce critical risks and important costs involved in software evolution, by employing high-level abstractions and by considering several facets.
Software evolution encounters also the need of evolving models. Thus, model (co-)evolution and consistency management become crucial activities to cope with the natural changes of any software system. In fact, there is an increasing need for more disciplined techniques and engineering tools to support a wide range of model evolution activities, including model-driven software evolution, model differencing, model comparison, model refactoring, model inconsistency management, model versioning and merging, and (co-)evolution of models. Recently, a number of works devoted to model-driven evolution and detection of differences between models have emerged to foster enhanced model management practices. The different dimensions of evolution make the problem intrinsically difficult because modifications can reflect coherent adaptations of correlated artifacts at several layers of the metamodeling architecture. For example, some well-formed rules can be invalidated when a metamodel evolves. The same happens with the associated model transformations. Furthermore, model adaptations should be propagated to artifacts interconnected by means of model transformations. Finally, evolution of model transformations should be reflected in both source and target models. In addition, the exploitation of differences is an appropriate solution for version management, because in general the complete system model is far larger than the modifications that occur from one version to another. Apart from these works, further research is required to address the rest of the model evolution activities (refactoring, inconsistency management, versioning…).
Furthermore, there is a substantial difference between the modeling of evolution and the evolution of models. There are plenty of works on the former topic, while our proposed workshop focuses on the evolution of models. One of the goals and expected outcomes of this workshop is to explain and clarify the difference between these two notions, by explicitly identifying the concepts and mechanisms involved in each one.
For general queries regarding the workshop organisation please send an email to email@example.com.