Book a Demo

Author Topic: Migrating from Rational Rose to EA  (Read 3411 times)

tpi

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Migrating from Rational Rose to EA
« on: February 24, 2009, 07:16:03 pm »
I'm currently struggeling on the best way to migrate some project from Rose (2003) to EA (7.1). The ultimate goal is to migrate the class diagrams, keeping all information (including aggregations and stuff) and in the end being able to generate (C++) code out of EA that matches the former exports from Rose.

Theoretically, there are two ways to archive that - but both failed in some point or the other:
1. Exporting XMI from Rose, importing in EA:
- In this way, there's problems with associations losing their role in the target class (they're imported as "unspecified" instead of "by reference" or "Value" - resulting in wrong type on code generation)
- the information on wether methods are virtual or pure virtual is lost, resulting in defect method signatures as well
- and worse: roundtrip engineering produces weird results. When generating code in EA (with the model imported in the way described above) specifying the existing sourcefiles (formerly exported by rose and manually filled with code) EA doesn't correctly recognize the already existing attributes, resulting in attributes with same name and signatures existing twice in the sourcecode. After syncronizing with the source afterwards, they're also double in the model. When I try to delete one of those attributes in the model afterwards, it deletes all the double attributes... That's no model I can rely on to work forward.
- As we used to export attributes on Rose with a trailing "_", I would have to add to the C++ Code Generation Templates in EA. I quite easily managed to be able to export my class attributes the way I wanted, but as there seems to be no way to specify some kind of inverse-template (to remove those "_" on syncronizing with the code) all my stuff would be overwritten with the modified attributes - and even worse, on generating code again, it would generate double-"_" and so on... Did I miss some kind of import-templates?

2. The other possibility would be to just reengineer the old source code. This seems better on first sight, but still has some disadvantages:
- I lose all comments in the model. They're still there in the old source code though
- I lose some model-elements, such as aggregation associations, which makes the Model much less meaningful


Is there some good resource that handles those topics? I'm surely not the first person with those migration problems, but google doesn't seem willing to help me on those topics.

Kind regards,
« Last Edit: February 25, 2009, 01:30:49 am by tpi »

Transition Technologies

  • EA User
  • **
  • Posts: 85
  • Karma: +0/-0
    • View Profile
Re: Migrating from Rational Rose to EA
« Reply #1 on: February 27, 2009, 03:04:00 am »
Hi tpi,

You are right you are not the first person to have problems with RR to EA export.

However I've noticed some improvements in this area:

EA 7.1 b 834:
#  Added support for importing events on State Transitions from Rose exported XMI 1.1.
# Prevent adding of multiple instances of one element to diagram from Rose XMI 1.1.
EA 7.1 b 833:
Added support for importing diagram notes from Rose exported XMI 1.1
EA 7.1 b 832:
#  Added support for importing the value of attribute "changeable" on Association Ends and Attributes from Rose exported XMI 1.1
Regards,
Transition Technologies
Authorized Reseller and Training Partner of Sparx Systems
www.ea.tt.com.pl