Source code analyzer tools for J2SE / J2EE code base

Discussion in 'Java' started by Manfred Schneider, Dec 4, 2005.

  1. 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
    Manfred Schneider, Dec 4, 2005
    #1
    1. Advertising

  2. Manfred Schneider

    andreaz Guest

    Check the MagicDrawUML 10 Enterprise edition.
    andreaz, Dec 5, 2005
    #2
    1. Advertising

  3. Manfred Schneider

    Neeraj Guest

    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
    Neeraj, Dec 5, 2005
    #3
  4. Manfred Schneider

    chedgers Guest

    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.


    Manfred Schneider wrote:
    > 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
    chedgers, Dec 6, 2005
    #4
  5. Manfred Schneider

    Cos Guest

    Hi.

    Did you have a look at latest Java Studio Enterprise from Sun? They
    have a round-trip application development process, i.e. from UML to
    code and back. Sun gives these applications for free nowadays. Check
    this out here: http://developers.sun.com/prodtech/javatools/free/

    --
    WBR,
    Cos
    Cos, Dec 14, 2005
    #5
  6. Manfred Schneider

    Guest

    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

    --
    www.EdmundKirwan.com - Home of The Fractal Class Composition.
    , Dec 15, 2005
    #6
  7. Hi,

    thanks for all your hints :)

    Regards, Manfred



    Manfred Schneider wrote:
    > 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
    Manfred Schneider, Dec 17, 2005
    #7
    1. Advertising

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

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Razvan

    J2SE, J2EE, CLASSPATH

    Razvan, Aug 9, 2004, in forum: Java
    Replies:
    5
    Views:
    8,003
    Sudsy
    Aug 10, 2004
  2. Martijn Mulder

    J2SE 1.4.2 or J2SE 5.0?

    Martijn Mulder, Jun 27, 2005, in forum: Java
    Replies:
    15
    Views:
    1,836
    Tor Iver Wilhelmsen
    Jun 28, 2005
  3. Replies:
    0
    Views:
    516
  4. Patrick Goovaerts

    Log analyzer tools

    Patrick Goovaerts, Sep 15, 2008, in forum: Java
    Replies:
    1
    Views:
    492
    Tris Orendorff
    Sep 21, 2008
  5. Eric Hodel

    [ANN] Rails Analyzer Tools 1.1.0

    Eric Hodel, Sep 23, 2005, in forum: Ruby
    Replies:
    1
    Views:
    172
    Chris Martin
    Sep 24, 2005
Loading...

Share This Page