Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

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).

share|improve this question
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 Jun 6 '12 at 18:21
    
Are there open-source MDD tools? Open-source projects can't be built using proprietary tools. –  kevin cline Jun 6 '12 at 18:45
    
@tdammers: I don't see why models couldn't be text-only, though. –  haylem Jun 6 '12 at 20:18
    
@kevincline: why not? –  tdammers Jun 6 '12 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 Jun 7 '12 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?

share|improve this answer

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.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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