Incremental Consistency Checking for Complex Design Rules and Larger Model Changes

  • Alexander Reder
  • Alexander Egyed
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7590)

Abstract

Advances in consistency checking in model-based software development made it possible to detect errors in real-time. However, existing approaches assume that changes come in small quantities and design rules are generally small in scope. Yet activities such as model transformation, re-factoring, model merging, or repairs may cause larger model changes and hence cause performance problems during consistency checking. The goal of this work is to increase the performance of re-validating design rules. This work proposes an automated and tool supported approach that re-validates the affected parts of a design rule only. It was empirical evaluated on 19 design rules and 30 small to large design models and the evaluation shows that the approach improves the computational cost of consistency checking with the gains increasing with the size and complexity of design rules.

Keywords

consistency checking performance incremental checking 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Balzer, R.: Tolerating Inconsistency. In: Belady, L., Barstow, D.R., Torii, K. (eds.) ICSE, pp. 158–165. IEEE Computer Society/ACM Press (1991)Google Scholar
  2. 2.
    Bergmann, G., Horváth, Á., Ráth, I., Varró, D., Balogh, A., Balogh, Z., Ökrös, A.: Incremental Evaluation of Model Queries over EMF Models. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010, Part I. LNCS, vol. 6394, pp. 76–90. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  3. 3.
    Blanc, X., Mounier, I., Mougenot, A., Mens, T.: Detecting model inconsistency through operation-based model construction. In: Schäfer, W., Dwyer, M.B., Gruhn, V. (eds.) ICSE, pp. 511–520. ACM (2008)Google Scholar
  4. 4.
    Cabot, J., Teniente, E.: Incremental integrity checking of UML/OCL conceptual schemas. Journal of Systems and Software 82(9), 1459–1478 (2009)CrossRefGoogle Scholar
  5. 5.
    Demsky, B., Rinard, M.: Data structure repair using goal-directed reasoning. In: Proceedings of the 27th International Conference on Software Engineering, ICSE 2005, pp. 176–185. ACM, New York (2005)Google Scholar
  6. 6.
    Egyed, A.: Instant consistency checking for the UML. In: Proceedings of the 28th International Conference on Software Engineering, ICSE 2006, pp. 381–390. ACM, New York (2006)CrossRefGoogle Scholar
  7. 7.
    Egyed, A.: Fixing Inconsistencies in UML Design Models. In: ICSE, pp. 292–301. IEEE Computer Society (2007)Google Scholar
  8. 8.
    Egyed, A.: Automatically Detecting and Tracking Inconsistencies in Software Design Models. IEEE Trans. Software Eng. 37(2), 188–204 (2011)CrossRefGoogle Scholar
  9. 9.
    Egyed, A., Letier, E., Finkelstein, A.: Generating and Evaluating Choices for Fixing Inconsistencies in UML Design Models. In: Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, ASE 2008, pp. 99–108. IEEE Computer Society, Washington, DC (2008)CrossRefGoogle Scholar
  10. 10.
    Fickas, S., Feather, M., Kramer, J.: Proceedings of ICSE-97 Workshop on Living with Inconsistency (1997)Google Scholar
  11. 11.
    Forgy, C.: Rete: A Fast Algorithm for the Many Pattern / Many Object Pattern Match Problem. Artificial Intelligence 19, 17–37 (1982)CrossRefGoogle Scholar
  12. 12.
    Jouault, F., Tisi, M.: Towards Incremental Execution of ATL Transformations. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 123–137. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  13. 13.
    Mens, M., Ragnhild, S., D’Hondt, M.: Detecting and Resolving Model Inconsistencies Using Transformation Dependency Analysis. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 200–214. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  14. 14.
    Nentwich, C., Capra, L., Emmerich, W., Finkelstein, A.: xlinkit: a consistency checking and smart link generation service. ACM Trans. Internet Technol. 2(2), 151–185 (2002)CrossRefGoogle Scholar
  15. 15.
    Nentwich, C., Emmerich, W., Finkelstein, A.: Consistency management with repair actions. In: Proceedings of the 25th International Conference on Software Engineering, ICSE 2003, pp. 455–464. IEEE Computer Society, Washington, DC (2003)Google Scholar
  16. 16.
    Reiss, S.P.: Incremental Maintenance of Software Artifacts. IEEE Trans. Software Eng. 32(9), 682–697 (2006)CrossRefGoogle Scholar
  17. 17.
    Robbins, J.E.: ArgoUML, v0.32.1 (March 2011), http://argouml.tigris.org
  18. 18.
    Sabetzadeh, M., Nejati, S., Liaskos, S., Easterbrook, S.M., Chechik, M.: Consistency Checking of Conceptual Models via Model Merging. In: RE, pp. 221–230. IEEE (2007)Google Scholar
  19. 19.
    Van Der Straeten, R., D’Hondt, M.: Model refactorings through rule-based inconsistency resolution. In: Proceedings of the 2006 ACM Symposium on Applied Computing, SAC 2006, pp. 1210–1217. ACM, New York (2006)Google Scholar
  20. 20.
    Varró, D., Balogh, A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)MATHCrossRefGoogle Scholar
  21. 21.
    Xu, C., Cheung, S.C., Chan, W.K.: Incremental consistency checking for pervasive context. In: Proceedings of the 28th International Conference on Software Engineering, ICSE 2006, pp. 292–301. ACM, New York (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Alexander Reder
    • 1
  • Alexander Egyed
    • 1
  1. 1.Johannes Kepler UniversityLinzAustria

Personalised recommendations