MDA Radar

Issue #6 [March 27-April 02, 2006]

MDA Tools Comparison Matrix: A Guided Tool Adoption Roadmap for MDA Adopters

In the editions of MDA Radar so far, we focused on the different MDA tools out there, provided a fair amount of intersectional views about their capabilities, features and weaknesses. This week we will try to summarize our findings about these tools and provide a clearer picture about the tool aspects of MDA. This discussion will also help facilitate your MDA tool adoption decisions and strategies. Tool vendors will also be able to get the right directions about their next release plan. Irrespective of the tools, the main objective of this week’s discussion is to understand the MDA tool market and help every enterprise architectural decision maker perfect their strategy MORE (Model Once Reuse Elsewhere) successfully.

MDA is built on top of four important foundation layers known as Common Information Model (CIM), Platform Independent Model (PIM) and Platform-Specific Model (PSM), and platform-specific source code. For a better overview on MDA layers and metamodel please refer to the JAX Magazine article titled “Weaving the Ultimate Enterprise Architecture with Aspect Oriented Design” where MDA is explained from an architectural point of view. In an MDA-based implementation scenario, conversion from one particular type of model to another type of model happens through meta-model based transformation such as CIM to PIM, PIM to PSM, and so on. On the other hand, marking a model, in OMG MDA terminology, indicates a tagging mechanism. As a part of model marking, tool vendors provide extra information that is helpful during automated model transformation situations.

The following diagram shows five key features of the MDA specification:





Figure 1: Five Main Points to Make MORE out of MDA

The main objective of MDA is Model Once Reuse Elsewhere (MORE), which places emphasis on generation of reusable model assets. Therefore inter layer model transformation is very important in MDA. In our next few sections we will elaborate our findings from different tools investigated through the last few editions of MDA Radar.

MDA Commercial Tools Horoscope

The last few edition of MDA Radar focused on MDA tools classification, tools study and analysis of the same, whereas this week is the time to revisit those useful tools to understand the current industry situation around the MDA world. Our radar has generated the following horoscope to provide a very clear visual picture of these different MDA tools, cover different important areas of the MDA specification, and to understand the MDA tool roadmap:





Figure 2: MDA Tools Horoscope -- 12 Feature Analysis

This chart demonstrates the different strength and weaknesses of available tools. It also identifies those areas that need more attention from a tool vendor point of view.

Weakness in Horoscope Chart

From the above figure, it is clear that we still have to go some way before we can achieve all of the benefits of MDA as proposed by OMG. A few important conclusions:

  • All tools have their own strength and weak areas in terms of the MDA specification
  • CIM, MOF and QVT are most important areas tool vendors need to look at
  • Marking is another feature with weak support and that which will benefit from further improvement
  • Version Control and Traceability are also very important features that need to be truly supported by all tool vendors
Other than the OMG specification, the success of MDA tools also depends on a few other important features that are mostly missing in current versions of these tools:

  • Model Merging facility.
  • Model inheritance.
  • Pervasive services.
  • Domain modeling and domain derivation techniques (This is a very important aspect for enterprise success). Most of the enterprises are still not convinced about the benefits of MDA, and this feature will definitely help to convince the benefits of modeling reuse. We will discuss this particular aspect in the ‘Model Driven Enterprise Architecture’ series of MDA Radar (coming soon)
  • MDA tools documentation is also weak, which is another reason for the confusion about MDA and the benefits it can offer. From the various tool vendor documentations it is evident that MDA is being treated as just another model driven approach. This particular aspect of tool vendors’ propaganda, documentation and tutorials are another reason to convince most of the people that UML tools are MDA tools.
  • All of this tool vendor documentation must accompany few CIM to PSM to Code level end-to-end MDA example scenarios.

UML Support from MDA Tool Vendors

UML is the de-facto modeling language in the industry. All of these MDA tools provide excellent quality MDA support. The following table briefly summarizes the UML version and the XMI support currently available:

UML Support from MDA Tool Vendors

UML is the de-facto modeling language in the industry. All of these MDA tools provide excellent quality MDA support. The following table briefly summarizes the UML version and the XMI support currently available:





Impressive Features from Tool Vendors

Different tool vendors have added few notable features with their tools, which are very useful for the enterprise. Few of them are listed in this table:





Helping Hand: Open Source Community and Commercial Support

So far we have discussed a few of the available commercial tools and their respective features. We have also identified different levels of progress in terms of tool maturity. However, one notable commonality among these tools is that they are mostly lacking a few important features in their tools such as Model Reusability, Tool / Model Extensibility and Model Maintainability / Traceability. Now, if we look at different open source (and one particular commercial tool) tools, most interestingly they complement those gaps. The following diagram will give us clear picture of the type of tools/architectures available in the market that can come to our rescue:





Figure 3: MDA Tool Development

It is true that those tools need to be a tad more mature from their current version, however they have really captured the nucleus of MDA ideas and are marching at the speed of anniversary parade soldiers. With the help of all these tools collaboration, we must be able to see MORE of the spring.

Conclusion

MDA is really a gentle breeze, wafting like the smell of spring in a marketplace. However, the weatherman has warned us about sunny intervals. Since the ancient time, people are predicting weather without tools; the guy has shown us how to escape Alcatraz without any high-end tool. But now in this age of “The Rock”, tools are our best friends to ensure our fitness in the war of ‘survival of the fittest’. MDA is a great, long waited dawn of the spring for those model lovers, those practitioners who are always capturing the best practice concepts in their daily life. However, we need the real help from tool vendors to make “Mission Impossible” to “Mission Impossible-2” with the “Speed” of “Contact”. We don’t want any more “Titanic” sinking in the sea. We want “A beautiful mind” to create “The aviator”. We don’t need the designed model as “The Mask of Zorro”, no MORE “True Lies”, and no MORE “Secret Window”. We need “The Specialist” tool to make our “Land of Dreams”. All of the MDA tool vendors are continuously aiming to reduce the MDA driven process complexities and increasingly perpetuating best modeling practices. Tool vendors are evolving very fast to address all other missing MDA issues. The software modeling industry will get the biggest shot in the arm when MDA tools and their modeling roadmaps realize their sync, with all models saying “Shall we Dance”?