Reasoning on UML class diagrams

Abstract

UML is the de-facto standard formalism for software design and analysis. To support the design of large-scale industrial applications, sophisticated CASE tools are available on the market, that provide a user-friendly environment for editing, storing, and accessing multiple UML diagrams. It would be highly desirable to equip such CASE tools with automated reasoning capabilities, such as those studied in Artificial Intelligence and, in particular, in Knowledge Representation and Reasoning. Such capabilities would allow to automatically detect relevant formal properties of UML diagrams, such as inconsistencies or redundancies. With regard to this issue, we consider UML class diagrams, which are one of the most important components of UML, and we address the problem of reasoning on such diagrams. We resort to several results developed in the field of Knowledge Representation and Reasoning, regarding Description Logics (DLs), a family of logics that admit decidable reasoning procedures. Our first contribution is to show that reasoning on UML class diagrams is EXPTIMEhard, even under restrictive assumptions; we prove this result by showing a polynomial reduction from reasoning in DLs. The second contribution consists in establishing EXPTIME-membership of reasoning on UML class diagrams, provided that the use of arbitrary OCL (first-order) constraints is disallowed. We get this result by using DLRifd , a very expressive EXPTIME-decidable DL that has been developed to capture typical features of conceptual and object-oriented data models. The last contribution has a more practical flavor, and consists in a polynomial encoding of UML class diagrams in the DL ALCQI, which essentially is the most expressive DL supported by current state-of-the-art DL-based reasoning systems. Though less expressive than DLRifd , the DL ALCQI * Corresponding author. E-mail address: berardi@dis.uniroma1.it (D. Berardi). 0004-3702/$ – see front matter  2005 Elsevier B.V. All rights reserved. doi:10.1016/j.artint.2005.05.003 D. Berardi et al. / Artificial Intelligence 168 (2005) 70–118 71 preserves enough semantics to keep reasoning about UML class diagrams sound and complete. Exploiting such an encoding, one can use current DL-based reasoning systems as core reasoning engines for a next generation of CASE tools, that are equipped with reasoning capabilities on UML class diagrams.  2005 Elsevier B.V. All rights reserved.

DOI: 10.1016/j.artint.2005.05.003

Extracted Key Phrases

23 Figures and Tables

0204060'04'06'08'10'12'14'16
Citations per Year

481 Citations

Semantic Scholar estimates that this publication has 481 citations based on the available data.

See our FAQ for additional information.

Cite this paper

@article{Berardi2005ReasoningOU, title={Reasoning on UML class diagrams}, author={Daniela Berardi and Diego Calvanese and Giuseppe De Giacomo}, journal={Artif. Intell.}, year={2005}, volume={168}, pages={70-118} }