Sunday, March 26, 2006

Forrester Research Claims MDA is DOA!

Our REBUTTAL to a recently published “MDA is DOA, Partly Thanks to SOA” (March 22, 2006 Trends Report), Carl Zetie, an industry analyst at Forrester Research, claimed that Model Driven Architecture (MDA), a set of internationally adopted software standards and best practices from the Object Management Group (OMG), is fatally flawed. He further claimed that MDA is failing to gain any serious foothold in the market, thanks in large part to the recent surge in popularity of Service Oriented Architecture (SOA).

We don’t agree!


Is MDA really DOA?

In our opinion, which includes a couple of decades each of hands-on practice in the enterprise architecture and modeling industry, MDA is not only very much alive, but it is now frequently being used as a major enabler for SOA. And, far from displacing MDA, SOA is actually helping MDA to gain more attention in the marketplace. We are hardly alone in this view and our rebuttal here is to help inform anyone, including Carl, who may not properly understand how SOA and MDA relate to each other.

From a standards viewpoint, MDA is still the major initiative at the OMG, an open 500+ member international consortium of vendors, consultants and end-users, many of whom are also active in the SOA community. At the OMG, member-run MDA-related activities are growing leaps and bounds, and SOA is as hot a topic there as it is everywhere else in the industry. The top technologists of major organizations actually volunteer their time and talents to work on these MDA-related activities, and many of these are also directly active in SOA activities.

In addition to a whole raft of on-going general standards-setting activities surrounding MDA, there are a number of highly focused OMG task forces and special interest groups (SIGs) focusing on particular industries. Current OMG SIGs include Business Enterprise Integration, C4I (the military), Finance, Healthcare, Life Science Research, Manufacturing Technology and Industrial Systems (ManTIS), Software-Based Communications, Space, and Transportation. Each of these SIGs has MDA as a primary standard with which they are developing their further, more specialized standards.

