a b s t r a c tAutomatic debugging of UML class diagrams helps in the visual specification of software systems because users cannot detect errors in logical consistency easily. This study focuses on the tractable consistency checking of UML class diagrams. We accurately identify inconsistencies in these diagrams by translating them into first-order predicate logic that is generalized by counting quantifiers and classify their expressivities by eliminating certain components. We introduce optimized algorithms that compute the respective consistencies of class diagrams of different expressive powers in P, NP, PSPACE, or EXPTIME with respect to the size of the class diagrams. In particular, owing to the restrictions imposed on attribute value types, the complexities of consistency checking of class diagrams decrease from EXPTIME to P and PSPACE in two cases: (i) when the class diagrams contain disjointness constraints and overwriting/multiple inheritances and (ii) when the class diagrams contain both these components along with completeness constraints. Additionally, we confirm the existence of a restriction of class diagrams that prevents any logical inconsistency.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.