Skip to main content
Jump to: navigation, search

Difference between revisions of "EMF Compare"

(1.0.0 - Eclipse 3.5)
Line 1: Line 1:
 +
__NOTOC__
 +
<table border="0"  width="100%" cellspacing="6">
 +
<tr>
 +
<td>
 +
=Presentation=
 +
 
The EMF Compare project is [http://www.eclipse.org/emft/projects/compare/  part of EMFT] (EMF Technology).
 
The EMF Compare project is [http://www.eclipse.org/emft/projects/compare/  part of EMFT] (EMF Technology).
  
 
=Presentation=
 
 
EMF Compare brings model comparison to the EMF framework, this tool provides generic support for any kind of metamodel in order to compare and merge models. The objectives of this component are to provide a stable and efficient generic implementation of model comparison and to provide an extensible framework for specific needs.  
 
EMF Compare brings model comparison to the EMF framework, this tool provides generic support for any kind of metamodel in order to compare and merge models. The objectives of this component are to provide a stable and efficient generic implementation of model comparison and to provide an extensible framework for specific needs.  
  
Line 9: Line 13:
  
 
[[Image:CompareGlobal.png]]
 
[[Image:CompareGlobal.png]]
 +
</td>
 +
 +
<td rowspan="2" width="310" style="background-color: #bbbad2; border-width: 1px; border-style: solid; border-color: #e3e2ff; padding: 10px;">
 +
=Documentation=
 +
Initial project description : [[Media:EMFCompareDescription.pdf | EMF Compare Description (PDF)]]
 +
==User Guide==
 +
* [[Installing and Using EMF Compare | Installing and Using EMF Compare]]
 +
==Developer Guide==
 +
* [[Comparing XML files with EMF Compare | Comparing XML files with EMF Compare]]
 +
* [[Using EMF compare services | Using EMF compare services]]
 +
* [[Synchronizing domain models with EMF Compare | Synchronizing domain models with EMF Compare ]]
 +
* [[Writting a metamodel specific comparison engine | Writting a "metamodel specific" comparison engine]]
 +
* [[Using EMF Compare for Non-regression testing | Using EMF Compare for Non-regression testing]]
 +
* [[Extending the differences model | Extending the differences model]]
 +
* [[Adding export capabilities | Adding export capabilities]]
 +
 +
==FAQ==
 +
* [[EMF Compare FAQ|EMF Compare FAQ]]
 +
</td>
 +
</table>
 +
 +
 +
<table width="100%" height="100%" cellpadding="0" cellspacing="0">
 +
<tr>
 +
<td style="background-color: #cff8d9; border-width: 1px; border-style: solid; border-color: #def9e4; padding: 10px;">
  
 
=Roadmap & History=
 
=Roadmap & History=
Line 43: Line 72:
 
  - match engine extensibility
 
  - match engine extensibility
 
  - export API
 
  - export API
 +
 +
</td>
 +
<td  style="background-color: #fdf087; border-width: 1px; border-style: solid; border-color: #e3e2ff; padding: 10px;">
  
 
=Current Tasks=
 
=Current Tasks=
Line 70: Line 102:
 
* ''12/04/2007  cleaning up UI (remove uneeded buttons, diagram tabs...)''
 
* ''12/04/2007  cleaning up UI (remove uneeded buttons, diagram tabs...)''
 
* ''12/04/2007  save diff action''
 
* ''12/04/2007  save diff action''
 
+
</td>
 +
<tr>
 +
<td>
 
=Team=
 
=Team=
 
The project developers are:
 
The project developers are:
Line 81: Line 115:
  
 
Antoine Toulme ([http://www.intalio.com Intalio Inc.])
 
Antoine Toulme ([http://www.intalio.com Intalio Inc.])
 
+
</td>
 +
<td>
 
=Contacts=  
 
=Contacts=  
 
Any issue should be reported to the [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=EMFT Bugzilla]
 
Any issue should be reported to the [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=EMFT Bugzilla]
 
You may also contact the team using the EMFT newsgroup.
 
You may also contact the team using the EMFT newsgroup.
 
+
</td>
 +
<tr>
 +
<td colspan="2">
 
=Events=
 
=Events=
 
'''20/03/2008''' - Short talk given at EclipseCon 2008 [http://www.eclipsecon.org/2008/?page=sub/&id=328 An update on EMF Compare]
 
'''20/03/2008''' - Short talk given at EclipseCon 2008 [http://www.eclipsecon.org/2008/?page=sub/&id=328 An update on EMF Compare]
Line 92: Line 129:
  
 
'''05/03/2007''' - We presented the project at EclipseCon through a [http://www.eclipsecon.org/2007/index.php?page=sub/&id=3593 panel]. Here is some feedback: [[Model Comparison Panel 2007]].
 
'''05/03/2007''' - We presented the project at EclipseCon through a [http://www.eclipsecon.org/2007/index.php?page=sub/&id=3593 panel]. Here is some feedback: [[Model Comparison Panel 2007]].
 
+
</td>
=Documentation=
+
</tr>
Initial project description : [[Media:EMFCompareDescription.pdf | EMF Compare Description (PDF)]]
+
</table>
==User Guide==
+
* [[Installing and Using EMF Compare | Installing and Using EMF Compare]]
+
==Developer Guide==
+
* [[Comparing XML files with EMF Compare | Comparing XML files with EMF Compare]]
+
* [[Using EMF compare services | Using EMF compare services]]
+
* [[Synchronizing domain models with EMF Compare | Synchronizing domain models with EMF Compare ]]
+
* [[Writting a metamodel specific comparison engine | Writting a "metamodel specific" comparison engine]]
+
* [[Using EMF Compare for Non-regression testing | Using EMF Compare for Non-regression testing]]
+
* [[Extending the differences model | Extending the differences model]]
+
* [[Adding export capabilities | Adding export capabilities]]
+
 
+
==FAQ==
+
* [[EMF Compare FAQ|EMF Compare FAQ]]
+
  
 
[[Category:Modeling]]
 
[[Category:Modeling]]
 
[[Category:EMFT]]
 
[[Category:EMFT]]

Revision as of 06:09, 19 May 2008

Presentation

The EMF Compare project is part of EMFT (EMF Technology).

EMF Compare brings model comparison to the EMF framework, this tool provides generic support for any kind of metamodel in order to compare and merge models. The objectives of this component are to provide a stable and efficient generic implementation of model comparison and to provide an extensible framework for specific needs.


The comparison process is divided in 2 phases: matching and differencing. The matching phase browses the model version figuring out which element comes from which other one, then the differencing process browses the matching result and create the corresponding delta. This delta may itself be serialized as a model.

CompareGlobal.png

Documentation

Initial project description : EMF Compare Description (PDF)

User Guide

Developer Guide

FAQ


Roadmap & History

Roadmap

1.0.0 - Eclipse 3.5

- patch/changeset model
- huge model management
- UI extensibility (filters..)
- Graphical modelers integration
- Remote proxy resolving
- Incubation status exit
- ResourceSet match (inter-models links)
- eOperations handling

0.8.0 - Ganymede (2008)

- « 3 way » comparison
- confirm RCP/Domain uses cases for diff/synchronization
- diff engine extensibility
- diff model extension
- performances enhancements
- tutorials/documentation

History

0.7.0 branch (2007)

- merge/differencing
- reference documentation
- « 2 way » comparison
- Ecore/XMI Id handling
- metamodel agnostic
- match engine extensibility
- export API

Current Tasks

  • complete documentation and tutorials
  • coding a sample match engine
  • SVN/CVS proxy resolution
  • cleaning up API, Extensible Factor system for generic engine
  • extensible model traversal browsing
  • supporting dependencies design for merging
  • weight annotations for metamodels
  • 14/08/2007 extending diff metamodel
  • 14/08/2007 using functionnal ID through Ecore ID
  • 30/07/2007 export diff as... extension point
  • 30/07/2007 3 Way compare and merging
  • 10/07/2007suppress unused code
  • 14/06/2007 cleanup GUI
  • 07/06/2007 - open .diff files with compare editor
  • 10/05/2007dynamic icons for diff model using the element icons
  • 23/04/2007 remove UML2 dependencie for icons and use item providers for others
  • 17/04/2007 hierarchy in diff model
  • 16/04/2007 handle the case where many elements still need to be mapped without reaching a n^n complexity => using a max window
  • 16/04/2007 use StringBuffer
  • 13/04/2007 maplists should map with the best matching of the list (not the first)
  • 13/04/2007 filter unused metamodel elements (for instance many stuffs in UML are not really used in models..)
  • 12/04/2007 progress monitor and cancel support
  • 12/04/2007 cleaning up UI (remove uneeded buttons, diagram tabs...)
  • 12/04/2007 save diff action

Team

The project developers are:

Cedric Brun (Obeo), project lead

Laurent Goubet (Obeo)

Jonathan Musset (Obeo)

Antoine Toulme (Intalio Inc.)

Contacts

Any issue should be reported to the Bugzilla You may also contact the team using the EMFT newsgroup.

Events

20/03/2008 - Short talk given at EclipseCon 2008 An update on EMF Compare

10/10/2007 - Talk given at Eclipse Summit Europe 2007 EMF Compare : One year later.

05/03/2007 - We presented the project at EclipseCon through a panel. Here is some feedback: Model Comparison Panel 2007.

Back to the top