A Distance-Based Method for Inconsistency Resolution of Models
Subject Areas : electrical and computer engineeringR. Gorgan Mohammadi 1 , Ahmad Abdollahzadeh Barforoush 2
1 -
2 - Amirkabir
Keywords: Model driven software development inconsistency closest repair distance metric,
Abstract :
Model driven approach to software engineering has been taken into consideration due to its impact on reducing complexities and improving the productivity in software development. Inconsistencies are considered as an important challenge in applying models. An inconsistency is occurred due to an undesired structural pattern in a model. The main drawback of current approaches to inconsistency resolution is not considering the difference between the repair and the spoiled model. This work presents a distance-based method for finding closest repair for the spoiled model. For this aim, models and metamodels are represented using directed graphs and graph transformation rules are employed for inconsistency resolution. A distance metric is defined based on the amount of changes in the graph corresponding to the model. Application of the proposed method to a set of BPMN models shows the improvement of the results.
[1] J. Bezivin, "In search of a basic principle for model driven engineering," Special Novatica Issue UML and Model Engineering, vol. 2, no. 2, pp. 21-24, 21-24. 2004.
[2] G. Spanoudakis and A. Zisman, "Inconsistency management in software engineering: Survey and open research issues," In S. K. Chang, ed., Handbook of Software Engineering and Knowledge Engeering, pp. 24-29, 2001.
[3] P. J. Puissant, T. Mens, and R. Straeten, "Resolving model inconsistencies with automated planning," in Proc. of the 3rd Workshop on Living with Inconsistencies in Software Development, CEUR Workshop Proc., pp. 8-14, 2010.
[4] A. Hegedus, A. Horvath, I. Rath, M. C. Branco, and D. Varro, "Quick fix generation for DSMLs," in Proc. IEEE Symp. on Visual Languages and Human-Centric Computing, VL/HCC, pp. 17-24, Pittsbourgh, PA, USA, 18-22 Sep. 2011.
[5] M. Silva, A. Mougenot, X. Blanc, and R. Bendraou, "Towards automated inconsistency handling in design models," in Proc. CAiSE 2010, vol. LNCS 6051, pp. 348-362, 2010.
[6] A. Horvath and D. Varro, "CSP(M): constraint satisfaction programming over models," in Proc. of ACM/IEEE 12th Int. Conf. on Model Driven Engineering Languages and Systems, Models'09, vol. LNCS 5795, pp. 107-121, Oct. 2009.
[7] H. Ehrig, K. Ehrig, U. Prange, and G. Taentzer, "Fundamental theory for typed attributed graphs and graph transformation based on adhesive HLR categories," Fundamenta Informaticae, vol. 74, no. 1, pp. 31-61, 2006.
[8] A. Kleppe, Software Language Engineering: Creating Domain-Specific Languages Using Metamodels, Addison-Wesley, 2008.
[9] D. Plump, "Termination of graph rewriting is undecideable," Fundamental Informatica, vol. 33, no. 2, pp. 201-209, 2008.
[10] D. Varro, S. Varro-Gyapay, H. Ehrig, U. Prange, and G. Taentzer, "Termination analysis of model transformationsby petri nets," in Proc. ICGT06, vol. LNCS 4178, pp. 260-274, 2006.
[11] G. Bergmann, A. Okros, I. Rath, D. Varro, and G. Varro, "Incremental pattern matching in the viatra model transformation system," in Proc. of the 3rd Int. Workshop on Graph and Model Transformations, pp. 25-32, May 2008.
[12] A. Egyed, "Instant consistency checking for UML," in Proc. Int'l Conf. Software Engineering, ICSE'06, pp. 381-390, May 2006.
[13] R. V. D. Straeten, Inconsistency Management in Model Driven Engineering an Approach Using Description Logics, Ph. D Thesis, Vrije Universiteit Brussel, Brussels, Belgium, 2005.
[14] A. Egyed, E. Letier, and A. Finkelstein, "Generating and evaluating choices for fixing inconsistencies in UML design models," in Proc. 23rd IEEE/ACM Int. Conf. on Automated Software Engineering, pp. 99-108, 2008.
[15] C. Amelunxen, E. Legros, A. Schurr, and I. Sturmer, "Checking and enforcement of modeling guidelines with graph transformations," in Applications of Graph Transformations with Industrial Relevance, vol. 5088, Lecture Notes in Computer Science, Springer, pp. 313-328, 2008.
[16] E. Guerra and J. Lara, "Event-driven grammars: towards the integration of meta-modelling and graph transformation," in Graph Transformations, vol. 3256, Lecture Notes in Computer Science, Springer, pp. 215-218, 2004.
[17] Y. Xiong, A. Hubaux, S. She, and K. Czarnecki, "Generating range fixes for software configuration," in Proc. 34th Int. Conf. on Software Engineering, ICSE'12, pp. 58-68, Zurich, Switzerland, 2-9 Jun. 2012.
[18] J. Wijsen, "Database repairing using updates," ACM Trans. on Database Systems, vol. 30, no. 3, pp. 722-768, Sep. 2005.
[19] F. N. Afrati and P. G. Kolaitis, "Repair checking in inconsistent databases: algorithms and complexity," in Proc. of 12th Int. Conf. on Database Theory, pp. 31-41, Saint-Petersburg, Russia, 23-26 Mar. 2009.
[20] E. Santos and J. P. Martins, "An Argumentation framework for optimal repair checking," in Proc IEEE 5th Int. Conf. on. Intelligent Computer Communication and Processing, ICCP'09, pp. 19-26, 27-29 Aug. 2009.