Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF Diff/Merge » Differences with EMF Compare 2
Differences with EMF Compare 2 [message #1031980] Tue, 02 April 2013 12:39 Go to next message
Mathieu Velten is currently offline Mathieu VeltenFriend
Messages: 5
Registered: August 2010
Junior Member
Hi,

I have troubles to find functional differences between EMF Compare 2 and EMF Diff/Merge, it looks to me that they answer the same problem with very similar approaches.

Are you aware of the pros/cons of the 2 frameworks ?

It looks like EMF Compare 2 should be able to handle bigger models (memory-wise) by loading and diffing different resources of a same model resource by resource, instead of diffing on the whole model.

Regards
Re: Differences with EMF Compare 2 [message #1032883 is a reply to message #1031980] Wed, 03 April 2013 15:08 Go to previous messageGo to next message
Olivier Constant is currently offline Olivier ConstantFriend
Messages: 47
Registered: January 2012
Member
Hello Mathieu,

EMF Diff/Merge is around to help people create tools that need to merge models. So the focus of EMF Diff/Merge is merging. To be more precise, merging consistently thanks to consistency rules - predefined and, if needed, user-defined.
Have you ever merged models in the past and obtained incorrect, unexpected or inconsistent results? This is what we fight against, and that requires a specific difference model.

So the positioning w.r.t. EMF Compare was defined from the beginning. It is described in the proposal of EMF Diff/Merge (1); I'm copying an excerpt here for convenience.

"Altough EMF Compare and EDM [EMF Diff/Merge] both provide comparison and merge facilities, they are essentially complementary. EMF Compare is focused on being an end-user tool [...]. It also provides ways to specialize its difference model in order to obtain a semantic, user-friendly rendering of the changes [...]. By contrast, EDM operates at a lower level of abstraction: its difference model is technical so as to support the expression of consistency rules. Consequently, EMF Compare could rely on the EDM engine whenever a particular consistency policy must be enforced."

(1) http://www.eclipse.org/proposals/modeling.emf.edm/

Regards,
Olivier
Re: Differences with EMF Compare 2 [message #1032938 is a reply to message #1032883] Wed, 03 April 2013 16:46 Go to previous messageGo to next message
Mathieu Velten is currently offline Mathieu VeltenFriend
Messages: 5
Registered: August 2010
Junior Member
Hi Olivier,

thanks for your answer this is a lot clearer with the proposal.

I think you should put on your main wiki page most of your proposal explanations, I found a lot of very useful informations in it and I didn't thought about looking at it before your answer.

This project seems to fulfill my goals better than EMF Compare :
- I use a custom meta-model so the semantic customizations are not really valuable to me, like it would be with SysML for example
- Consistency is important to me

Regards,
Mathieu
Re: Differences with EMF Compare 2 [message #1033683 is a reply to message #1032938] Thu, 04 April 2013 14:12 Go to previous message
Olivier Constant is currently offline Olivier ConstantFriend
Messages: 47
Registered: January 2012
Member
Hi Mathieu,

Agreed, the main wiki page could have more content. I have just updated it with the intention that it provides more information while being as simple and short. Feel free to comment on it.

If you want to give the tool a try to figure out whether it fits to your needs, it can be done very quickly as long as your DSL uses unique IDs. You just have to install the tool and play with it. Start your Eclipse environment with EMF Diff/Merge installed, duplicate one of your model files, modify it, select it together with the original, click the comparison menu item (1), then check the results and play with merges.

Your DSL uses unique IDs if your metamodel defines an attribute with the property "ID" set to true, or if your serialization format assigns XML IDs to model elements. If not, you may either define how your model elements must be matched (e.g., qualified names), or introduce IDs. If you intend to do version control on models, I strongly suggest introducing IDs since it is the most reliable method of all.

(1) http://wiki.eclipse.org/EMF_DiffMerge/Default_GUI#Default_comparison_action

Regards,
Olivier
Previous Topic:Most innovative feature/project award
Next Topic:Inverting and merging differences
Goto Forum:
  


Current Time: Thu Dec 18 10:38:40 GMT 2014

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

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