473,396 Members | 1,666 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Tool for Visualizing external / internal metod calls

After trying to manually reverse-engineer a piece of code i've been handed
using Visio I figure someone must have developed a tool that can do
automatically in 5 minutes what took me 2 hours.

What I need is a tool that i can tell to "start with this method call, and
show me what happens" . The tool would then go through the sourcecode
visually mapping dependencies for that particular call. Prefrebly i'd be
allowed to specify which calls I want to be part of the resulting diagram
(internal calls, external calls, object instatiation). The result would
ideally be shown in an easy to understand graphical format whice i'd be
allowed to add my own comments to.

Anyone know of a tool that fulfills any/all of the above ? I've reverse
engineered the code using Rationals XDE, but within XDE I haven't found a
tool to help me trace the dependencies of a specific "top-level" method
call. The XDE overview genereated was probably correct in itself. The
problem was that I've got several thousand classes of essentially "unknown"
sourcecode to try and understand, getting all of it in a single diagram
doesn't help much, i need to be able to drill down further.

//Linus Nikander - li***@nikander.net
Jul 17 '05 #1
3 4018

"Linus Nikander" <li***@nikander.net> schrieb im Newsbeitrag
news:ax***************@news1.bredband.com...
What I need is a tool that i can tell to "start with this method call, and show me what happens" . The tool would then go through the sourcecode
visually mapping dependencies for that particular call. Prefrebly i'd be
allowed to specify which calls I want to be part of the resulting diagram (internal calls, external calls, object instatiation). The result would
ideally be shown in an easy to understand graphical format whice i'd be
allowed to add my own comments to.

Anyone know of a tool that fulfills any/all of the above ? I've reverse
engineered the code using Rationals XDE, but within XDE I haven't found a tool to help me trace the dependencies of a specific "top-level" method
call. The XDE overview genereated was probably correct in itself. The
problem was that I've got several thousand classes of essentially "unknown" sourcecode to try and understand, getting all of it in a single diagram
doesn't help much, i need to be able to drill down further.


You could use ALF[1] to trace method invocations. ALF allows you to
specify classes and packages to trace. For more selective evaluation you
could easily write a script that massages the output, or at least selects
only those lines that contain the method you want to inspect. This way
you don't get a graphical output but you can recognize the calling tree
via indention.

Another option is to use doxygen [2] which generates a very nice,
hyperlinked documentation much like JavaDoc but with additional graphical
class diagrams (including dependencies), that can also be navigated. And
the source code is included and linked.

Regards

robert
[1] http://alfj.sourceforge.net/
[2] http://www.doxygen.org

Jul 17 '05 #2
Thank you for the response.

AFL only seems to trace runtime invocations. As I want to trace mainly EJB:s
running within a container this would be a bit awkward. Apart from that it
does seem to feature just about the things I'm looking for. Do you know of
any tools that can generate the same information from source-files and not
runtime-invocation ?

Yours,

Linus

"Robert Klemme" <bo******@gmx.net> wrote in message
news:bd************@ID-52924.news.dfncis.de...

"Linus Nikander" <li***@nikander.net> schrieb im Newsbeitrag
news:ax***************@news1.bredband.com...
What I need is a tool that i can tell to "start with this method call,

and
show me what happens" . The tool would then go through the sourcecode
visually mapping dependencies for that particular call. Prefrebly i'd be
allowed to specify which calls I want to be part of the resulting

diagram
(internal calls, external calls, object instatiation). The result would
ideally be shown in an easy to understand graphical format whice i'd be
allowed to add my own comments to.

Anyone know of a tool that fulfills any/all of the above ? I've reverse
engineered the code using Rationals XDE, but within XDE I haven't found

a
tool to help me trace the dependencies of a specific "top-level" method
call. The XDE overview genereated was probably correct in itself. The
problem was that I've got several thousand classes of essentially

"unknown"
sourcecode to try and understand, getting all of it in a single diagram
doesn't help much, i need to be able to drill down further.


You could use ALF[1] to trace method invocations. ALF allows you to
specify classes and packages to trace. For more selective evaluation you
could easily write a script that massages the output, or at least selects
only those lines that contain the method you want to inspect. This way
you don't get a graphical output but you can recognize the calling tree
via indention.

