Is UML the Best Way to Model a Software Program?

Best is subjective. Generally speaking, UML is the most widely-adopted visual modeling language in the industry and the primary purpose for a visual language is to communicate. UML serves this purpose as it is widely-use and open standard evolving from a large number of methods and approaches. Many people find their best UML software to create great UML diagram.

The goal of UML is to provide a standard notation that can be used by all object-oriented methods and to select and integrate the best elements of precursor notations. UML has been designed for a broad range of applications. Hence, it provides constructs for a broad range of systems and activities (e.g., distributed systems, analysis, system design and deployment).

UML is a notation that resulted from the unification of OMT from
  1. Object Modeling Technique OMT [James Rumbaugh 1991] - was best for analysis and data-intensive information systems.
  2. Booch [Grady Booch 1994] - was excellent for design and implementation. Grady Booch had worked extensively with the Ada language, and had been a major player in the development of Object Oriented techniques for the language. Although the Booch method was strong, the notation was less well received (lots of cloud shapes dominated his models - not very tidy)
  3. OOSE (Object-Oriented Software Engineering [Ivar Jacobson 1992]) - featured a model known as Use Cases. Use Cases are a powerful technique for understanding the behaviour of an entire system (an area where OO has traditionally been weak).
In 1994, Jim Rumbaugh, the creator of OMT, stunned the software world when he left General Electric and joined Grady Booch at Rational Corp. The aim of the partnership was to merge their ideas into a single, unified method (the working title for the method was indeed the "Unified Method").

By 1995, the creator of OOSE, Ivar Jacobson, had also joined Rational, and his ideas (particularly the concept of "Use Cases") were fed into the new Unified Method - now called the Unified Modelling Language1. The team of Rumbaugh, Booch and Jacobson are affectionately known as the "Three Amigos"

UML has also been influenced by other object-oriented notations:
  • Mellor and Shlaer [1998]
  • Coad and Yourdon [1995]
  • Wirfs-Brock [1990]
  • Martin and Odell [1992]
UML also includes new concepts that were not present in other major methods at the time, such as extension mechanisms and a constraint language.

Useful UML Resources

No comments:

Post a Comment