Consistent Adaptation and Evolution of Class Diagrams during Refinement

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


Software models are key in separating and solving independent development concerns. However, there is still a gap on how to transition design information among these separate, but related models during development and maintenance. This paper addresses the problem on how to maintain the consistency of UML class diagrams during various levels of refinement. We present a new approach to automated consistency checking called ViewIntegra. Our approach separates consistency checking into transformation and comparison. It uses transformation to translate model elements to simplify their subsequent comparison. Transformation-based consistency checking, in the manner we use it, is new since we use transformation to bridge the gap between software models. No intermediate models or model checkers are required; developers need only be familiar with the models they design with and none other. The separation of transformation and comparison makes our approach to consistency checking more transparent. It also makes our approach useful for both propagating design changes among models and validating consistency. This gives developers added flexibility in deciding when to re-generate a model from scratch or when to re- solve its inconsistencies. Although this paper emphasizes the adaptation and evaluation of class diagrams, we found our technique to be equally useful on other models. Our approach is tool supported.


Unify Modeling Language Consistency Check Class Diagram Unify Modeling Language Model Consistency Rule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abi-Antoun, M., Ho, J., Kwan, J.: Inter-Library Loan Management System: Revised Life-Cycle Architecture (1999)Google Scholar
  2. 2.
    Alvarado, S.: An Evaluation of Object Oriented Architecture Models for Satellite Ground Systems. In: Proceedings of the 2nd Ground Systems Architecture Workshop (GSAW) (February 1998)Google Scholar
  3. 3.
    Belkhouche, B., Lemus, C.: Multiple View Analysis and Design. In: Proceedings of the Viewpoint 1996: International Workshop on Multiple Perspectives in Software Development (October 1996)Google Scholar
  4. 4.
    Cheng, B.H.C., Wang, E.Y., Bourdeau, R.H.: A Graphical Environment for Formally Developing Object-Oriented Software. In: Proceedings of IEEE International Conference on Tools with AI (November 1994)Google Scholar
  5. 5.
    Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT Press, Cambridge (1996)Google Scholar
  6. 6.
    Egyed, A.: A Scenario-Driven Approach to Trace Dependency Analysis. IEEE Transactions on Software Engineering (TSE) 29(2), 116–132 (2003)CrossRefGoogle Scholar
  7. 7.
    Egyed, A.: Compositional and Relational Reasoning during Class Abstraction. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 121–137. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  8. 8.
    Egyed, A.: Heterogeneous View Integration and its Automation. PhD Dissertation, Technical Report from the University of Southern California, USA (2000)Google Scholar
  9. 9.
    Egyed, A.: Automated Abstraction of Class Diagrams. ACM Transaction on Software Engineering and Methodology (TOSEM) 11(4), 449–491 (2002)CrossRefGoogle Scholar
  10. 10.
    Egyed, A., Medvidovic, N.: A Formal Approach to Heterogeneous Software Modeling. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 178–192. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  11. 11.
    Ehrig, H., Heckel, R., Taentzer, G., Engels, G.: A Combined Reference Model- and View-Based Approach to System Specification. International Journal of Software Engineering and Knowledge Engineering 7(4), 457–477 (1997)CrossRefGoogle Scholar
  12. 12.
    Ford, L.R., Fulkerson, D.R.: Flows in Networks. Princeton University Press, Princeton (1962)zbMATHGoogle Scholar
  13. 13.
    Gieszl, L.R.: Traceability for Integration. In: Proceedings of the 2nd Conference on Systems Integration (ICSI 1992), pp. 220–228 (1992)Google Scholar
  14. 14.
    Grundy, J., Hosking, J., Mugridge, R.: Inconsistency Management for Multiple-View Software Development Environments. IEEE Transactions on Software Engineering (TSE) 24(11) (1998)Google Scholar
  15. 15.
    Hunter, A., Nuseibeh, B.: Analysing Inconsistent Specifications. In: Proceedings of 3rd International Symposium on Requirements Engineering (RE 1997) (January 1997)Google Scholar
  16. 16.
    Jackson, J.: A Keyphrase Based Traceability Scheme. In: IEE Colloquium on Tools and Techniques for Maintaining Traceability During Design, pp. 2-1–2/4 (1991)Google Scholar
  17. 17.
    Khriss, I., Elkoutbi, M., Keller, R.: Automating the Synthesis of UML Statechart Diagrams from Multiple Collaboration Diagrams. In: Proceedings for the Conference of the Unified Modeling Language, June 1998, pp. 132–147 (1998)Google Scholar
  18. 18.
    Koskimies, K., Systä, T., Tuomi, J., Männistö, T.: Automated Support for Modelling OO Software. IEEE Software, 87–94 (1998)Google Scholar
  19. 19.
    Lerner, B.S., Sutton, S.M., Osterweil, L.J.: Enhancing Design Methods to Support Real Design Processes. In: IWSSD-9 (April 1998)Google Scholar
  20. 20.
    Liu, J., Traynor, O., Krieg-Bruckner, B.: Knowledge-Based Tranformational Programming. In: 4th International Conference on Software Engineering and Knowledge Engineering (1992)Google Scholar
  21. 21.
    Moriconi, M., Qian, X., Riemenschneider, R.A.: Correct Architecture Refinement. IEEE Transactions on Software Engineering 21(4), 356–372 (1995)CrossRefGoogle Scholar
  22. 22.
    Partsch, H., Steinbruggen, R.: Program Transformation Systems. ACM Computing Surveys 15(3), 199–236 (1983)CrossRefMathSciNetGoogle Scholar
  23. 23.
    Perry, D.E.: Issues in Process Architecture. In: 9th International Software Process Workshop, Airlie, VA (October 1994)Google Scholar
  24. 24.
    Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Addison Wesley, Reading (1999)Google Scholar
  25. 25.
    Van Der Straeten, R., Mens, T., Simmonds, J., Jonckers, V.: Using Description Logic to Maintain Consistency between UML Models. In: Proceedings of 6th International Conference on the Unified Modeling Language, San Francisco, USA, pp. 326–340 (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Alexander Egyed
    • 1
  1. 1.Teknowledge CorporationMarina Del ReyUSA

Personalised recommendations