tags:

views:

5893

answers:

11

Here is my problem:

I will provide the source code of my application as input and what I want as output is a visual representation of the relationship between classes, method calls etc.

Is there some tool to do this?

+7  A: 

If you use the Netbeans IDE it does have tools to reverse engineer your source code into UML class diagrams. After loading your source code into the IDE. You can create a new UML->Reverse Engineered java-platform model.

Check out This Netbeans Wiki page for more details.

Vagnerr
Sadly, now the UML plugin of Netbeans is not maintained anymore.
ivan_ivanovich_ivanoff
I also found out about this last week, and was really disappointed. It had promise.
Chris Dennett
+1  A: 

visual representation of the relationship between classes,

NetBeans can draw you UML diagram from classes, and I guess any decent UML tool could also.

method calls etc.

UML also have types of diagrams used for this, I've never tried to get it out of a source, but presumably, some of the UML programs could do it.

Slartibartfast
A: 

What you need is usually done by class of tools called RAD. Good example would be PowerBuilder. You can get diagrams (class diagrams, etc) using Reverse engineering process.

Georgy Bolyuba
A: 

Eclipse has quite a few UML plugins. In particular, Slime UML and Green are both free and both promise to perform reverse engineering. Please note that Slime has received a much higher rating from the community.

Hank Gay
A: 

Borland produce by far best tool for this sort of thing - Together. It gives you a full model driven approach to development, so that might be overkill for what you require. It is commerically licensed, but they provide a community edition for non commerical work.

There are eclipse plugins that can do UML reverse engineering - here is a long list. I have tried some of the free ones, and quite liked slime and argo.

serg10
A: 

You can try Rational Systems Developer. It is ofcourse based on eclipse platform!!

You can do transformations to and from UML. I had some minor issues with lack of support for primitive types but nothing major..

Prakash
+2  A: 

Structure 101 is a great tool. Costs money though... Link to Wiki describing it, for some reason the vendor site is down ATM

Ran Biron
I use Structure101 almost daily and can really recommend it! A great tool to understand code base and test refactorings on it.
Kaitsu
A: 

Try Hierarchy for showing class inheritance relationships.

Dave Jarvis
A: 

I would advise yDoc. It uses Javadoc with a custom doclet, and generates really nice UML diagrams. However, it costs money although a trial version is available if you ask :)

Chris Dennett
A: 

See Reverse Java at http://www.reversejava.com This is exactly what you need. It creates sequence diagram and VOPC from existing java applications. You can also export the diagrams as PDF/Image.

We have used it in our application and have found it very useful. The only problem is that its bit on slower side but at such a cheap price and excellent features you can live with it

Rajesh Jadhav
I love programs with GUIs *lol*
OneWorld
A: 

UDoc

http://udoc.sourceforge.net/main/index.html

Very simple to use, nice clear dynamic diagrams.

I've used it with compiled classes, but apparently also works with javadoc & source.

Allen