The Coad Letter: Modeling and Design, Issue 113, The Latest Status of Version 2 of the UML, by Granville Miller

By: Coad Letter Modeling Editor

Abstract: Here is an update of when you can expect to see the UML 2.0 specifications and some ideas on how you can get your first glimpse.

The second version of the Unified Modeling Language (UML) specification is now slated to become available in April of 2004. The Finalization Task Force has been working very hard to iron out any existing problems in preparation of this release date. For those of you who are not currently OMG members, but would like to grab a look at the latest version of the UML, worry not. We will show you how to get a hold of materials that will help you learn the nuances of this new version of the standard in modeling languages.

At this time, there is an exciting new certification program for UML expertise being rolled out. Testing for UML certification will be similar to the way that the industry certifies other types of software technology such as Java. It wont be easy, but a passing grade on three 2-hour tests could make you officially UML certified. Finally, UML 2.0 defines conformance to ensure that tools claiming UML compliance really support all of the constructs that they should. In addition to certifying people, the OMG has developed the criteria by which your favorite tools can be certified as well.

Issues with UML 2.0

As tool vendors race to implement the latest version of the Unified Modeling Language, they are discovering some of the difficulties in the latest specification. UML 2.0 represents a major overhaul in the underlying infrastructure behind the language. One of the basic elements of this infrastructure is package merge. Merge allows new packages to extend another package by merging their contents. Merging packages can cause the model files to become fairly large. It makes the definition of the UML elegant, but it may not be the best thing for scalability of real-world models.

The second issue relates to the flexibility of the Unified Modeling Language [Rubinstein]. The current UML conformance scheme is viewed as being too flexible. There are thirty-eight different sections and four different options for each section. Yet, only one of the thirty-eight is necessary to declare UML 2.0 conformance. This conformance mechanism is currently viewed as too flexible and so it is probably going to change. Even so, it is important to understand the current thinking on this area, and so we include a discussion in the next section even though we recognize that change is in the air.

Finally, there is the difficulty of coordinating the finalization among three independent specs, each with its own independent finalization task force [Frank]. The kernel of each of the three specs (Infrastructure, Superstructure, and MOF Core) is shared. As one committee finds problems in the shared part, the changes must be shared with the others. This has been equivalent to the problems that a development organization sees when woriking on multiple, parallel development streams.

UML Conformance

Earlier versions of the Unified Modeling Language standard did not describe what it meant to support the standard. As a result, each of the UML tool vendors was free to take a certain amount of artistic license with the features that they supported. In some cases, this was good as many of the vendors were able to evolve the uses of modeling. However, interchanging models from one tool to another was often extremely difficult. Since the levels of implementation were often uneven, transferred models often lost something in the translation.

This new version defines thirty-eight compliance points. A compliance point is an area of the Unified Modeling Language such as Use Cases. All UML 2.0 implementations are required to implement a single compliance point, the Kernel. The other thirty-seven compliance points (including Use Cases) are currently optional. However, by looking at these compliance points for your favorite UML modeling tool, you will get a complete understanding which model elements are supported and to what degree.

For each compliance point, there are four compliance options. A compliance option determines how compliant a given implementation is. The four options are:

  • No compliance  the implementation does not comply with the syntax, rules, and notation for a given compliance point
  • Partial compliance - the implementation partially complies with the syntax, rules, and notation for a given compliance point
  • Compliant compliance - the implementation fully complies with the syntax, rules, and notation for a given compliance point
  • Interchange compliance - the implementation fully complies with the syntax, rules, notation, and XMI schema for a given compliance point

These thirty-eight compliance points make up three compliance levels: Basic (level 1), Intermediate (level 2), Complete (level 3). Implementation of the first ten compliance points is necessary for Basic compliance. The first ten and the next fifteen compliance points are necessary for Intermediate compliance. All of the compliance points are necessary for Complete compliance. In other words, Class diagrams, Activity diagrams, Interaction diagrams, and Use Case diagrams are necessary for basic compliance. State diagrams, Profiles, Component diagrams, and Deployment diagrams make up the intermediate level. Actions and a whole lot of advanced features make up the remainder of the material necessary for complete compliance.

UML Certification

The Object Management Group plans to begin UML 2.0 certification as soon as the specifications (Infrastructure and Superstructure) become available. There will be three tests: beginning, intermediate, and advanced. Each one lasts two hours and the tests get progressively more difficult as you might expect. Beta tests have already been administered to 50 lucky guinea pigs (beta testers). To obtain certification, you must pass all three. These tests will be available early next year at a local testing center near you.

Learning More About UML 2.0

The third edition of UML Distilled is the first book on UML 2.0. Although this book is an excellant place to start, it does not give a complete explanation of all of the new features. The new composite structures, timing diagrams, frames, required and provided interfaces, and actions are all explained in this new edition of the leading book on UML. Reading UML Distilled wont enable you to pass the advanced test of the UML certification, but it sure will jump start the learning process. It won't be long before son new books become available that will paint the complete picture.

Finally, we will continue to provide the popular Whats New in UML 2 series. Look for new versions of this series in the forth quarter as well as a full UML 2.0 whitepaper available on the Borland website.

References

Adhikari, Richard. Is UML heading for fragmentation?, Application Development Trends

Fowler, Martin. UML Distilled: Third Edition, Addison Wesley, 2004.

Frank, Karl. Private communications.

Miller, Granville. The Coad Letter: Modeling and Design, Issue 110, Announcing UML 2.0.

Rubinstein, David. Problems arise During UML 2.0 Finalization: Lack of clarity, inability to implement spec cited as obstacles to early adoption, SDTimes, September 15th 2003.


Server Response from: ETNASC02