UML™ Resource Page

[ Introduction to UML ]  [ UML Success Stories ] [ UML Certification Program ]


Getting Started with UML:

The Unified Modeling Language - UML - is OMG's most-used specification, and the way the world models not only application structure, behavior, and architecture, but also business process and data structure.  

UML, along with the Meta Object Facility (MOF), also provides a key foundation for OMG's Model-Driven Architecture®, which unifies every step of development and integration from business modeling, through architectural and application modeling, to development, deployment, maintenance, and evolution. 

OMG is a not-for-profit computer industry specifications consortium; our members define and maintain the UML specification which we publish in the series of documents linked on this page for your free download. Software providers of every kind build tools that conform to these specifications. To model in UML, you'll have to obtain a compliant modeling tool from one of these providers and learn how to use it. The links at the bottom of this page will help you do that. 

If you're new to modeling and UML, start with our own Introduction to UML, here, and possibly this piece on the benefits of modeling to your application development cycle

What's on this page? Lots of links to:

If you're a modeler, especially if you're just starting out, you will probably find the specifications themselves a bit hard to read. Keep in mind that they're the formal definition of the modeling language itself, and not an instruction book on "How to Model Using UML". To learn about modeling, start with the tutorials linked near the bottom of this page, and follow up with training from one of these OMG member companies, or pick up one of the hundred-plus books on modeling with UML. (Type "UML" into the search bar of your favorite on-line bookstore, or look here.) On the other hand, if your company produces a UML-compliant modeling tool or UML training, these specifications will be your bible so download them and start reading, but check out the caveats two sections down this page if you're going to work with UML 2.0. 

UML 2.0, The Current Official Version:

OMG is currently upgrading all of UML to Version 2.0. It's a large specification, and is being worked in four parts:

Adoption of the UML 2.0 Superstructure is complete - No further technical work is being done; in fact the Superstructure specification has been stable since it took its adopted form in October, 2004. The superstructure defines the six structure diagrams, three behavior diagrams, four interaction diagrams, and the elements that comprise them, and so is the part of the language that you'll encounter in UML 2.0 compliant tools. You can view and download the final, official, UML 2.0 Superstructure specification here

[But, you ask, Why does the UML block on OMG's web page of modeling specifications still list UML 1.5 as the "Current version"? OMG maintains a formal specification library, and the "Current version" always points to a document in this electronic library - that's why final versions of our specs always have the prefix "formal" in their designation, such as formal/2003-03-01 for UML 1.5. The UML 2.0 Superstructure document will go into the library as soon as our editor finishes beating it into shape, but this may take a while since it's over 800 pages long. Until then, we make the final working document publicly available so you don't have to wait to access the details. Since the technology has been adopted by OMG member vote, it's stable and not allowed to change - the editing may change formatting and fix grammatical errors, but that's about the limit of what can happen without raising an official issue and running it through OMG's specification maintenance process.]

Adoption of the other three parts of UML 2.0 is nearly complete. These parts are:

  • UML 2.0 Infrastructure: The infrastructure defines base classes that form the foundation not only for the UML 2.0 superstructure, but also for MOF 2.0. 
  • UML 2.0 Object Constraint Language (OCL): This allows setting of pre- and post-conditions, invariants, and other conditions. 
  • UML 2.0 Diagram Interchange: This specification extends the UML metamodel with a supplementary package for graph-oriented information, allowing models to be exchanged or stored/retrieved and then displayed as they were originally. 

Everyone can download preliminary versions of these three specifications here. If you're an OMG member, you should check the password-protected document list for more recent versions. If you're not, you'll have to wait until the Available Specification is voted through and posted in mid-2005, or join OMG to get access now. Nothing major in UML 2.0 has changed during the maintenance work (nor can it, according to OMG's rules), but many aspects have shifted around in various ways. If you're building a UML tool or writing a book or training course based on UML 2.0, it will surely be worth your while to join OMG to gain access to the latest updates and subscribe to the email lists where Finalization Task Force (FTF) members discuss issues and resolutions. Of course if you're writing a training course, you'll want to synchronize it with OMG's UML Professional Certification Program. 

UML 1.5, The Previous Version:

  • OMG's UML 1.5 Specification. UML 1.5, the previous version, still has a market presence as vendors and open-source projects update their code to UML 2.0. In our UML 2.0 Specifications Box, version 1.5 will be labeled "Current" until all four of the 2.0 components have completed their final adoption step. To download the current UML 1.5 specification, follow this link and look down the leftmost column for "latest/past specifications", and move right to "Current Version". Click on "1.5" to access the specification. If you're interested in UML history (or can't fall asleep and want something to read late at night), move your mouse a bit farther to the right and click on "past versions". 

UML Profiles and Related Specifications:

UML Profiles tailor the language to specific areas - some for business modeling; others for particular technologies. All of our standard profiles are available from our Modeling Standards Page. Here's a list with links to each, individually:

And one related specification: 

UML-Related Work in Progress:

For information on the UML-related and other adoptions underway, OMG members can check out this Work in Progress page; non-members should look at this public Work in Progress page where you can click on the "document" links and get the public RFI and RFP documents, at least. OMG Members will be able to click through the listings on this page to the process information pages which are restricted to members only. If youre interested in joining OMG to get access to members-only documents and a vote in our open process, look here for membership information.  

Articles and Information:

Useful Links to UML resources:

General (May Also include tutorials, tools):

If you have, or know of, a link that we should add to these lists, send an email to Dr. Jon Siegel, OMG's Vice President, Technology Transfer at siegel AT omg.org. 

UML Tutorials: 

UML Professional Certification:

OMG's list of UML 2.0 Tools: 

If your company or organization produces or distributes a UML 2.0 tool, send an email to siegel AT omg.org to have it listed on this page. You don't have to be a member of OMG to get on the list. OMG members' links appear in boldface type. There is no "Official Registry" of UML tools, so none of the lists in this or the next section are necessarily complete, but they're all useful! 

Other Lists of UML Tools (1.X and 2.0):

OOA&D Methodologies:

Hit Counter

 

Copyright © 1997-2005 Object Management Group, Inc. All Rights Reserved. For questions about the WEBSITE , please contact webmaster@omg.org For TECHNICAL questions, please contact mailto:webtech@omg.orgThis site is best viewed at 800x600 pixels with Netscape Navigator or Internet Explorer versions 4.0 or later or any browser capable of viewing JavaScript and CSS 2.0 Last UpdatedWednesday, January 19, 2005