But that’s not all. The OMG also maintains close relationships with a number of other important industry consortia and standards groups, many of whom either endorse or develop their own MDA-and SOA-related standards. These are all listed on the OMG site (http://www.omg.org/news/about/liaison.htm). They include such well-known groups as OASIS, W3C, The Open Group, ISO, DMTF, ISO, HL7, and so on.

Another group of people who would likely dispute Carl’s grim predictions of MDA are the considerable number of software vendors who already have MDA firmly on their product roadmaps, and publicly support it. Many of these are also SOA vendors, including the two mentioned favorably in the report (Borland and Compuware). In all, there are 50+ organizations specifically listed on the OMG website as ‘committed companies’ for MDA, and another 30+ (some overlap) listed as Qualified Service Providers (QSPs) in the OMG’s MDA FastStart program. Remember, these companies volunteer and contribute to be in these publicly available lists. Each QSP even signs a contract with the OMG specifically stating that it will provide professional services to support MDA, and many of these provide SOA-related services as well.

As we speak, all these product and service vendors, who make their living meeting the pressing needs of real end-users, are aggressively integrating MDA standards and best practices into their tools, platforms and professional services offerings. We can also point to any number of case studies, many readily available on the OMG website, demonstrating how MDA is being used successfully to deliver mission-critical solutions in a wide variety of end-user business and IT environments.

Now let’s tackle Carl’s assertion that MDA’s putative demise is somehow ‘partly thanks to SOA’. Carl’s not-so-subtle message is…’SOA good, MDA bad’. But, as we stated above, SOA and MDA are not competitive. In short, MDA is a way of using formal modeling languages, such as BPMN and UML, to concretely improve the entire software lifecycle – from requirements capture through to systems retirement. Meanwhile SOA offers a very effective architectural pattern for designing and implementing loosely-coupled, reusable software services. Properly applied, these two approaches can be highly complementary.

For this very reason, there are already many vendors, consultants and end-users (people who earn their living actually doing this stuff) collaboratively implementing and promoting both MDA and SOA. Carl stated that big-name SOA vendors haven’t been actively participating at OMG forums about MDA, but that’s simply not true. At a recent OMG workshop entitled “SOA, MDA and Web Services”, held in Washington, DC (and dismissively noted in Carl’s report), top technologists from SOA vendors IBM, BEA, Actional (Sonic) and IONA presented, as did representatives from other key industry vendors like Adobe, Borland, and Intel.

Now, this wasn’t a trade show where everyone goes just to get out of the office. It was a three-day highly focused workshop intended to foster continued collaboration between practitioners and standards. Given that nearly 200 of the top technical minds in the SOA and MDA space paid to attend, we believe this is further proof of the budding marriage of MDA & SOA.

We are glad to hear that, while Carl is clearly not an MDA fan, he likes modeling in general, and particularly what he calls ‘pragmatic MDA’. Specifically, he lauds two MDA vendors (Borland and Compuware) for having excellent ‘pragmatic MDA’ products. However, these vendors certainly don’t differentiate themselves in this way, and we aren’t exactly certain what ‘pragmatic MDA’ is since it is not a term of the industry. In any case, these vendors actively market themselves as full supporters of MDA, and contribute heavily to the MDA-related standards activities at the OMG.

In any case, how is the poor consumer supposed to figure out which implementations of MDA are ‘pragmatic’ and which are not? Carl doesn’t really tell us. What he does say is that MDA in general is based on two big ‘myths’:

1. “It’s possible to model systems without regard to implementation details.”
2. “It’s possible to transform systems without human intervention.”

These are indeed ‘myths’, but they are myths about MDA, not myths created or supported by the MDA standard. They are certainly not myths that any responsible members of the MDA community, providers or consumers, actually believes or promotes. However, to help clear up any confusion let’s address these two ‘myths’ directly:

In terms of modeling and implementation details, MDA actually states that the functional aspects of a system—what many people call the business logic—can and should be specified independent of platform-specific details. Once this specification, commonly called the ‘platform independent model’ (PIM), is complete, then a ‘platform specific model’ (PSM) can be developed. The PSM provides the basis for the implementation, whether it is an implementation supporting SOA requirements or any other set of architectural constraints.

During this PIM-to-PSM transformation process, the various elements of the PIM are mapped down (‘transformed’) in a systematic way into appropriate elements of the design target, such as J2EE, .NET, LAMP, or, for that matter, WSDL for SOA. That’s the right time and place to consider implementation details, and few experts would seriously suggest otherwise. There’s neither myth nor magic here—just common sense organized into a formalized framework based on tried-and-true ‘pragmatic’ modeling techniques and supported by industry standards and best practices.

So, what about Carl’s second ‘myth’? Well, unless Carl has never seen a compiler, assembler, interpreter, it’s hard to imagine he really believes his emphatic statement that it is not possible to “transform systems without human intervention”. There are clearly any numbers of transformations in the development of a software system that can [and should] be automated.

To be more charitable, what Carl seems to be trying to say is that it is generally not practical to try to capture every possible specification detail of a system up front in a single formal modeling activity, and then just press a button to ‘automagically’ generate the resulting code. In this respect, we agree with his statements but – sorry again Carl – MDA does not state what he claims it does.

In fact, there is absolutely nothing in MDA that states definitively what part of the process of moving from PIM to PSM, and on to code and deployment, can or should be automated, or which must or should be done by hand. What MDA does say is that if any given transformation rule can be captured in machine-executable format, then that’s a bonus, and it provides a standard way to express and capture that rule. But if that rule can only be practically applied by a skilled human, that’s fine, too.

By the way, although it specifically supports standards like UML and BPMN for modeling, MDA doesn’t even dictate what modeling languages or conventions must be used. MDA just provides a framework to help organize and manage your favorite modeling and model-transformation tools and processes – automated or manual – thereby providing better uniformity and better traceability in either direction.

Based on these two main ‘myths’, Carl goes on to make a number other characterizations of MDA that we simply don’t agree with. For example, despite the fact that there have been a number of recent books and articles devoted to describing various approaches to ‘Agile MDA’, Carl states, without proof or example, that MDA is ‘not agile’. Meanwhile he claims that SOA is ‘often agile’. OK, Carl, if SOA is ‘often agile’, then you can ‘sometimes’ have ‘non-agile’ SOA, right? If so, then SOA is neither agile nor non-agile—it just depends upon how it is applied! That’s true for MDA as well.

Similarly, Carl goes on to assert that MDA is ‘inherently waterfall’ and ‘monolithic’, while SOA is not, etc. etc. In our opinion, such blanket statements are neither true nor particularly useful, in regard to either MDA or SOA. In our experience, neither MDA nor SOA prescribe or proscribe a ‘waterfall’ approach, and neither is inherently ‘agile’ or ‘not agile’, ‘monolithic’ or ‘non-monolithic’. Anything you can say about MDA in these respects, you can pretty much say just as well about SOA. It’s all in how you use the approach.

We were particularly puzzled by Carl’s mention that MDA is bad because ‘does not care about implementation’. In simple terms, MDA says that, when defining business logic (i.e. in a PIM), it just doesn’t make sense to include details about, say, the database schema or network protocol. So, MDA simply advocates adding these details later (i.e. in a PSM), not ignoring them completely, as Carl asserts.

But remember that Carl also claims that MDA is ‘monolithic’. Sorry, but we find it difficult to understand how someone could characterize ANY approach as ‘monolithic’ and, at the same time, claim that the approach ‘does not care about implementation’ – these are obviously contradictory statements. Broad generalities such as these simply serve to obscure any useful point Carl may be trying to make.

To most people in IT, ‘monolithic’ simply means that the functional logic of a system has not been properly decomposed and clearly separated from the associated implementation logic. This typically results in a final deliverable that is both difficult and expensive to maintain, reuse, or integrate with other systems – sometimes described as ‘brittle’. If MDA ‘doesn’t care about implementation’, it certainly can’t be ‘monolithic’ as well. Once again, the real issue is about when and where you need to care about implementation, and when you don’t. In this context, MDA is simply a way of organizing the ‘when’ and ‘where’ into PIMs and PSMs.

Furthermore, as many other industry analysts have already pointed out, it is quite possible to create brittle ‘monolithic’ services deployed using SOA technology, particularly if you don’t properly model those services up front. Such ‘monolithic’ services are just as hard to maintain, reuse, or integrate as conventional ‘monolithic’ applications, even though they have a public interface that has been described in WSDL and available on some kind of SOA-based services bus.

Unfortunately, Carl himself seems to advocate a haphazard, piecemeal approach to implementing SOA. In our experience, the likelihood of this approach succeeding in creating a truly agile infrastructure of reusable services is extremely remote. The more likely result will be ill-defined services reactively bandaged together over time to form yet more brittle, monolithic applications that are based on ‘SOA’ in name only.

Although Carl isn’t the only analyst to advocate doing some kind of ‘incremental’ SOA, he might be the only one who seems to suggest doing so without much upfront planning and, dare we say it, some upfront MDA-style modeling (e.g. implementation independent). True, once such upfront work is done, SOA services can be successfully implemented and deployed incrementally, as driven by the needs of the business.

In MDA terms, once PIMs for a given business domain are reasonably well defined, the associated SOA-based PSMs can be filled in incrementally. Since SOA implementations often leverage legacy systems, MDA-style PIMs can also be leveraged as useful guide for reverse-engineering such systems into SOA-based services, typically one of the first steps undertaken in a successful transition to SOA. Maybe that’s just some more of the ‘pragmatic MDA’ that Carl says he likes. If so, it’s exactly the same kind of MDA that OMG and its supporters have been advocating all along.

In any case, does anyone really believe that someone modeling, say, a banking application (or SOA service) needs to consider whether the software implementation platform is J2EE or .NET at the time at which they are specifying the business rules governing the relationship between two entities such as ‘customer’ and ‘account’? Are the bank’s business analysts wasting their time when, using an MDA approach, they create functional models up front, for example in BPMN, rather than jumping right to SOA implementation details? Should those analysts start by writing WSDL instead?

We don’t think so. In this regard MDA simply reinforces and enhances long-accepted best practices in modeling - that is, the business logic should go first (into a PIM), while the platform details should be added later (into a PSM). By the way, this also helps to ensure that the business logic is actually correct before moving on to detailing the implementation – what a concept! But, once again, this is nothing new, just a way of formalizing what most software development experts have been preaching for more than a decade.

By the way, Carl’s analysis also seems to have forgotten that SOA, which he obviously likes, was created expressly to support the specification of a service and its interface separately from its implementation. That sounds a bit like MDA! In fact, using MDA to help implement SOA makes a lot of sense. For example, you can derive the interface (and WSDL) of a SOA service based on the business logic specifications from an MDA PIM, while deriving the required implementation code (by hand or automagically) from the associated MDA PSM. Both the MDA tools that Carl likes (and many other such tools) actually take this approach.

Why is this good? Because then you are free to make any number of changes to the implementation of a SOA service over time, such as migrating to a federated database, without having to change the public interface used by outside applications and services. You can do this as much as you need too, so long as those changes don’t alter the core business logic originally used to specify that interface. This is truly ‘incremental SOA’ and exactly the approach that allows you construct ‘agile’ services that are not ‘monolithic’. And it’s completely consistent with best practices for both SOA and MDA.

Sadly, we must conclude that it is really most of Carl’s analysis of and advice about both MDA and SOA that is D.O.A., at least in this report. We are sad, because we know that Carl is a respected industry analyst with Forrester, a widely known IT analyst firm with blue chip clientele. And we’re understandably worried, because some of his readers who are not yet really familiar with MDA or SOA might trust his seriously flawed conclusions just enough to decide not to investigate MDA any further at this time, particularly if they are interested in SOA. We believe that would be doing a very serious disservice to the organizations they represent.

We hope that Carl reconsiders his opinions about MDA and paints a more accurate and cogent picture about the relationship between MDA and SOA in his future reports. In the meantime, where can you get the straight skinny on MDA? How about starting with the OMG. Is the OMG biased about MDA? Sure, the OMG invented MDA. However, it’s also a completely open industry consortium, so it doesn’t push only one point of view about MDA. On OMG’s website (http://www.omg.org/) you can find information from a wide variety of sources – vendors, consultants, analysts, real live end-users, and of course the OMG itself. Do these sources all agree about every aspect of MDA? No way! But, in our opinion, they currently provide much better information on this subject than Carl has in his latest report.

-- Mike & Jason

9 Comments:

At 11:21 AM, Blogger Carl Zetie said...

As the author of the report mentioned here, and as you might expect, I disagree with this post. Let's look at it point by point.

1) "MDA is still the major initiative at OMG", and OMG is big. At the risk of sounding rude, so what? Just because an industry body endorses a proposal, that doesn't mean that all 500+ members do. And even if they did, that doesn't automatically make it important to the real world. I'm sorry, but the era in which IT users looked to standards bodies and vendor consortiums for definitive truth has passed. These days, IT users judge would-be standards on their merits, not their provenance. (This is a big part of the rise of open source, by the way.)

Bottom line: MDA is not a standard or a success just because OMG says so.

2) "OMG maintains close relationships with other standards bodies." There's a term that you'll hear vendor marketing people use in private for that kind of thing: "Barney marketing": I love you, you love me, end of story. As above, IT users are no longer automatically impressed by standards bodies' endorsements, and even less by standards bodies endorsements or other standards bodies!

