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:
|