Curious for the event announced by Ella Roubtsova
on behavioural modeling, I have asked Ella and Mr Ashley Mc Neile on the subject, and their explanations I belive opens a critical aspect to discuss.
The beginnings of the conversation was among ours, but in my opinion it values enough to open a thread apart.
I want to resume my point of view, as a practitioneer and an observer, and then the initial response from Ella and Ashley, in order to start a discussion.
Why I am interested in "behavioural modeling", repeating what said previously:
"I´m not using MDA, but another way to create applications from models. However, I have followed with entusiasm OMG and other efforts to develop a standard for modeling to generate applications. I agree strongly with the idea of model design at abstract level, separating for platform design. I have seen, passing years of different approaches, how UML have become a constraint for OMG standards. Here, repeatedly, the discussion falls on a critical separation: model transformations arriving to a static representation of the application, which requires code intervention. I have discussed this issue before, regarding colleagues working with Rose or AndroMda: the automation gets a limit, which requires code. Descriptions of EMF shows a similar process: at end of modeling, you need to add java code.
It seems to me an issue, an obstacle that must be faced. Mr Varnica mentions today two issues which relate to model integrity: how to assure that an object have a unique representation into the model (Vlad says "I mean that changing one element in one diagram would immediately update my other 1,000 diagrams which include this element"); and how to get traceability of the use of an object into the model ("know in which diagram my element is used"). Add this "frustration" to the fact that the behavior of the model is declared in java code. What propagation of changes could be made this way? What traceability? How if manual code introduces errors in mapping from model object to code?
I belive this is a critical issue for Model abstraction, and must be solved. Behavior of the model must be represented in its proper terms, and it must be generated from abstract definition, which maps strictly to model definition. It is the only way to support maintainbility, and not to fall in an early definition, which finally differs from the "live" application, which resides into the code.
In sum, it is my interest in your point of view, be it mature or immature. I belive that "behavioral modeling" sounds great.
Regarding participation on the workshop, I like it, but I´m more able to hear than to talk...I will be very interested in know its results, indeed."
Regarding Mr Mc Neile vision, maybe it´s preferable give him the right to explain himself. He will do it largely better than me...