1

Need a idea for developing very simple application demonstrating concepts of MDA.

skaffman
  • 398,947
  • 96
  • 818
  • 769
Ratna Dinakar
  • 1,573
  • 13
  • 16
  • 2
    How about "hello, world!"? :) The question is very vague actually.. – yegor256 Dec 18 '10 at 21:31
  • @Vincenzo, its plain simple.. I want to study benifits of MDA applied to real world solution, its pros and cons. – Ratna Dinakar Dec 18 '10 at 21:41
  • [MDA](http://en.wikipedia.org/wiki/Model-driven_architecture) can be applied to any application, no matter how simple/complex it is. The more complex the app you're designing the less effective is your demonstration of MDA. – yegor256 Dec 18 '10 at 21:47
  • I agree and I just want to evaluate. Let me take the first step ! – Ratna Dinakar Dec 18 '10 at 21:52
  • If you want to study the benefits of MDA, read a book, and then apply it to your next project if you feel its worth it. MDA is a man-made methodology, and just hacking away it on your own won't help much. Learn as you read, read as you learn. – Mike Jan 01 '11 at 15:46

3 Answers3

4

Alright, it is hard to find something analogous to a hello world in MDA world as MDA is geared on solving a bigger problem. The best way in my opinion to get started is to approach the below problem by "thinking in meta-model"

In any real world application, there are certain artifacts that you require for any business entity to be persisted. Pick 2 such simple entities like Customer and Orders and generate all the corresponding artifacts across all the layers of any multi-tiered application (like ui, persistence etc). Below are the artifacts to get you started

  1. UI (jsf form, managed bean, faces-congig.xml) for the user to enter data for both the entities
  2. Servie later artifacts like transaction decmarcation code etc
  3. Persistence layer artifacts like (DAO/Repository, JPA/Hibernate mapping file)

Now in the process you will also identify that there are more things to model like faces-config, jpa/hibernate config etc..

EMF is the more prevalent toolkit for meta-modling and oAW is your generation/transformation engine. This tutorial can get you started.

Spring Roo and OpenXava are in my opinion two well know frameworks that supports MDA

Get ready to loose yourself in the MDA jargon of meta-model, meta-meta model, model instance etc...

Aravind Yarram
  • 78,777
  • 46
  • 231
  • 327
3

I agree with the previous answer, I would just add some more info. The Eclipse Modeling Framework is, in my opinion, one of the best framework implementing the OMG architecture and languages. I suggest you to use TopCased for modeling (http://www.topcased.org) it is based on EMF and provides you a good IDE for UML/SYSML modeling. You therefore might want to automatically generate some code from your models. To this end I strongly suggest you Acceleo which is an EMF compliant implementation of the MOF Models 2 Text Transformation Language and related engine.

Andrea Sindico
  • 7,358
  • 6
  • 47
  • 84
0

Well, "hello world": create class "World" and define operation "hello" on it. If that is not enough, you can extend "World" as you wish.