TY - GEN
T1 - Consistency of UML class diagrams with hierarchy constraints
AU - Balaban, Mira
AU - Maraee, Azzam
PY - 2006/1/1
Y1 - 2006/1/1
N2 - UML class diagrams are probably the most important, well-established, UML model. They play an essential role in the analysis and design of complex systems, UML class diagrams allow the specification of constraints such as cardinality constraints, class hierarchy constraints and inter-association constraints. Constraints extend the expressivity of class diagrams, but enable the specification of unsatisfiable class diagrams, i.e., class diagrams that have no finite non-empty instance world. Nowadays, UML case tools still do not check satisfiability of class diagrams, and implementation languages still do not enforce design level constraints. But the expectation is that in the future, and in particular with the prevalence of the Model Driven Engineering approach, all information in a design model will be effective in its successive models. In this paper, we present an algorithm for testing the satisfiability of UML class diagrams that include class hierarchies with "disjoint/over- lapping" and "complete/incomplete" constraints. The algorithm is based on a reduction to a previous algorithm of Lenzerini and Nobili that was applied only to ER-diagrams without class hierarchies. Our algorithm is simple and feasible since it adds in the worst case only a linear amount of entities to the original diagram. It improves over previous elaboration of the Lenzerini and Nobili method that require the addition of an exponential number of new entities to the original diagram. An implementation of our method within a UML case tool is currently under development.
AB - UML class diagrams are probably the most important, well-established, UML model. They play an essential role in the analysis and design of complex systems, UML class diagrams allow the specification of constraints such as cardinality constraints, class hierarchy constraints and inter-association constraints. Constraints extend the expressivity of class diagrams, but enable the specification of unsatisfiable class diagrams, i.e., class diagrams that have no finite non-empty instance world. Nowadays, UML case tools still do not check satisfiability of class diagrams, and implementation languages still do not enforce design level constraints. But the expectation is that in the future, and in particular with the prevalence of the Model Driven Engineering approach, all information in a design model will be effective in its successive models. In this paper, we present an algorithm for testing the satisfiability of UML class diagrams that include class hierarchies with "disjoint/over- lapping" and "complete/incomplete" constraints. The algorithm is based on a reduction to a previous algorithm of Lenzerini and Nobili that was applied only to ER-diagrams without class hierarchies. Our algorithm is simple and feasible since it adds in the worst case only a linear amount of entities to the original diagram. It improves over previous elaboration of the Lenzerini and Nobili method that require the addition of an exponential number of new entities to the original diagram. An implementation of our method within a UML case tool is currently under development.
KW - Cardinality constraints
KW - Class hierarchy constraints
KW - Finite satisfiability
KW - UML class diagram
UR - http://www.scopus.com/inward/record.url?scp=33746995972&partnerID=8YFLogxK
U2 - 10.1007/11780991_7
DO - 10.1007/11780991_7
M3 - Conference contribution
AN - SCOPUS:33746995972
SN - 3540354727
SN - 9783540354727
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 71
EP - 82
BT - Next Generation Information Technologies and Systems - 6th International Conference, NGITS 2006, Proceedings
PB - Springer Verlag
T2 - 6th International Conference on Next Generation Information Technologies and Systems, NGITS 2006
Y2 - 4 July 2006 through 6 July 2006
ER -