3) "there are 50+ organizations specifically listed on the OMG website as ‘committed companies’ for MDA". Again, nice endorsements -- but as I pointed out in the original report, few if any of these companies are actually delivering MDA (as defined by OMG) products -- not least because of the incomplete definitions. In many cases they saw an opportunity to redefine or clarify their marketing for their existing products and to benefit from hoped-for industry buzz around the MDA term. BUT few (none?) have products that actually do MDA as OMG defines it. And in fact in the MANY conversations I've had with these vendors on this topic, they invariably say something like "no, we don't actually do MDA, we do some modeling and some generation..."

4) "At a recent OMG workshop entitled “SOA, MDA and Web Services”, held in Washington, DC..." I mentioned this workshop in my report. As a flagship event for OMG, MDA and SOA, wouldn't you expect it to be sponsored by leading vendors in either SOA or MDA? Did Microsoft sponsor? No. Did IBM? No. Compuware, Borland, Oracle? No, no, no. If this isn't good evidence that the "heat" around MDA has gone cold, I don't know what it is.

4) Pragmatic MDA: "However, these vendors certainly don’t differentiate themselves in this way, and we aren’t exactly certain what ‘pragmatic MDA’ is since it is not a term of the industry." Really? That's *precisely* how Compuware -- a company both I and the blog's authors mention positively -- differentiate themselves. See for example Jon Kern's "Straight Talk" blog at javacentral.compuware.com. I was at EclipseCon a couple of weeks ago where I enjoyed the session "Agile Application Development with Eclipse and Pragmatic MDA". And SD West had a very good session on the topic too. Perhaps this is another aspect of where we part company: I say that a term is a "term of the industry" if people in the industry use the term (and they do), not if some standards body endorses it as part of the lexicon. And as for the claim that these vendors "market themselves as full supporters of MDA", I defer to Richard Feynman: "Reality must take precedence over public relations, for nature cannot be fooled."

