Slashdot Mirror


Pros and Cons of MDA Code Generators?

amartel asks: "Four years ago, Ask Slashdot asked if anyone was using a Model-Driven Architecture. The number of MDA tools are now almost overwhelming, and I strongly believe that comments to the same questions would be rather different nowadays. What are the drawbacks, difficulties and limitations of MDA? What percentage of code can actually be generated? I would like to add a few more: is it realistic to create a custom GUI rather than CRUD operations with these tools? Finally, what about Microsoft, the new competitor on the scene, and their DSL Tools?"

4 of 62 comments (clear)

  1. Borland's ECO by Mr_Tulip · · Score: 4, Informative
    I have previously used Borland ECO to create some simple MDA applications, and overall, found it a useful tool.

    The implementation of said tool was unfortunately fairly mediocre, and I finally gave up on trying anything non-trivial using ECO, after the third time that the source code and model became 'out of synch' and my 1000's of lines of generated code would not compile.

    If I had the time, I would like to try an updated version of ECO, or perhaps another alternative, but overall, I still prefer the safety net of being in control of the coding process, and actually understanding what is going on under the hood.

  2. MDA vs MDD by r.jimenezz · · Score: 2, Informative
    I'm all for model-driven development (MDD). My MSc thesis was about extending an Eclipse plug-in that supports an architectural description language (see http://www.aadl.info./ When I learned what the realtime industry (particularly avionics) were used to doing with MetaH, I instantly begun searching for ways to apply this on other domains. Two years later I feel I'm getting closer, but not quite there yet :)

    However, I really don't like OMG's MDA. There's an article on the Web by David Frankel that explains very well why UML isn't quite up to the task (see http://www.bptrends.com/publicationfiles/01-04%20C OL%20Dom%20Spec%20Modeling%20Frankel-Cook.pdf, and see also http://www.martinfowler.com/ieeeSoftware/mda-thoma s.pdf).

    This is not to say I fully agree with Microsoft's DSL and Software Factory concepts. I certainly see more debate is needed. In a sense, MDA is bad because I feel it will stall the debate, as vendors rush to implement their tools around a model some considered flawed, and a great many just plain hard to use in practice.

    --
    The revolution will not be televised.
    1. Re:MDA vs MDD by r.jimenezz · · Score: 2, Informative
      Sorry, -ryan. I didn't mean to imply my MSc thesis gave me any kind of edge :) Just to bring the next sentence into context.

      You are indeed right. I've been programming for seven years now, and the vast majority of what I know came from the trenches, not from any of my degrees.

      Indeed, I found that I enjoyed my MSc a lot more because I had about four years of experience when I went into it. Otherwise I'm afraid it'd only be a lot of useless knowledge, instead of answers to questions I had naturally stumbled upon.

      I thoroughly enjoyed your comment. My main beef with AndroMDA is trying to go straight from model to code. IMHO there should be an intermediate step (something that MDA, with PIM->PSM transformation, somehow contemplates). Then again UML within AndroMDA is mostly used as a detailed design language, not an architectural description language.

      --
      The revolution will not be televised.
  3. AndroMDA anyone? by PopCultureDiva · · Score: 2, Informative

    AndroMDA could be worth a look. Works with Poseidon and some expensive UML tools. You'd better be up on your UML if you want to do some MDA. One of the best code generation strategies I've worked with was using XDoclet tags to generate mappings and Hibernate's schema export to take those mappings and generate DDL.