Model-driven development seems to have a lot of buzz in certain software engineering circles, but I've never encountered an open source MDD projects "in the wild".

Are any open source projects using model-driven development? (I don't just mean that there's some UML documentation, but that the primary artifacts that the developers manipulate are the models, rather than the code).

  • 1
    I don't think MDD and typical open-source workflows would be a good match. Most importantly, manipulating (graphical) models instead of source code means you have to abandon the "prefer textual" mantra of the UNIX world.
    – tdammers
    Commented Jun 6, 2012 at 18:21
  • Are there open-source MDD tools? Open-source projects can't be built using proprietary tools. Commented Jun 6, 2012 at 18:45
  • @tdammers: I don't see why models couldn't be text-only, though.
    – haylem
    Commented Jun 6, 2012 at 20:18
  • @kevincline: why not?
    – tdammers
    Commented Jun 6, 2012 at 22:08
  • 1
    @kevincline: I agree with tdammers. Open Source projects can be built with proprietary software, there isn't necessarily a legal issue with that.
    – haylem
    Commented Jun 7, 2012 at 9:54

2 Answers 2


I don't know of many projects using a completely MDD-oriented approach, but I've often come across projects that use generated sources and artifacts from models of various kind.

I've found a few interesting links on this in the past:

  • Here's a wikipedia list of projects based on Eclipse EMF (so, not necessarily consumer products using it, but still interesting),
  • an IBM Developer Series tutorial on Eclipse EMF,
  • a very interesting software called CodeWorker that uses Generative Programming as its core concept (to a certain extent, this allows you to work purely on models).

You may also want to read Why aren't we all doing MDD yet?


I think that live synchronization at model level is a solution. I mean that if you work on a native model explorer which will immediately updated all modified or new information in the complete model then you can manipulate the model at developer level. You can change your model with a simple text editor or using the tree viewer. Have a look at the EclipseUML2 plugin which is a kind of tree viewer using the EclipseUML2 model.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.