The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Object to procedural - for viewing

In maintaining code that one is unfamiliar with, the breaking of code into smaller components can obfuscate workflow problems and interactions in/between the components.

Is there a tool available that you might say - point at a function, or 2 points of code - and have it render the code from its component/OO form into a prcoedural piece of code for analysis.
Gorf
Thursday, September 22, 2005
 
 
Sorry, I can not recommend a tool, but it seems there are quite a few out there:
http://www.google.com/search?hl=en&q=sequence+diagram+reverse+engineering
DK
Thursday, September 22, 2005
 
 
While I am a big fan of static analyzers for code inspection/reenginering, I am not sure of what you want to obtain.

Is this a threading problem? If this is the case, I fear that a debugger or a thread analyzer will serve you best (and even in that case, things will not be easy to follow).

If the problem is that you have convoluted logic, I doubt that rebuilding it in a different "way" will help you. If threads are not part of the problem, "objects" are just variables/records on which you can call specific functions.

Even assuming that such a tool exists, a convoluted mess of logic branches, multiple exit points and obscurely named objects and methods with plenty of undocumented side effects will magically turn in a convoluted mess of logic branches, multiple exit points and obscurely named records sprinkled with functions and subroutines with plenty of undocumented side effects.

I wouldn't find this very useful, but perhaps it's just me.
Paolo Marino Send private email
Friday, September 23, 2005
 
 
Thanks DK, some useful keywords to get me started.

The problem is not so much that the code is convoluted, but rather that the sequence is broken between so many files it becomes difficult to track without aid - and we don't have support for doing so beyond paper and pencil.

Multithreaded? I think we would be stuffed.

In particular we have been dealing with Windows API calls and why we would get a strange error message - we just didn't know what call was actually providing the message because of course they don't clear the last message when they work, only set the message when they fail in (un)certain ways.
Gorf
Sunday, September 25, 2005
 
 
I've reviewed a number of source-code comprehension tools at <a href="http://www.grok2.com/code_comprehension.html">http://www.grok2.com/code_comprehension.html</a>...perhaps they can be of help. Beware though -- I only have a superficial knowledge of these tools.
Grok2
Sunday, September 25, 2005
 
 
Oops..made a mistake in the link above. It's: <a href="http://www.grok2.com/code_comprehension.html">http://www.grok2.com/code_comprehension.html</a>.
Grok2
Sunday, September 25, 2005
 
 
http://www.grok2.com/code_comprehension.html, sorry, my html seems to be bad...
Grok2
Sunday, September 25, 2005
 
 
Mr. Analogy {Shrinkwrap ISV} Send private email
Monday, September 26, 2005
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz