UML: The Unified Modeling Language

In the early 1990s, there were 3 competing methods proposed to support object-oriented development. These methods were based on work by Booch (Booch, 1994), Rumbaugh (Rumbaugh, 1991) and Jacobsen (Jacobsen,1993). The different  approaches had much in common and they were unified in the 1990s to create the Unified Modeling Language (UML) and the associated Unified Design Process (Rumbaugh, Blaha, Premerlani, Eddy and Lorensen, 1991)(Booch, Rumbaugh and Jacobson, 1999, Rumbaugh, Jacobson and Booch, 1999a, Rumbaugh, Jacobson and Booch, 1999b).

Since then, the UML has emerged as the standard notation for object-oriented modelling and design. UML 2 – an extension of the original UML – includes 13 different diagram types which allow the static and dynamic modelling of software. Essentially, there are three perspectives that can be represented in the UML

  1. A requirements perspective based on use-case diagrams.
  2. A static perspective, based on object and composite structure diagrams.
  3. A dynamic perspective, based on sequence and state diagrams.

For a more detailed overview, including a discussion of UML deficiencies, see the Wikipedia article on the Unified Modelling Language.


Booch, G. (1994). Object-oriented Analysis and Design with Applications. Redwood City, Ca.: Benjamin Cummings.

Booch, G., Rumbaugh, J. and Jacobsen, I. (1999). The Unified Modeling Language User Guide. Reading, Mass.: Addison-Wesley.

Jacobsen, I., Christerson, M., Jonsson, P. and Overgaard, G. (1993). Object-Oriented Software Engineering. Wokingham.: Addison-Wesley.

Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F. and Lorensen, W. (1991). Object-oriented Modeling and Design. Englewood Cliffs, N.J.: Prentice-Hall.

Rumbaugh, J., Jacobsen, I. and Booch, G. (1999a). The Unified Modelling Language Reference Manual. Reading, Mass.: Addison-Wesley.

Rumbaugh, J., Jacobsen, I. and Booch, G. (1999b). The Unified Software Development Process. Reading, Mass.: Addison-Wesley.