I need to change UML model(deployment diagram) for example adding more devices,deleting device,moving artifact from device to another or delete device or adding more artifacts.Is there any tool or option that can record the changes that i have made automatically??
i tried to use EMFCompare for ecore models but i have UML models and i tried the option (compare with) i didn't understand how it works .I created two version of deployment diagram S and S2 and i choose the option compare with each other.
Can you please advise me how can i record all changes that have made to UML model.
This is outside the scope of Epsilon, but here are a few pointers to various resources you could check .
EMF Compare is, as it says, a comparison algorithm - it'll take two versions of a model and tell you what was added / removed / changed. Model comparison is not an easy problem to solve, however, and it cannot retrieve the exact sequence of changes that produced the final version. You could try asking what you don't understand over at their forum:
Another option is to use EMF adapters to "listen" to a model and collect the change events as they happen on the editor. That requires using more space, but you get back the exact sequence of changes and you don't have to tweak any algorithm. You'll have to write the appropriate code to plug that into your editor, of course:
In fact, I believe EMFStore uses this functionality to provide its versioning support. Perhaps you could just store your models in EMFStore and then look at the "change packages" that it keeps between versions. You may want to look around on their website:
Thanks very much for your reply,I thought my question is related to Epsilon because i was reading about ECL in Epsilon book and i thought that all are related to each other.
So i can understand that ECL cannot be used to record or find changes between model but it can be used to find overlapping elements between models,am I right???
As far as I know, EML can be used to match elements from two models (or two versions of the same model) and then ECL can be used to compare those matches. I believe (but I'm not 100% sure) that EML/ECL predate EMF Compare / EMFStore.
EMF/ECL pretty much allow you to have a custom comparison approach for your modelling language. However, I haven't used them much, so I wouldn't be able to help much. Sorry!