PhD Thesis: Álvaro Jiménez
Incorporando la Gestión de la Trazabilidad en un entorno de Desarrollo de Transformaciones de Modelos Dirigido por Modelos
Traceability Management gives us the possibility of knowing how software artifacts have been evolved along the development process and how they are been related each other. This kind of information can be useful to different software activities such as change impact assessment, making decisions, requirements validation and maintenance tasks. Therefore, it would be desirable that any software methodology supports the traceability management. However, despite of this issue has been recognized along the Software Engineering history, nowdays there are only a few proposals which support it.
In the other hand, Model-Driven Engineering (MDE) and more specifically, the key role which is played by model transformations along the process development provides a new landscape to deal with traceability management more efficient and complete. The idea proposed is simple and intuitive: transformation rules represent the relationships between elements of source and target models involved in the transformation. Hence, they can be useful to identify and generate trace links between software artifacts which should be produced as result of executing different transformations along the life cycle.
Moreover, since a transformation is another software artifact, it seems adequate to apply MDE principles to its development, i.e. handling it as a product which we can obtain by means of consecutive refinements from a high-level specification. In that way, that specification would be a set of relationships between elements of source and target models.
Combining these ideas, this Doctoral Thesis is focused on developing a framework for model-driven development of model transformations which support trace links generation. This framework defines a development process which starts with a high-level specification of relationships between model elements. Later on, this high-level specification is transformed into consecutive lower level transformation models until it will be transformed into code. The execution of the transformation code generated will produce the target models of the transformation and an another model which contains the trace links between elements of the source and target models involved in the transformation.