Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » QVT-OML » Model Abstrction
Model Abstrction [message #1735181] Thu, 16 June 2016 07:29 Go to next message
Laurence Robert is currently offline Laurence RobertFriend
Messages: 2
Registered: June 2016
Junior Member
Hi!

I am actually developing a model to model transformation with xtend. My problem is that both the input and the output models are not stable, they are still in definition and still growing. So for each release or change of theses models I have to change my code.
Do QVTo propose some abstraction mechanism, or some other way to solve stability problems? Or do you know some other Eclipse Project or java Technology which may help me? =)

Thanks a lot!
Re: Model Abstrction [message #1735255 is a reply to message #1735181] Thu, 16 June 2016 16:05 Go to previous messageGo to next message
Ed Willink is currently offline Ed WillinkFriend
Messages: 7655
Registered: July 2009
Senior Member
Hi

What you are asking is rather hard. Suppose you just change "name" to
"identifier" how telepathic do you expect tooling to be? I find JDT
about right. Lots of red squiggles, allowing manual refactoring. QVTo is
moderately good at the red squiggles, but like almost all modeling tools
useless wrt refactoring.

I find Xtend's model/Java language schizophrenia unhelpful and possibly
a contribution to its poor tooling; the Java quality that one might
expect seems to be degraded to the modeling tool par.

ATL is potentially metamodel independent, but IMHO this just deprives
the user of sensible static checking. You might find its laxity
accommodates some of your evolution.

QVTo has a strict/not-strict option that may allow a little laxity in
your evolution.

One day, a more plausible solution may review the metamodel changes and
help you define simple 1:1 refactorings and characterize the semantics
of non-1:1 changes interactively. This should autogenerate a
meta-transformation that can be applied to models and/or transformations
to perform the evolution.

Regards

Ed Willink




On 16/06/2016 16:25, Laurence Robert wrote:
> Hi!
>
> I am actually developing a model to model transformation with xtend.
> My problem is that both the input and the output models are not
> stable, they are still in definition and still growing. So for each
> release or change of theses models I have to change my code. Do QVTo
> propose some abstraction mechanism, or some other way to solve
> stability problems? Or do you know some other Eclipse Project or java
> Technology which may help me? =)
>
> Thanks a lot!
>
Re: Model Abstrction [message #1735259 is a reply to message #1735255] Thu, 16 June 2016 16:18 Go to previous messageGo to next message
Ed Willink is currently offline Ed WillinkFriend
Messages: 7655
Registered: July 2009
Senior Member
Hi

For my own code in the OCL / QVTd project I have many Java-coded
transformations. These exploit auto-generated Visitor hierarchies (much
faster than Ecore's switches). During development, I stub the default
visit with a System.out.println to log what needs writing. Eventually
the stub evolves to an UnsupportedOperationException.

Xtend may have declarative capabilities to do this automatically, but I
am afraid that I find many of Xtend's capabilities too clever by half
and inadequately supported by the tooling so I don't use them.

The auto-generators for the Visitor hierarchies use an Xtend
model-to-text layer on top of a Java foundation.

See
GIT\org.eclipse.ocl\examples\org.eclipse.ocl.examples.build\src\org\eclipse\ocl\examples\build\xtend\GenerateVisitorsXtend.xtend

Regards

Ed Willink


On 16/06/2016 17:05, Ed Willink wrote:
> Hi
>
> What you are asking is rather hard. Suppose you just change "name" to
> "identifier" how telepathic do you expect tooling to be? I find JDT
> about right. Lots of red squiggles, allowing manual refactoring. QVTo
> is moderately good at the red squiggles, but like almost all modeling
> tools useless wrt refactoring.
>
> I find Xtend's model/Java language schizophrenia unhelpful and
> possibly a contribution to its poor tooling; the Java quality that one
> might expect seems to be degraded to the modeling tool par.
>
> ATL is potentially metamodel independent, but IMHO this just deprives
> the user of sensible static checking. You might find its laxity
> accommodates some of your evolution.
>
> QVTo has a strict/not-strict option that may allow a little laxity in
> your evolution.
>
> One day, a more plausible solution may review the metamodel changes
> and help you define simple 1:1 refactorings and characterize the
> semantics of non-1:1 changes interactively. This should autogenerate a
> meta-transformation that can be applied to models and/or
> transformations to perform the evolution.
>
> Regards
>
> Ed Willink
>
>
>
>
> On 16/06/2016 16:25, Laurence Robert wrote:
>> Hi!
>>
>> I am actually developing a model to model transformation with xtend.
>> My problem is that both the input and the output models are not
>> stable, they are still in definition and still growing. So for each
>> release or change of theses models I have to change my code. Do QVTo
>> propose some abstraction mechanism, or some other way to solve
>> stability problems? Or do you know some other Eclipse Project or java
>> Technology which may help me? =)
>>
>> Thanks a lot!
>>
>
Re: Model Abstrction [message #1735348 is a reply to message #1735259] Fri, 17 June 2016 13:39 Go to previous message
Laurence Robert is currently offline Laurence RobertFriend
Messages: 2
Registered: June 2016
Junior Member
Hi Ed,
thanks for your tips!
I think I will stay with xtend for now. These Visitor hierarchies look nice!
Bests,
Laurence ROBERT
Previous Topic:Mapping reference
Next Topic:Incremental transformation not working because input traces are ignored
Goto Forum:
  


Current Time: Fri Apr 19 04:53:11 GMT 2024

Powered by FUDForum. Page generated in 0.01528 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top