Checking the consistency of UML class diagrams using larch prover

  • Authors:
  • Pascal André;Annya Romanczuk;Jean-Claude Royer;Aline Vasconcelos

  • Affiliations:
  • IRIN, Université de Nantes, Nantes, France;Ecole des Mines de Nantes, Nantes, France;IRIN, Université de Nantes, Nantes, France;Ecole des Mines de Nantes, Nantes, France

  • Venue:
  • ROOM'00 Proceedings of the 2000 international conference on Rigorous Object-Oriented Methods
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Unified Modeling Language (UML) has been designed to be a full standard notation for Object-Oriented Modelling. UML is a rather complete set of notations, but it lacks of formal semantics. This article introduces formal semantics for UML based on algebraic abstract data types. We currently consider only class and object diagrams. These diagrams include class structures, associations, multiplicities, constraints, instances as well as specialization relationships. We give a formal semantics for each of these elements by interpreting the structure of a class as an abstract data type, associations as values of type Association, and specialization as structural projection. We show that a tool like Larch Prover is able to support proofs over UML diagrams. We use the critical pair computation to find out inconsistencies. Several different inconsistencies of class diagrams are shown on a library example.