2

I use Enterprise Architect v. 12 for designing a new application. Now I'd like to add reverse engineering of the created source code into our development process. I would like to create an EA project with two Models (root nodes):

  • Diagrams: Shall contain all of our hand-drawn diagrams. The diagrams shall use classes etc. from the Implementation Model
  • Implementation Model: Shall be updated at scheduled intervals by exporting an XMI file from our development system and importing the XMI file into the EA project

This seems to be a rather common scenario to me. However, when I try this I run into the following problems:

  • When I import an XMI file in to the Implementation Model I get a new package "Root" with several sub-packages (and classes etc.). This is due to the structure of the XMI file. When I import the same file again, the EA importer creates a new package "Root" below the Implementation Model next to the existing package. I.e. it doesn't update the model but sort of duplicates it.
  • When I now delete the old Root package the hand-drawn diagrams in the Diagrams model get empty, i.e. all contained elements vanish. This is a consequence of my first issue.

Is it possible to tell the EA XMI import that it shall update an existing package? The official EA documentation says "When you import an XML file over an existing Package, ALL information in the current Package is deleted first..." but this somehow doesn't work in this case.

Do you have any advice on how to handle roundtrip engineering of an UML model with EA in general?

Kind regards, Valentin

  • There is some option (in the option jungle) to tell EA keeping the location on XMI import. Good luck searching for it. The delete/load cycle will not be influenced by that, though. – qwerty_so Nov 25 '15 at 13:42

0 Answers0