Incremental Consistency Checking of Dynamic Constraints

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

Abstract

Software design models are routinely adapted to domains, companies, and applications. This requires customizable consistency checkers that allow engineers to dynamically adapt model constraints. To benefit from quick design feedback, such consistency checkers should evaluate the consistency of such changeable constraints incrementally with design changes. This paper presents such a freely customizable, incremental consistency checker. We demonstrate that constraints can be defined and re-defined at will. And we demonstrate that its performance is instant for many kinds of constraints without manual annotations or restrictions on the constraint language used. Our approach supports both model and meta-model constraints and was evaluated on over 20 software models and 24 types of constraints. It is fully automated and integrated into the IBM Rational Software Modeler tool.

Keywords

consistency checking dynamic constraints incremental checking 

References

  1. 1.
    Fickas, S., Feather, M., Kramer, J.: Proceedings of ICSE 1997 Workshop on Living with Inconsistency, Boston, USA (1997)Google Scholar
  2. 2.
    Robins, J., et al.: ArgoUML, http://argouml.tigris.org/
  3. 3.
    Nentwich, C., Capra, L., Emmerich, W., Finkelstein, A.: xlinkit: a consistency checking and smart link generation service. ACM Transactions on Internet Technology (TOIT) 2, 151–185 (2002)CrossRefGoogle Scholar
  4. 4.
    Blanc, X., Mounier, I., Mougenot, A., Mens, T.: Detecting model inconsistency through operation-based model construction. In: 30th International Conference on Software Engineering, Leipzig, Germany, pp. 511–520 (2008)Google Scholar
  5. 5.
    Object Constraint Language (OCL), http://www.omg.org/spec/OCL/2.0/
  6. 6.
    Dhungana, D., Rabiser, R., Grünbacher, P., Lehner, K., Federspiel, C.: DOPLER: An Adaptable Tool Suite for Product Line Engineering. In: 11th International Software Product Line Conference, Kyoto, Japan, pp. 151–152 (2007)Google Scholar
  7. 7.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns Elements of Reuseable Object-Oriented Software. Addison Wesley, Reading (1994)Google Scholar
  8. 8.
  9. 9.
    Voelter, M., Groher, I.: Product Line Implementation using Aspect-Oriented and Model-Driven Software Development. In: 11th International Software Product Line Conference, Kyoto, Japan, pp. 233–242 (2007)Google Scholar
  10. 10.
    Egyed, A.: Instant Consistency Checking for the UML. In: 28th International Conference on Software Engineering, Shanghai, China, pp. 381–390 (2006)Google Scholar
  11. 11.
    Eclipse Modeling Framework, http://www.eclipse.org/modeling/emf/
  12. 12.
    Egyed, A., Balzer, R.: Integrating COTS Software into Systems through Instrumentation and Reasoning. Automated Software Engineering 13, 41–64 (2006)CrossRefGoogle Scholar
  13. 13.
    Czarnecki, K., Pietroszek, K.: Verifying feature-based model templates against well-formedness OCL constraints. In: 5th International Conference on Generative Programming and Component Engineering, Portland, USA (2006)Google Scholar
  14. 14.
    Larsen, K.G., Nyman, U., Wąsowski, A.: On Modal Refinement and Consistency. In: Caires, L., Vasconcelos, V.T. (eds.) CONCUR 2007. LNCS, vol. 4703, pp. 105–119. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  15. 15.
    Engels, G., Güldali, B., Soltenborn, C., Wehrheim, H.: Assuring Consistency of Business Process Models and Web Services Using Visual Contracts. In: Applications of Graph Transformations with Industrial Relevance, Kassel, Germany, pp. 17–31 (2007)Google Scholar
  16. 16.
    Campbell, L., Cheng, B., McUmber, W., Stirewalt, K.: Automatically Detecting and Visualising Errors in UML Diagrams. Requirements Engineering Journal 7, 264–287 (2002)CrossRefGoogle Scholar
  17. 17.
    Jordi, C., Ernest, T.: Incremental integrity checking of UML/OCL conceptual schemas. Journal of System Software 82, 1459–1478 (2009)CrossRefGoogle Scholar
  18. 18.
    Concurrent Versions System, http://www.nongnu.org/cvs/
  19. 19.
  20. 20.
    Egyed, A.: Fixing Inconsistencies in UML Design Models. In: 29th International Conference on Software Engineering, Minneapolis, USA, pp. 292–301 (2007)Google Scholar
  21. 21.
    Küster, J.M., Ryndina, K.: Improving Inconsistency Resolution with Side-Effect Evaluation and Costs. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 136–150. Springer, Heidelberg (2007)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

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

Personalised recommendations