5) The remainder of this very long post goes on to try to refute by critiques of the fundamental pillars of MDA, and rescue MDA by redefining it as, essentially, not that different from the kind of modeling and generation that many of us have been doing for decades. If that's all MDA is, what do we need the OMG for? My critiques are based on quotes taken directly from OMG MDA white papers -- the defence of MDA is typical of apologia for it, but don't appear to be consistent with OMG's own definitions.

The funny thing about talking to people about MDA is that we often end up agreeing on what is useful in development -- but by the time we reach agreement, we are no longer talking about MDA. We are talking about modeling, generation and coding as it has been understood for a couple of decades. And in fact, it seems like that's where the blogs authors end up: in my camp!

For another very insightful critique of the myth of the PIM, see Martin Fowler at http://martinfowler.com/bliki/PlatformIndependentMalapropism.html
and
http://martinfowler.com/bliki/ModelDrivenArchitecture.html
(The latter in turn points to some further thoughtful critiques of MDA).

6) The latter part of the blog goes on to blatantly misrepresent my position on SOA (e.g. that I advocate doing it without much upfront planning). I won't even begin to get into that further here, since this should be about MDA, not Carl Zetie, but its interesting to observe this blog descend into that kind of diversionary tactic.

7) There is a huge difference between separating interface and implementation (good) and separating levels of model. Interface and implementation exist at the same level of abstraction, for one thing! Arguing by (weak) analogy is another warning sign of an argument gone bad.


