Source code analyzer tools for J2SE / J2EE code base

  • Thread starter Manfred Schneider
  • Start date
M

Manfred Schneider

Hi,

I would like to analyze the source code of a larger Java / J2EE projects
repeatedly (every 4 weeks). Therefore I am looking for adequate tools
(commercial or open source) which offer following functionalities:

(1) Good visualization of Java packages, classes, interfaces, optionally
with attributes and methods.

Especially I am looking for tools which are really able to generate
readable and comprehensible visualizations for e.g. 30-50 Java
packages and 300-500 classes or interfaces.

A meaningful and really usable visualization printout should be
offered by the tools.

(2) Determination of dependency graphs for Java packages, classes
and interfaces. My objective is to repeatedly determine and check
the layering of the software during the complete project.

The visualization should be offered in table formas well as
graph form. Tables should show incoming/outgoing dependencies.
Graphs should have a good layout and should show a clear direction
(e.g. top to bottom or left to right).

A meaningful and really usable dependencies printout should also be
offered by the tools.

(3) Determination of simple metrics, like LOC (with or without
comments), number of packages, classes, interfaces, attributes,
methods, etc.

(4) Comparison of such metric evaluations over time (e.g. when the
tools measure the metrics each 4 weeks).

(5) Automation of the visualizations and determinations of the metrics
by scripting, program generation, etc.

Objective is to evaluate the code base each 4 weeks repeatedly
with minimal manual work.

What tools would you recommend for these required functionalities?

Thanks for your help.

Kind regards,

Manfred
 
N

Neeraj

Manfred,

Please check out Lattix LDM. It is designed for dependency analysis.
Features include:

1. It will let you visualize large systems. You can visualize and
understand systems containing tens of thousands of classes. The
representation is matrix based and uses hierarchy and ordering. In
order to read about this new approach you can read our paper on it
(from OOPSLA 2005) at
http://sdg.lcs.mit.edu/pubs/2005/oopsla05-dsm.pdf. You can also read
about it from our web site at
http://www.lattix.com/technology/whatisdsm.htm.

2. A variety of architectural patterns, including layering, can be
specified in a very succinct manner. You can then enforce these
patterns by doing updates at any time - every month, every week, every
build or prior to every checkin. In other words, round trip engineering
is effortless and automatic.

3. It generates a variety of architectural metrics which can then be
exported to excel for graphing purposes.

The net result is that architectural creep is prevented and
architectural evolution becomes explicit.

Neeraj Sangal
Lattix, Inc.
http://www.lattix.com
 
C

chedgers

Structure101 has pretty much everything you're looking for. Really nice
dependency graphs at any level (method, class, package, jar) that you
can export as jpg to include in docs or print. It also does
"autopartitioning" to make unreadable graphs more readable. Plus a nice
simple, customizable metrics perspective. You can download a beta for
free here:

http://www.headwaysoftware.com/downloads/beta.htm

(Check out the online demos first to see if it's really what you want).

Chris.
 
I

iamfractal

Manfred Schneider skrev:
Hi,

I would like to analyze the source code of a larger Java / J2EE projects
repeatedly (every 4 weeks). Therefore I am looking for adequate tools
(commercial or open source) which offer following functionalities:

Hej!

Fractality satisfies (barely) just two of your requirements, but what
the heck - at least it's free. (Scripting and LOC-analysis is coming in
January, so that'll be another two requirements down.)

Here's the download page, which also sports some graphical output, so
you can see how it handles, "Large," projects:

www.EdmundKirwan.com/servlet/fractal/frac-page130.html

..ed
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,186
Members
46,739
Latest member
Clint8040

Latest Threads

Top