Removing Redundancies and Deducing Equivalences in UML Class Diagrams

  • Azzam Maraee
  • Mira Balaban
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8767)


The emerging Model-driven Engineering approach puts models at the heart of the software development process. The Class Diagram language is central within the UML. Automated support for class diagrams involves identification and repair of correctness and quality problems.

This paper presents methods and rules for improving class diagram quality. The paper introduces formal semantics for class diagrams, which distinguishes between existential to universal constraints, and defines redundancy of existential constraints. It provides and analyzes algorithms for removing redundancy of multiplicity and generalization-set constraints in class diagrams with class hierarchy, qualifier, association class, aggregation/composition, and inter-association constraints, and presents inference rules for deducing element equivalence. All methods are under implementation in the FiniteSatUSE tool.


Inference Rule Class Diagram Object Constraint Language Association Class Legal Instance 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Costal, D., Gómez, C.: On the use of Association Redefinition in UML Class Diagrams. In: Embley, D.W., Olivé, A., Ram, S. (eds.) ER 2006. LNCS, vol. 4215, pp. 513–527. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  2. 2.
    Feinerer, I., Salzer, G., Sisel, T.: Reducing Multiplicities in Class Diagrams. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 379–393. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  3. 3.
    Balaban, M., Maraee, A.: Finite Satisfiability of UML Class Diagrams with Constrained Class Hierarchy. ACM Transactions on Software Engineering and Methodology (TOSEM) 22(24), 1–24 (2013)CrossRefGoogle Scholar
  4. 4.
    Maraee, A., Balaban, M.: Inter-association Constraints in UML2: Comparative Analysis, Usage Recommendations, and Modeling Guidelines. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds.) MODELS 2012. LNCS, vol. 7590, pp. 302–318. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  5. 5.
    Feinerer, I., Salzer, G.: Numeric Semantics of Class Diagrams with Multiplicity and Uniqueness Constraints. Software and Systems Modeling, SoSyM (2013)Google Scholar
  6. 6.
    Balaban, M., Maraee, A.: Simplification and Correctness of UML Class Diagrams – Focusing on Multiplicity and Aggregation/Composition Constraints. In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 454–470. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  7. 7.
    OMG: UML 2.4 Superstructure Specification. Specification Version 2.4.1, Object Management Group (2011)Google Scholar
  8. 8.
    Kleppe, A., Rensink, A.: On a Graph-Based Semantics for UML Class and Object Diagrams. In: Ermel, C., Lara, J.D., Heckel, R. (eds.) Graph Transformation and Visual Modelling Techniques. Electronic Communications of the EASST, vol. 10, EASST (2008)Google Scholar
  9. 9.
    OMG: OMG Object Constraint Language (OCL). Specification Version 2.3.1, Object Management Group (2012)Google Scholar
  10. 10.
    Warmer, J., Kleppe, A.: The Object Constraint Language: Getting Your Models Ready for MDA. Addison-Wesley Longman Publishing Co., Inc. (2003)Google Scholar
  11. 11.
    Balaban, M., Maraee, A.: UML Class Diagram Semantics (2014),
  12. 12.
    Rosati, R.: Finite Model Reasoning in DL-Lite. In: Bechhofer, S., Hauswirth, M., Hoffmann, J., Koubarakis, M. (eds.) ESWC 2008. LNCS, vol. 5021, pp. 215–229. Springer, Heidelberg (2008)Google Scholar
  13. 13.
    Berardi, D., Calvanese, D., Giacomo, D.: Reasoning on UML Class Diagrams. Artificial Intelligence 168, 70–118 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Queralt, A., Teniente, E.: Verification and Validation of UML Conceptual Schemas with OCL Constraints. ACM Transactions on Software Engineering and Methodology (TOSEM) 21, 13:1–13:41 (2012)Google Scholar
  15. 15.
    Kaneiwa, K., Satoh, K.: On the Complexities of Consistency Checking for Restricted UML Class Diagrams. Theor. Comput. Sci. 411, 301–323 (2010)MathSciNetCrossRefzbMATHGoogle Scholar
  16. 16.
    Lenzerini, M., Nobili, P.: On the Satisfiability of Dependency Constraints in Entity-Relationship Schemata. Information Systems 15, 453–461 (1990)CrossRefGoogle Scholar
  17. 17.
    Thalheim, B.: Entity Relationship Modeling, Foundation of Database Technology. Springer (2000)Google Scholar
  18. 18.
    Calvanese, D., Lenzerini, M.: On the Interaction between ISA and Cardinality Constraints. In: The 10th IEEE Int. Conf. on Data Engineering (1994)Google Scholar
  19. 19.
    Hartmann, S.: Coping with Inconsistent Constraint Specifications. In: Kunii, H.S., Jajodia, S., Sølvberg, A. (eds.) ER 2001. LNCS, vol. 2224, pp. 241–255. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  20. 20.
    Boufares, F., Bennaceur, H.: Consistency Problems in ER-schemas for Database Systems. Information Sciences, 263–274 (2004)Google Scholar
  21. 21.
    Shaikh, A., Clarisó, R., Wiil, U., Memon, N.: Verification-driven Slicing of UML/OCL Models. In: Proceedings of the IEEE/ACM International Conference on Automated Software Engineering, pp. 185–194. ACM (2010)Google Scholar
  22. 22.
    Maraee, A.: UML Class Diagrams–Semantics, Correctness and Quality. PhD thesis, Ben Gurion University of the Negev (2012)Google Scholar
  23. 23.
    Alanen, M., Porres, I.: A Metamodeling Language Supporting Subset and Union Properties. Software and Systems Modeling 7, 103–124 (2008)CrossRefGoogle Scholar
  24. 24.
    Szlenk, M.: UML Static Models in Formal Approach. In: Meyer, B., Nawrocki, J.R., Walter, B. (eds.) CEE-SET 2007. LNCS, vol. 5082, pp. 129–142. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  25. 25.
    Calì, A., Gottlob, G., Orsi, G., Pieris, A.: Querying UML Class Diagrams. In: Birkedal, L. (ed.) FOSSACS 2012. LNCS, vol. 7213, pp. 1–25. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  26. 26.
    Balaban, M., Maraee, A., Sturm, A., Jelnov, P.: A Pattern-Based Approach for Improving Model Design Quality. Software and Systems Modeling (SoSyM), 1–29 (2014)Google Scholar
  27. 27.
    BGU Modeling Group: UML Class Diagram Patterns, Anti-Patterns and Inference Rules (2014),
  28. 28.
    Hartmann, S.: On the Implication Problem for Cardinality Constraints and Functional Dependencies. Annals of Mathematics and Artificial Intelligence 33, 253–307 (2001)MathSciNetCrossRefGoogle Scholar
  29. 29.
    BGU Modeling Group: FiniteSatUSE – A Class Diagram Correctness Tool (2011),
  30. 30.
    Maraee, A., Makarenkov, V., Balaban, B.: Efficient Recognition and Detection of Finite Satisfiability Problems in UML Class Diagrams: Handling Constrained Generalization Sets, Qualifiers and Association Class Constraints. In: MCCM 2008 (2008)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Azzam Maraee
    • 1
    • 2
  • Mira Balaban
    • 1
  1. 1.Computer Science DepartmentBen-Gurion University of the NegevIsrael
  2. 2.Deutsche Telekom LaboratoriesBen-Gurion University of the NegevIsrael

Personalised recommendations