If you've had the patience to read this far, let me leave you with one more thought: If the authors had a really strong argument they could have refuted my position with a much shorter response. All they had to do was point to an example of a company that has successfully used MDA to build a major IT system faster, cheaper, and better than experience suggest would have been the case without MDA. And when I say "used MDA", I *insist* that they did it fully using MDA as precisely defined by the OMG, with PIMs and PSMs and transformations, in a way that is demonstrably different from modeling, generation and coding that we are all familiar with and use quite happily without the OMG's endorsement. I've seen lots of supposed success stories, but on investigation they turn out not to be MDA in any but a marketing sense.

 
At 5:43 PM, Blogger The Voyant Group said...

One of the first things we noted in Carl’s response is that he continues to sidestep the real issue that drove our initial posting. The issue, of course, is that Carl provides no reasonable analysis to his conclusion that “MDA is DOA”. So, instead of addressing the real point he seems to focus on the individual elements of our rebuttal hoping to pick them off one by one.

Our disagreement with Carl’s report is purely that he, and by inference Forrester Research, claims that Model Driven Architecture is DOA without an apparent iota of proof or defensible rationale. Given the fact that Forrester possesses a well-deserved reputation in the industry as a top-flight analyst firm we find what rationale Carl provides to be wholly lacking in substance and credibility.

So we’re going to provide our responses to Carl’s comments using multiple posts to separate the wheat from the chaff here. This will also enable others to contribute to this ongoing discussion without descending into this same quagmire.

Rather than address ANY of our points, he makes the blanket statement that we are ‘redefining’ MDA, rather than, as we claim, defending it from his gross mischaracterizations. That’s a very convenient way for him to dismiss our deconstruction of his ‘myths’ about MDA, but it doesn’t wash.

It’s not our job in this blog post to prove anything about MDA—it’s his to prove his own assertion that ‘MDA is DOA’. Remember, the burden of proof here is on Carl since he is the one making the assertions. His report didn’t do it and neither has his comments on our rebuttal to that report.