Another option is to use doxygen [2] which generates a very nice,
hyperlinked documentation much like JavaDoc but with additional graphical
class diagrams (including dependencies), that can also be navigated. And
the source code is included and linked.

Regards

robert
[1] http://alfj.sourceforge.net/
[2] http://www.doxygen.org

Jul 17 '05 #3

"Linus Nikander" <li***@nikander.net> wrote in message
news:ax***************@news1.bredband.com...
After trying to manually reverse-engineer a piece of code i've been handed
using Visio I figure someone must have developed a tool that can do
automatically in 5 minutes what took me 2 hours.

What I need is a tool that i can tell to "start with this method call, and
show me what happens" . The tool would then go through the sourcecode
visually mapping dependencies for that particular call. Prefrebly i'd be
allowed to specify which calls I want to be part of the resulting diagram
(internal calls, external calls, object instatiation). The result would
ideally be shown in an easy to understand graphical format whice i'd be
allowed to add my own comments to.

Anyone know of a tool that fulfills any/all of the above ? I've reverse
engineered the code using Rationals XDE, but within XDE I haven't found a
tool to help me trace the dependencies of a specific "top-level" method
call. The XDE overview genereated was probably correct in itself. The
problem was that I've got several thousand classes of essentially "unknown" sourcecode to try and understand, getting all of it in a single diagram
doesn't help much, i need to be able to drill down further.

//Linus Nikander - li***@nikander.net


The DMS Software Reengineering Toolkit could probably do this relatively
easily.
It has a full Java front end, builds compiler data structures (ASTs) for an
entire
system of software with full name and type resolution.
From there, it can be customized to extract all kinds of interesting
information,
including what you are requesting. One example of extracted information
is a full cross reference according to the language rules; see our
Java Source Code Browser (and especially the example of it) at
http://www.semdesigns.com/Products/F...aHTMLizer.html.

To learn more about DMS,
http://www.semanticdesigns.com/Produ...MSToolkit.html.
--
Ira D. Baxter, Ph.D., CTO 512-250-1018
Semantic Designs, Inc. www.semdesigns.com


----== Posted via Newsfeed.Com - Unlimited-Uncensored-Secure Usenet News==----
http://www.newsfeed.com The #1 Newsgroup Service in the World! >100,000 Newsgroups
---= 19 East/West-Coast Specialized Servers - Total Privacy via Encryption =---
Jul 17 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: Philliph Mau | last post by:
Is there any (mybe free) tool, to visualize an mySQL Database with references betwen the tables, that I can print out? E.g.: I have seen, there is a table overview sheet with os-commerce in pdf...
11
by: Douglas Reith | last post by:
Hi There, Can someone please tell me why the XML spec states that an attribute value with an external entity is forbidden? Or point me to the appropriate document? Or better still, perhaps you...
1
by: Razvan | last post by:
Hi What is the difference between an internal and an external entity ? The first one is defined in the internal subset (not in a separate DTD file, but in the XML file itself - in...
14
by: Akseli Mäki | last post by:
Hi, Hopefully this is not too much offtopic. I'm working on a FAQ. I want to make two versions of it, plain text and HTML. I'm looking for a tool that will make a plain text doc out of the...
6
by: Christopher Benson-Manica | last post by:
Just FMI, if an external stylesheet is linked to a page (with <link>), will subsequent <style> tags override the values in the external stylesheet? -- Christopher Benson-Manica | I *should*...
47
by: Richard Hayden | last post by:
Hi, I have the following code: /******************************** file1.c #include <iostream> extern void dummy(); inline int testfunc() {
1
by: Gustaf Liljegren | last post by:
I've been working on a home project in SharpDevelop for a while now, and it's getting hard to overview now. It would help if I had a tool in which I could feed the whole C# combine/solution file...
3
by: al.cpwn | last post by:
do static and inline functions or members have internal linkage? I have been reading this newsgroup on google and found conflicting ideas. Can someone please help me understand why in some places...
3
by: Tony Johansson | last post by:
Hello! I want to say that I rather new to C# have only worked with it for 5 month. I'm now reading a book and there are some example on the internal key work that doesn't work as the book...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.