4 research outputs found

    Reasoning on UML Class Diagrams is EXPTIME-hard

    No full text
    UML is the de-facto standard formalism for software design and analysis. One of the most important components of UML are class diagrams, which model the information on the domain of interest in terms of objects organized in classes and relationships between them. To support the design of large-scale industrial applications, CASE tools should be equipped with automated reasoning capabilities in order to detect relevant formal properties of UML diagrams, such as inconsistencies or redundancies. However, reasoning on UML class diagrams is fairly complex: in this paper we show that it is EXPTIME-hard

    Konzeptuelle Modellierung mit UML und OWL – Untersuchung der Gemeinsamkeiten und Unterschiede mit Hilfe von Modelltransformationen

    Get PDF
    Heute wird für konzeptuelle Modellierung sowohl die Unified Modeling Language (UML) als auch auch die OWL 2 Web Ontology Language (OWL 2) verwendet. Beide Sprachen entstammen verschiedenen Technologieräumen und setzen unterschiedliche Schwerpunkte. In dieser Arbeit wird untersucht, ob und wie sich konzeptuelle Modelle, die in der einen Sprache geschrieben sind, in konzeptuelle Modelle, die in der anderen Sprache geschrieben sind, überführen lassen. Dadurch würden für ein Modell Verfahren und Software-Werkzeuge beider Technologieräume verfügbar. Für die automatische Transformation wurde – anders als bei bisherigen Arbeiten – eine Herangehensweise gewählt, die von konkreter Syntax bzw. XML-Serialisierung abstrahiert und auf Ebene der Metamodelle von UML und OWL arbeitet. So lässt sich unabhängig von einzelnen Beispielmodellen zeigen, welche Modellelemente transformiert werden können und welche nicht. Für eine Vielzahl von Modellierungskonzepten wird eine formale Beschreibung gegeben und untersucht, wie sich das jeweilige Konzept mit UML bzw. OWL repräsentieren lässt. In den Fällen, in denen die Semantiken der Repräsentationen in beiden Sprachen hinreichend ähnlich sind, um – unter Beibehaltung der Semantik – eine Transformation durchführen zu können, werden die Transformationen ausführlich sowohl als Freitext als auch formal in Form deklarativer QVT-R-Transformationsregeln beschrieben. Da sich diese Regeln nur auf Elemente der Metamodelle beziehen, sind die Transformationen unabhängig von einzelnen Modellen (Instanzen dieser Metamodelle). Dadurch, dass die Transformationen in beide Richtungen vollständig und formal in QVT-R aufgeschrieben vorliegen, lassen sich die Überlegungen nachvollziehen und bei Bedarf schnell an einzelnen Beispielen testen. In dieser vollständigen und formalen Beschreibung unterscheidet sich diese Arbeit von anderen Arbeiten, die solche Beschreibungen nicht oder nur in Fragmenten enthalten. Während sich in UML beschriebene Datenmodelle bis auf wenige Einschränkungen (abstrakte Typen, bestimmte Arten der Generalisierung, Erweiterung durch Stereotypen) relativ gut mit Ontologien darstellen lassen, ist die Transformation allgemeiner OWL-Ontologien in UML-Datenmodelle nicht immer möglich. So stellt z.B. die automatische Klassifizierung von Objekten eine Schwierigkeit dar. Aber selbst in diesen Fällen ist oft eine Transformation möglich, wie bei Kardinalitätsbeschränkungen, die innerhalb von Vererbungsbeziehungen auftreten. Ein Anwendungsbeispiel aus der Praxis der Deutschen Zentralbibliothek für Wirtschaftswissenschaften (ZBW) zeigt, wie gut sich die Transformationsregeln auf konkrete Modelle anwenden lassen und so ohne große Verluste einen Wechsel von einem Technologieraum zum anderen möglich machen

    Reasoning on UML class diagrams

    Get PDF
    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 UNIL 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 EXPTIME-hard, 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 DLR(ifd), a very expressive EXPTIME-decidable DL that has been developed to capture typical features of conceptual and object-oriented data models. ne 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 DLR(ifd), the DL ALC QI 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. (c) 2005 Elsevier B.V. All rights reserved
    corecore