Welcome to Telelogic Product Support
  Home Downloads Knowledgebase Case Tracking Licensing Help Telelogic Passport
Telelogic Rhapsody (steve huntington)
Decrease font size
Increase font size
Topic Title: Problems with reverse engineering
Topic Summary:
Created On: 22-Nov-2006 09:59
Status: Read Only
Linear : Threading : Single : Branch
Search Topic Search Topic
Topic Tools Topic Tools
Subscribe to this topic Subscribe to this topic
E-mail this topic to someone. E-mail this topic
Bookmark this topic Bookmark this topic
View similar topics View similar topics
View topic in raw text format. Print this topic.
 22-Nov-2006 09:59
User is offline View Users Profile Print this message


Lars Denker Jørgensen

Posts: 14
Joined: 1-Mar-2006

Hello

I got problems with the reverse engineering functionality of Rhapsody.

We got some code that is maintained external of Rhapsody. This code will occasionally get updated (the code can't, for other reasons, be imported to Rhapsody). This code is encapsulated in a static library and linked with the application build up in Rhapsody. Interface files (.h), this is class definitions, gets reverse engineered into Rhapsody as external code (i.e. Rhapsody doesn't compile these). The reason for the reverse engineering is to get a interface i.e. application classes can inherit the classes inside the library.

All this works perfectly the first time I reverse engineer and build up my application. The problems start when I update the external code i.e. for example change an attributes type or add a new method to a class. I will now update the Rhapsody model to reflect these changes, so I try to reverse engineer using the "model updating = merge into existing" (reverse engineering flag). It seems to run, but when I navigate to the change class in Rhapsody the new methods and attributes aren't imported. If I look at the code (edit code on the class) I can see that the methods and attribute are fine, but not in the Rhapsody model. The reverse engineering process doesn't import the changes!!!

Another problem is that doing the reverse engineering update (merging), some of my diagrams randomly removes associations from/to classes that are affected by the update! The association is however not removed from the model, only from the view.

I have tried all possible settings to get the Rhapsody to update the reversed engineered external code, but I doesn't seem to be working any how! Any suggestions to this case, is highly appreciated.

Best regards, Denker
Report this to a Moderator Report this to a Moderator
 28-Mar-2007 12:49
User is offline View Users Profile Print this message


Orr Weisman

Posts: 3
Joined: 8-Mar-2007

Try reverse engineering it into an empty model first and then adding the changed packages/classes into your working model.
Report this to a Moderator Report this to a Moderator
 29-Mar-2007 08:12
User is offline View Users Profile Print this message


Ian Turner

Posts: 25
Joined: 3-Feb-2006

Hi Denker,

The reverse engineering function is so that code can be brought in to Rhapsody for update within the model.

Instead, try creating classes/files, in your Rhapsody model, with the same names as your external code and set the CG::Class::UseAsExternal property to true. Rhapsody will then treat the files as external and will always pick up the latest changes to them.

Regards,

Ian
Report this to a Moderator Report this to a Moderator
Statistics
20925 users are registered to the Telelogic Rhapsody forum.
There are currently 1 users logged in.
You have posted 0 messages to this forum. 0 overall.

FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.