<- Virtual Exhibitions in Informatics

Unified Modeling Language - UML

Since the first object-oriented programming language, Simula67, object-oriented programming develops as the dominant programming methodology, especially during the mid-1980s.

Object-oriented programming leads to software design methods such as the use of design patterns and modeling languages. So between 1989 and 1994 there exist more than 50 different object-oriented modeling methods.

In 1994 Grady Booch and Jim Rumbaugh of Rational Software Corporation start their work to unify the Booch and Object Modeling Technique (OMT) methods. So they develop the predecessor of UML and call it Unified Method 0.8.

In the Fall of 1995, Ivar Jacobson and his Objectory company join Rational and the unification effort, merging in the Object-Oriented Software Engineering (OOSE) method. Booch, Rumbaugh, and Jacobson are motivated to create a unified modeling language for three reasons:

  1. Booch, OMT and OOSE are already evolving toward each other independently. So it is very meaningful to continue evolution together rather than apart.
  2. the unification of the semantics and notation brings much more stability to the area of object-oriented modeling languages.
  3. Booch, Jacobson and Rumbaugh expect that their collaboration will  improve all three earlier methods and will help to address problems that none of their methods can handle very well.

Figure 1. Influences on UML.

They work on the development of UML and in 1996 UML version 0.91 is published. In September 1997 UML 1.1 is published and on 17. November 1997 the Unified Modeling Language (UML) becomes an industry standard created under the auspices of the Object Management Group (OMG).

Differences between Entity-Relationship Model and UML

Entity-Relationship concepts are different to object-oriented concepts because with ER concepts behaviour can’t be modelled. There are no operations and messages in ER concepts. Today ER models, that are extended with aggregation and generalization, are also called semantic data models. In difference to Chen notation most nowadays used notations don’t have rhombi to illustrate associations.

In the object-oriented world every object has an unique object identifier which is independent of attribute values. In contrast, the ER model uses keys to identify entities.

More Information

DBMS Interview with Booch, Jacobson and Rumbaugh in 1996

Influences on UML

Introduction to OMG's UML

UML Resource Page

Grady Booch

Ivar Jacobson

James Rumbaugh


Balzert, Helmut: Lehrbuch der Software-Technik, Heidelberg, Berlin: Spektrum, Akad. Verl., Bd. 1. Software-Entwicklung Buch, 2. Auflage, 2000.