我想知道一些关于如何计算(set?)的参考和想法。两个UML模型之间的差异。基本上,我有一个系统(用UML/xmi表示),并且可以对这个系统应用几种模式(也用UML/xmi表示)。
例如,我们可以将模式a应用于将模式b应用于system - Pa(Pb(S))的结果。然后,我想计算dif(Pb, S),然后计算dif(Pa, S),因为在应用模式之后,合并后的系统可以被视为原始系统。
我正在寻找参考资料(无论是否在文献中)和算法,因为我不想重新发明轮子。最后,我将用Java编写代码。
提前谢谢你,
佩德罗
发布于 2013-01-21 17:59:51
使用Eclipse EMF Compare,您可以比较两个不同的EMF模型实例。由于UML在Eclipse中表示为EMF Model实例,因此您可以使用它来比较您的UML模型。只需安装EMF Compare,在包资源管理器(或您使用的任何视图)中标记您的UML模型,然后选择Compare -> ...从上下文菜单中。比较编辑器将允许您将差异保存为.emfdiff文件。
发布于 2013-01-21 18:03:07
我不能指出确切的文献,但如果您不/不能使用上面的EMF解决方案,请考虑这一点: UML模型是图(我需要一些思考才能弄清楚边和顶点是什么,但不管怎样)。为了得到差异,您需要顶点和边集的symmetric difference。这样你就得到了只有一个图中的所有东西。如果您使用应用的模式计算原始模型和模型之间的对称差异,就会得到该模式对模型所做的确切结果。
https://stackoverflow.com/questions/14435944
复制相似问题