Doctoral thesis (Dissertations and theses)
Resolving Inconsistencies in Model-Driven Engineering using Automated Planning
Pinna Puissant, Jorge
2012
 

Files


Full Text
phdthesis.pdf
Publisher postprint (2.49 MB)
Download

All documents in ORBi UMONS are protected by a user license.

Send to



Details



Abstract :
[en] One of the main research challenges in model-driven software engineering is to deal with inconsistencies in software design models. Automated techniques to detect and resolve these inconsistencies are essential. A wide range of model inconsistency resolution approaches have been presented in literature. In this dissertation, we study a novel approach that uses automated planning, an artificial intelligence technique, for the purpose of automatically generating resolution plans for model inconsistencies. We present two different planning approaches to generate resolution plans: Fast-Forward Planning System (FF), an existing domain-independent heuristic state-space progression planner; and Badger, a new domain-specific regression planner that we have implemented in Prolog. We study their feasibility in the domain of model inconsistency resolution. Badger has demonstrated good performance for inconsistency resolution, is metamodel-independent and can generate multiple resolutions plans. In addition, the planner algorithm of Badger can be adapted by taking full advantage of the domain knowledge. We validate Badger on a large number of automatically generated UML class diagram models of various sizes, as well as on UML models obtained by reverse engineering five Java programs, and on a classical toy example. We use a set of 13 structural inconsistency types based on OCL constraints found in the UML metamodel specification. We analyse the scalability results of the approach obtained through several stress-tests and discuss the limitations of our approach. Our empirical analysis reveals a strong linear relationship between the model size and the execution time, a quadratic relationship between the number of inconsistencies and the execution time and a quadratic relationship between the number of generated plans and the execution time. We also observe an increase of the execution time as the number of actions in the resolution plans increases. In addition, our approach scales up to models containing more than 10000 model elements. We validate the metamodel independence of Badger by applying it to the problem of resolving code smells in Java programs. We explore how Badger can adapt the way it presents the resolution plans to the users by modifying the evaluation function of the planner algorithm. We analyse and discuss the solutions and possibilities that allows our planner to change the order in which the resolution plans are generated. We conclude that it is feasible to use automated planning in a scalable way for design-model inconsistency resolution.
Disciplines :
Computer science
Author, co-author :
Pinna Puissant, Jorge ;  Université de Mons > Faculté des Sciences > Génie Logiciel
Language :
English
Title :
Resolving Inconsistencies in Model-Driven Engineering using Automated Planning
Defense date :
14 September 2012
Number of pages :
163
Institution :
Université de Mons
Degree :
Doctorat en informatique
Research unit :
S852 - Génie Logiciel
Available on ORBi UMONS :
since 24 September 2012

Statistics


Number of views
28 (0 by UMONS)
Number of downloads
52 (0 by UMONS)

Bibliography


Similar publications



Contact ORBi UMONS