White PapersMore >>
Lately, I've come to appreciate the good work that the Object Management Group is doing in our industry. Best known for Common Object Request Broker Architecture (CORBA) and the Unified Modeling Language (UML), OMG is also responsible for other specifications such as the Common Warehouse Metamodel (CWM) and Model Driven Architecture (MDA). Although I've had a few harsh things to say about OMG and its work in the past, I must now recant. The fact is that OMG has developed several leading-edge ideas that I believe we should all adopt immediately.
First and foremost: MDA. The basic idea is that developers will use complex modeling tools to capture platform-independent models (PIMs) that describe the domain requirements and processes. These PIMs will be transformed, via a tool, into platform-specific models (PSMs) that reflect the realities of your environment. These PSMs will in turn be evolved by the modelers and eventually translated, once again with a tool, into your working system. All models are naturally created using UML.
MDA might sound like a rehash of the Integrated Computer-Aided System Engineering (I-CASE) tool vision of the late 1980s, but it's not. First, I-CASE foolishly used logical models that described requirements and physical models to capture your design. Worse yet, I-CASE was based on industry-standard structural techniques that involved rounded rectangles to represent processes and normal rectangles for data entities. Yikes! Luckily, MDA has PIMS, PSMs and the industry-standard UML, which uses ovals to represent use cases and rectangles to represent classes. As you can see, the MDA vision has overcome the obvious deficiencies of the failed I-CASE ideal.
Skeptics may think that the MDA CASE tools available right now don't come close to their promise—or when they do, they're narrowly focused. Luckily, you don't need to find a single CASE tool; instead, you can purchase several tools and integrate them via the OMG's XML model interchange (XMI) approach. Yes, every single tool vendor appears to support its own version of XMI—a pesky loss of information occurs whenever you try a two-way transformation—but I'm sure things will improve soon. Just as vendors decided to cooperate when it came to CORBA ORB integration, I'm sure they'll cooperate in the same manner with XMI tool integration.
Some of you may be worried that you need highly skilled modelers to succeed at MDA. Don't worry about it! MDA CASE tools are really easy to use, so you don't need to know what you're doing. Granted, many CASE tools in the past were nonintuitive and usually hindered more than they helped, but things have changed. The tool vendors now have the MDA marketing logo on their cardboard boxes, so of course, you can trust them! (Better still, creating detailed PSMs is easy now that UML certification is here. All you need to do is study the UML specification a bit, pay a fee, take a multi-guess test, and suddenly you're a certified UML expert—it's that simple.
You might be worried that your project stakeholders won't be able to understand the PIMs that you create. Once again, this shouldn't be a problem. The new MDA tools can generate so much documentation, often in a wide variety of formats, that all you need to do is swamp your users with printouts. Who could possibly find time to review, let alone refuse, a 5,000-page requirements document?
Common Warehouse Magnificence
The second idea whose time has come is CWM. CWM is a specification that describes metadata interchange among data warehousing, business intelligence, knowledge management and portal technologies. Although the CWM has been all but ignored by practitioners, the theory wonks love it, so you know that there must be something to it. Fortunately, OMG is seen as an object technology body within the data community. By building on the goodwill that data professionals have for object developers, OMG can bring a new approach to a mature yet competitive segment of the IT industry.
Thanks, OMG, for keeping your ear to the ground. Your efforts, such as CWM, XMI and MDA, will continue to make this organization the single most revered vendor consortium by developers everywhere.
Yes, in case you haven't already guessed it, this column is, in fact, an April Fools' joke.
Starting on April 1, OMG will allow tool vendors and book publishers to include the following logos in their marketing and technical literature:
UML—Two star. If you also believe that use cases are sufficient to capture all of your system requirements, you're eligible for a second star.
UML—Three star. Anyone with UML two-star status who is also willing to overlook the fact that UML still doesn't include a standard way to model user interfaces, business rules or data schemas. How many business applications actually include those things anyway? Take your third gold star·you've earned it.
XMI—Two star. Any tool vendor with a product that supports the XMI schema in its entirety can show the XMI gold star twice in their marketing literature. Unfortunately, no vendors truly do this; instead, they implement subsets of XMI.
XMI—Three star. Any two-star XMI vendor earns their third gold star (yippee!) if their tool can export to any other tool and then import back from that tool after updates without any loss of information. This appears to be an unattainable fantasy—the vendors will never cooperate to that degree·but let's pretend that XMI is viable anyway.
Also, for a limited time only, standards wonks are permitted to get OMG gold-star tattoos. To qualify for a tattoo, you must download the corresponding specification and read it in its entirety without falling asleep.
Senior Contributing Editor Scott W. Ambler is author of the Productivity
Agile Database Techniques (Wiley, 2003).