У меня есть файл emx, который содержит диаграммы последовательности и класса. Диаграммы являются результатом отслеживания выполнения приложения J2EE.
Чтобы помочь вам правильно ориентироваться, я пытаюсь преобразовать диаграмму последовательности в граф вызовов (методов). Я так старался найти документацию, которая объясняет все теги в диаграмме последовательности (посмотрите пример кода emx / xmi ниже), но я не смог.
Я пытаюсь понять различные теги и то, что они представляют на диаграмме последовательности. Например <packagedElement xsi:type="uml:Class">
, <ownedOperation>
, <packagedElement xsi:type="uml:ReceiveOperationEvent">
...
Любая помощь приветствуется.
Пример файла emx:
<?xml version="1.0" encoding="ASCII"?>
<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/200`enter code here`1/XMLSchema-instance" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" name="maintrace_main">
<packagedElement xsi:type="uml:Collaboration" name="Collaboration">
<ownedBehavior xsi:type="uml:Interaction" name="Interaction">
<lifeline represents="//Collaboration/@ownedAttribute.0" coveredBy="//Collaboration/Interaction/doGetstart3 //Collaboration/Interaction/doGetend4 //Collaboration/Interaction/doGet5 //Collaboration/Interaction/printlnstart8 //Collaboration/Interaction/printlnreturnEnd14
<fragment xsi:type="uml:MessageOccurrenceSpecification" name="doStartTagend568" covered="//Collaboration/Interaction/@lifeline.8" event="//doStartTag565" message="//Collaboration/Interaction/doStartTag.6"/>
....
</ownedBehavior>
<ownedAttribute type="//test.MainClass"/>
<ownedAttribute type="//test.Etudiant"/>
</packagedElement>
<packagedElement xsi:type="uml:Class" name="test.MainClass" clientDependency="//@packagedElement.29">
<ownedOperation name="main">
<ownedParameter name="arg1" type="//java.lang.String%5B%5D"/>
</ownedOperation>
</packagedElement>
<packagedElement xsi:type="uml:SendOperationEvent" name="println139" operation="//com.sun.j2ee.blueprints.util.tracer.Debug/println"/>
<packagedElement xsi:type="uml:ReceiveOperationEvent" name="println143" operation="//com.sun.j2ee.blueprints.util.tracer.Debug/println"/>
<packagedElement xsi:type="uml:SendOperationEvent" name="println144" operation="//com.sun.j2ee.blueprints.util.tracer.Debug/println"/>
<packagedElement xsi:type="uml:ReceiveOperationEvent" name="processRequest147"/>
<packagedElement xsi:type="uml:SendOperationEvent" name="processRequest148"/>
<packagedElement xsi:type="uml:ReceiveOperationEvent" name="doEnd151" operation="//com.sun.j2ee.blueprints.petstore.control.web.handlers.CartHandler/doEnd"/>
<packagedElement xsi:type="uml:SendOperationEvent" name="doEnd152" operation="//com.sun.j2ee.blueprints.petstore.control.web.handlers.CartHandler/doEnd"/>
<packagedElement xsi:type="uml:ReceiveOperationEvent" name="doEnd156" operation="//com.sun.j2ee.blueprints.petstore.control.web.handlers.CartHandler/doEnd"/>
<packagedElement xsi:type="uml:SendOperationEvent" name="doEnd157" operation="//com.sun.j2ee.blueprints.petstore.control.web.handlers.CartHandler/doEnd"/>
<packagedElement xsi:type="uml:ReceiveOperationEvent" name="processRequest160" operation="//com.sun.j2ee.blueprints.petstore.control.web.RequestProcessor/processRequest"/>
<packagedElement xsi:type="uml:SendOperationEvent" name="processRequest161" operation="//com.sun.j2ee.blueprints.petstore.control.web.RequestProcessor/processRequest"/>
<packagedElement xsi:type="uml:Class" name="com.sun.j2ee.blueprints.petstore.control.web.ScreenFlowManager" clientDependency="//@packagedElement.7007 //@packagedElement.7008 //@packagedElement.7009 //@packagedElement.7010 //@packagedElement.7011">
<ownedOperation name="getNextScreen">
<ownedParameter name="arg1" type="//javax.servlet.http.HttpServletRequest"/>
</ownedOperation>
<ownedOperation name="getURLMapping">
<ownedParameter name="arg1" type="//java.lang.String"/>
<ownedParameter type="//com.sun.j2ee.blueprints.petstore.control.web.URLMapping" direction="return"/>
</ownedOperation>
<ownedOperation name="getTemplate">
<ownedParameter name="arg1" type="//java.util.Locale"/>
<ownedParameter type="//java.lang.String" direction="return"/>
</ownedOperation>
<ownedOperation name="getScreens">
<ownedParameter name="arg1" type="//java.util.Locale"/>
<ownedParameter type="//java.util.HashMap" direction="return"/>
</ownedOperation>
<ownedOperation name="getParameter">
<ownedParameter name="arg1" type="//java.lang.String"/>
<ownedParameter name="arg2" type="//javax.servlet.http.HttpSession"/>
<ownedParameter type="//com.sun.j2ee.blueprints.petstore.control.web.Parameter" direction="return"/>
</ownedOperation>
<ownedOperation name="getScreens">
<ownedParameter name="arg1" type="//java.util.Locale"/>
<ownedParameter type="//java.util.HashMap" direction="return"/>
</ownedOperation>
<ownedOperation name="getParameter">
<ownedParameter name="arg1" type="//java.lang.String"/>
<ownedParameter name="arg2" type="//javax.servlet.http.HttpSession"/>
<ownedParameter type="//com.sun.j2ee.blueprints.petstore.control.web.Parameter" direction="return"/>
</ownedOperation>
<ownedOperation name="getScreens">
<ownedParameter name="arg1" type="//java.util.Locale"/>
<ownedParameter type="//java.util.HashMap" direction="return"/>
</ownedOperation>
<ownedOperation name="getParameter">
<ownedParameter name="arg1" type="//java.lang.String"/>
<ownedParameter name="arg2" type="//javax.servlet.http.HttpSession"/>
<ownedParameter type="//com.sun.j2ee.blueprints.petstore.control.web.Parameter" direction="return"/>
</ownedOperation>
<ownedOperation name="getScreens">
<ownedParameter name="arg1" type="//java.util.Locale"/>
<ownedParameter type="//java.util.HashMap" direction="return"/>
</ownedOperation>
<ownedOperation name="getParameter">
<ownedParameter name="arg1" type="//java.lang.String"/>
<ownedParameter name="arg2" type="//javax.servlet.http.HttpSession"/>
<ownedParameter type="//com.sun.j2ee.blueprints.petstore.control.web.Parameter" direction="return"/>
</ownedOperation>
<ownedOperation name="getScreens">
<ownedParameter name="arg1" type="//java.util.Locale"/>
<ownedParameter type="//java.util.HashMap" direction="return"/>
</ownedOperation>
<ownedOperation name="getParameter">
<ownedParameter name="arg1" type="//java.lang.String"/>
<ownedParameter name="arg2" type="//javax.servlet.http.HttpSession"/>
<ownedParameter type="//com.sun.j2ee.blueprints.petstore.control.web.Parameter" direction="return"/>
</ownedOperation>
</uml:Model>