We suspect he has no proof or else why wouldn’t he share it with his audience?

So in summation…we re-read his report and can still find nothing in Carl’s report, his past anti-MDA reports or his comments to our rebuttal to substantiate his claim of the early demise of MDA. There seems to be little basis in fact and even his anecdotal evidence appears to be lacking. And why he claims SOA is the culprit who killed off MDA is truly out of left field. He instead adroitly sidesteps our points refuting the SOA killing bullets in his report by redirecting the topics in his comments. Hopefully this is transparent to his audience as well.

 
At 5:45 PM, Blogger The Voyant Group said...

It is true that just because a standards body, vendor or industry analyst, claims something is good [or not] doesn’t necessarily make it so. Customers are the final arbiters in this, for which we are eternally grateful.

What we attempted to point out in our rebuttal, apparently Carl missed this, is the fact that with over 500 dues paying members, the Object Management Group is more likely than not to represent a reasonable facsimile of that group. Further, the OMG is a member-driven standards body and MDA is one of their primary standards. So it goes that if the MDA standard were useless, as Carl asserts in his original report, then the membership, who are constituents of the industry at large, would change it.

Since that hasn’t happened, or even appears likely to happen, we are at a loss as to why Carl claims MDA has died as opposed to saying something more akin to reality. Something along the lines of MDA adoption is [apparently] taking hold in fits and starts under the guise of Model Driven Development or “Pragmatic” MDA. While this might also generate a response from us, and others, it would be a more pragmatic analysis of the use of the standard and its acceptance in the market.

Carl says, “MDA is not a standard or success just because OMG says so.” This is as true as our claim: Just because Carl Zetie says “MDA is DOA” proves nothing because Carl provides nothint to substantiate his statement.

 
At 5:47 PM, Blogger The Voyant Group said...

No one likes “Barney marketing” and we have to admit we fail to see where this helps Carl’s assertion that MDA is dead. Although his pursuit of these tangents may be entertaining, it doesn’t help make his case any stronger.

For ourselves, we used the relationships OMG has with other standards bodies as another proof point sustaining our claim that MDA is alive and well. These are not simply marketing arrangements as Carl infers, he apparently is equally uninformed on this point. They are relationships designed to augment and promulgate a standard by the other standards bodies implicitly endorsing or explicating using the standard in their own work. Given that this is occurring, it seems to counter Carl’s original assertion.

For Carl to wave off this array of industry standards bodies as apparently irrelevant is a true note of caution to all of his subscribers. These are standards bodies made up of the very same people he infers he represents—IT users—so how can he be so blatantly dismissive of them? However, we digress.

 
At 5:51 PM, Blogger The Voyant Group said...

Carl seems to insist on pointing out that unless someone does [or uses] MDA “as OMG defines it” then it isn’t really MDA, it’s something else. It’s maybe something akin to MDA, such as “pragmatic MDA”, but it is not really MDA itself. Okay, got it?

So I guess it goes that unless you are using UML “as OMG defines it” then it isn’t really UML. If we’re not speaking English the way Webster’s defines it, then it isn’t English. If we aren’t being precise in our discussions, then they aren’t discussions?

I wonder what Carl thinks MDA is “as OMG defines it” compared to what is actually in use out in industry. He painstakingly points out time and again that unless you use MDA “as OMG defines it” then it isn’t MDA. But he fails to identify anything specific to that point!

In other words, Carl, get some facts into the report instead of innuendo. How about if you point out which portions of the MDA standard are, well, substandard and therefore cannot be used “as OMG defines it.” That might result in a very useful and provocative report useful to your constituents or, dare I say, that the industry can use to drive the standard to be more complete.

Then Carl goes on to say that because vendors rode the popularity of the MDA hype but then didn’t actually implement MDA “as OMG defines it” that the standard is bad. Huh? I wonder what color the sky is on his home planet?

We all know that vendors are notorious for grabbing onto the latest attention getting headline or acronym to further their own product goals. Have you heard of SQL, J2EE, CORBA, UML, or SOA? All of these, and more, are constantly blended into the tapestry of marketing woven by vendor marketing groups. ...and this means exactly what as it relates to the usefulness of these standards?

