(responding toTorsten Hannemann)
> is there any experience about reengineering legacy C code > by making a transition to OO design and generating a model > in RoseRT ( Creating a new architecture , too) ? > > I want to reuse well running/tested program parts/modules > which have been written in C by wrapping them into classes > or capsules. Other parts probably have to be designed from > scratch. > > Is it possible to generate a model from the existing C code as > a starting pint for restructuring ? My experience with legacy code is with Rose rather than RoseRT, so I don't know how pertinent it would be. In Rose, when you reverse engineer C code, you won't get much in the model - a few structs, possibly. If you create a few artificial classes and assign each C procedure to a class (probably as a static method, i.e. class method rather than instance method) then the methods become visible in the reverse engineered model - but this won't tell you anything you don't already know about the structure of the code. The model can act as an 'aide-memoir' but little else. My approach when dealing with legacy code is to sketch out a model of the ideal - where I want to be heading as I change the code. As long as you don't expend too much effort in sketching this ideal, the effort is usually well repaid. Martin Fowler's book on refactoring outlines steps to convert from procedural to OO code (starting from a refactoring called "Convert Procedural Design to Objects"). There's a good chance it won't tell you anything you didn't already know, but I still keep it handy to jog my memory, and I've been refactoring since long before the book was written. HTH, Paul Oldfield ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ www.aptprocess.com any opinions expressed herein are not necessarily those of Mentors of Cally or the Appropriate Process Movement ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ************************************************************************ * Rose Forum is a public venue for ideas and discussions. * For technical support, visit http://www.rational.com/support * * Post or Reply to: [EMAIL PROTECTED] * Subscription Requests: [EMAIL PROTECTED] * Archive of messages: * http://www.rational.com/support/usergroups/rose/rose_forum.jsp * Other Requests: [EMAIL PROTECTED] * * To unsubscribe from the list, please send email * To: [EMAIL PROTECTED] * Subject: <BLANK> * Body: unsubscribe rose_forum *************************************************************************
