Previous | Table of Contents | Next |
The Unified Modeling Language is a visual language for specifying, constructing, and documenting the artifacts of systems.
It is a general-purpose modeling language that can be used with all major object and component methods, and that can be applied
to all application domains (e.g., health, finance, telecom, aerospace) and implementation platforms (e.g., J2EE, .NET).
The OMG adopted the UML 1.1 specification in November 1997. Since then UML Revision Task Forces have produced several minor
revisions, the most recent being the UML 1.4 specification, which was adopted in May 2001.
Under the stewardship of the OMG, the UML has emerged as the software industry’s dominant modeling language. It has been successfully
applied to a wide range of domains, ranging from health and finance to aerospace to e-commerce. As should be expected, its
extensive use has raised numerous application and implementation issues by modelers and vendors. As of the time of this writing
over 500 formal usage and implementation issues have been submitted to the OMG for consideration.
Although many of the issues have been resolved in minor revisions by Revision Task Forces, other issues require major changes
to the language that are outside the scope of an RTF. Consequently, the OMG has issued four complementary and architecturally
aligned RFPs to define UML 2.0: UML 2.0 Infrastructure, UML 2.0 Superstructure, UML 2.0 Object Constraint Language and UML
2.0 Diagram Interchange.
This UML 2.0 specification is organized into two volumes (UML 2.0: Infrastructure and UML 2.0: Superstructure), consistent
with the breakdown of modeling language requirements into two RFPs (UML 2.0 Infrastructure RFP and UML
2.0 Superstructure RFP). Since the two volumes cross-reference each other and the specifications are fully integrated, these
two volumes could easily be combined into a single volume at a later time.
The next two chapters describe the language architecture and the specification approach used to define UML 2.0.