It means nothing. It does not mean the standards above were meaningless or even that they were useful. It simply means that marketing people are not stupid; they are likely to gravitate towards anything designed to get them more eyeballs on the products they offer. Blaming the standard for being used as a putative marketing vehicle seems a little weird to us.

Further inferring that this is positive proof of the failure of MDA is...well...truly bizarre.

 
At 5:53 PM, Blogger The Voyant Group said...

Carl asserts that since no leading vendor sponsored the recent “SOA, MDA and Web Services” workshop in Washington, D.C. that this is a further proof of his point that MDA is a dead standard. He actually claims this to be “good evidence” of this.

[head scratching combined with perplexed looks] eh?

We seriously hope that other industry analysts don’t draw such dire conclusions about an industry standard based on such “good evidence.” The fact that some big name sponsors didn’t sponsor an event doesn’t seem to have much correlation to the viability of the topic of the event. Seems that is more a correlation with the marketing of the event by the event promoters, doesn’t it?

For example, if IBM would have decided at the last minute to underwrite the event it would boggle the mind if Carl immediately issued a retraction to his original report. We sincerely hope that the basis for Carl’s claims about MDA are deeper than that.

But we still can’t seem to find them…

 
At 5:54 PM, Blogger The Voyant Group said...

We happily concede that if someone utters a term it has by that utterance because a term of the art. One of the beauties of English, much less the computer industry. But that wasn’t our point. Probably we are at fault and weren’t clear, so we will try again.

Carl seems to draw a profound distinction between “pragmatic MDA” and MDA “as the OMG defines it”, which we referred to as ‘bad’ MDA. To agree or disagree with that distinction we would expect some guidance in the report on how to tell the difference. But Carl provides none and it is very obviously missing.

Instead he pounds home the point that ‘MDA is dead’ and ‘long live pragmatic MDA.’ (Oh, God, here comes that headache again) It seems as if an industry analyst could be a little more precise in providing guidance to his audience rather than these vast generalizations sans definitions.

Carl, here’s another quote from Feynman, expressly for you: “The first principle is that you must not fool yourself and you are the easiest person to fool.”

 
At 5:59 PM, Blogger The Voyant Group said...

It’s funny when someone says that a standard is nothing more than the result of tons of work over the past decade (e.g. we’ve done this for ages). Funny in a scary kind of way, that is. Would Carl rather a standard be developed out of whole cloth as opposed to a blending of best practices, techniques and patterns from the past couple of decades? We hope not!

In fact, isn’t Service-Oriented Architecture just that? We point to this since Carl claims SOA is in part responsible for the demise of MDA. SOA itself has been around for a very long time; we can recall it back in the mid-90’s. Does that mean SOA is passé and not to be considered viable today? Certainly not!

In summary, it appears Carl is fonder of the non-standard versions of MDA referred to in his report as “pragmatic MDA.” He cites Compuware as doing one style, Borland potentially doing another, Jon Kern pushing yet another, someone at a trade show exposing yet another and so on as examples of the pragmatic MDA destined to win the day. Apparently “pragmatic MDA” is synonymous with “non-standard MDA” since there are many variations of it evolving uncontrolled.

Our assertion on this point is that until and unless there is broad standardization around MDA of any flavor it will be very difficult to move forward or to employ it successfully.

Mischaracterizations of MDA and its applicability in addressing the needs of IT are, at best, a gross disservice to customers. The single largest standardization process of MDA in the industry is found within the OMG. It stands to reason that this is where the penultimate MDA standard will emanate from that will drive the industry.

Why Carl cannot simply cite the issues he has with MDA is beyond comprehension to us. We continue to invite him to do so.

 
At 6:55 AM, Blogger Vilas said...

What is Carl's point, that people dont use model transformation? What is a code generator if not a model transformer?
Or is it his point that people dont use OMG standards to build model transformers? But the standards are just being put in place, will he not allow some time for tools to proliferate? As I understand IBM has already started putting them in RSA. Does he not understand that by having model tranformation standards, one can now even generate the code generator? Does he not understand its significance? Does he not see power being transferred to developer from tool vendors? He can visit our lab here in Pune and we'll be more than willing to demo all these aspects.

 

Post a Comment

<< Home