- UML (Unified Modeling Language) is a standard notation for the modeling of real-world objects as a first step in developing an object-oriented design methodology. Its notation is derived from and unifies the notations of three object-oriented design and analysis methodologies: - Grady Booch's methodology for describing a set of objects and their relationships
- James Rumbaugh's Object-Modeling Technique (OMT)
- Ivar Jacobson's approach which includes a use case methodology
Other ideas also contributed to UML, which was the result of a work effort by Booch, Rumbaugh, Jacobson, and others to combine their ideas, working under the sponsorship of Rational Software. UML has been fostered and now is an accepted standard of the Object Management Group (OMG), which is also the home of Common Object Request Broker Architecture (CORBA), the leading industry standard for distributed object programming. Vendors of computer-aided software engineering (CASE) products are now supporting UML and it has been endorsed by almost every maker of software development products , including IBM and Microsoft (for its Visual Basic environment).Martin Fowler, in his book UML Distilled, observes that, although UML is a notation system enabling people to communicate about a model, it is developed from methodologies that also describe the processes in developing and using the model. While there is no one accepted process, the contributors to UML all describe somewhat similar approaches and these are usually described along with tutorials about UML itself. Among the concepts of modeling that UML specifies how to describe are: class (of objects), object, association, responsibility, activity, interface, use case, package, sequence, collaboration, and state. Fowler's book provides a good introduction to UML. Booch, Rumbaugh, and Jacobson all have or soon will have published the "offficial" set of books on UML.
 |
Learn more about Software development fundamentals |
| CONTRIBUTORS: |
Alex Shnitman |
| LAST UPDATED: |
15 Feb 2007
|
 |
Do you have something to add to this definition? Let us know.
Send your comments to techterms@whatis.com
|

 |
More resources from around the web:
|


');
// -->


 |
 |
|  |
RELATED GLOSSARY TERMS
| Terms from Whatis.com − the technology online dictionary |
 |
build tool
(SearchSoftwareQuality.com)
A build tool is a programming utility that automates a software build task, such as ensuring that the proper source code files are compiled and that...
|
 |
development environment
(SearchSoftwareQuality.com)
In computer program and software product development, the development environment is the set of processes and programming tools used to create the...
|
|

|