> I can't perfectly agree with this. For AndroMDA we actually model a PSM > I would say.
Yes, you are correct. It's bit difficult to say that we do PIM in AndroMDA. But it is also not a real PSM.
1. PIM would be: Person with a name property (UML) 2. PSM in EJB would be: PersonEJBObject, PersonEJBHome, ... (UML) 3. Code: PersonEJBObject, PersonEJBHome, ... (Java)
In AndroMDA we mix a bit PIM and PSM because we add some platform specific tagged values and some platform specific stereotypes in our PIM. Having QVT would help us separate the PIM from PSM better. On the other side AndroMDA does not show all those PersonEJBObject, etc., so it is not a real PSM, because AndroMDA uses the code centric capabilities like XDoclet for example.
> If you think of platform secific, say EJB, and also think of having a
> standard PSM for EJB one day, this would give you the opportunity of
> beeing implementation independend (concerning your EJB container in this
> case). Practical use: your application server xyz has some significant
> stability problems in the current version - push some button and take
> another one :) and don't think about it any more. Alright, that sounds
> like science fiction, but I think that's one good reason to at least
> think about the possible power of PSM and model transformation in general.
Yes this would be cool ;-) and a very good example of using PSM. But for this case I prefer to use the language capabilities (code centric) such as using metadata / XDoclet in Java. I think the top down approach of MDA should be combined with the bottom up approach of the programming language like Java.
In AndroMDA you can simply change your cartridge: instead of using "jboss-ejb-cartridge" you can use "jonas-ejb-cartridge" and AndroMDA will generate your codes + all those XDoclet or Java metadata for the chosen app server. Afterwards XDoclet or Java metadata will create all those app server specific descriptors. So, you can reach the same as using PSM. Therefore I always ask AndroMDA developers to standardize the modelling "art" so we can have a collection of reusable cartridges ;-)
Another good example is how you can generate your JUnit test cases. You surely can generate them directly from the PSM if you are using PSM (or maybe directly from your PIM), but you can also use JUnitDoclet to generate them from your EJBDelegate for example, which I like more. So it's a about the integration of top-down (model-driven) and bottom-up (code-centric) approach, since we *still* need a programming language to run our application ;-)
IMO, in Open Source it's difficult to get a good modelling UML tool because such a UML tool needs very good user interaction to become user friendly. Eclipse/NetBeans is not the general case ;-) It's easier and faster to provide such "command line tools" such as XDoclet, AndroMDA, Ant, Velocity, etc. in Open Source area.
> I am not sure what you mean by this kind of transformation, could you > provide an example please?
A simple example of PIM to PIM transformation would be to translate your PIM in English language into German language. Normally I model my PIM in English language because I want to implement them in English language as it's easier to understand for any other people who don't speak German or maybe someone else in other part of the world should implement my PIM. But in many cases, e.g. documentation, I need to show my PIM in German language. It would be very easy if I can just add tagged values for each the "name" properties like @language.german="..." and run my transformation rules to create just the same PIM but with all names in German language ;-)
I know it's possible to use JMI/MDR for this purpose (read the XMI file and work with it) but this means that I need to implement this utility first. Using templates is impossible since the target would be an XMI file. Using transformation rules would be very easy, I think ;-) Anyway, if someone has a good idea for this purpose, I'm hearing...
Cheers, -- --------------------------------------------------- Blasius Lofi Dewanto --------------------------------------------------- OpenUSS - Open University Support System http://openuss.sourceforge.net --------------------------------------------------- E-Mail : [EMAIL PROTECTED] ICQ : 39343280 ---------------------------------------------------
------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Andromda-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/andromda-user