IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  Java technology  >  

Structural Analysis for Java

A technology that analyzes structural dependencies of Java applications, measures stability, detects structural "anti-patterns," and more.


Date Posted: March 1, 2004
OverviewRequirements Download FAQs Forum Reviews

Update: March 31, 2004

Fix Pack 1 contains a bug fix for SA4J's inability to create Report and generate the Skeleton view with certain applications.

What is Structural Analysis for Java?

Structural Analysis for JavaTM (SA4J) is a technology that analyzes structural dependencies of Java applications in order to measure their stability. It detects structural "anti-patterns" (suspicious design elements) and provides dependency web browsing for detailed exploration of anti-patterns in the dependency web. SA4J also enables "what if" analysis in order to assess the impact of change on the functionality of the application; and it offers guidelines for package re-factoring.

This technology runs on several versions of Windows®, Linux®, and Sun Solaris.

How does it work?

Following is an overview of SA4J's features and benefits:

Stability Analysis: Measures quality of the application structure by evaluating the web of dependencies between packages, classes, and interfaces of a Java application.

Benefits:

  • Quantitative and deterministic evaluation of the application structure
  • Easily-understandable reports asist both architectural experts and non-technical audience
  • Provision of a degree of confidence that an application is ready to be released.

Antipattern Detection: Detects bad design elements based on the set of known bad design examples.

Benefits:

  • Automatic detection of architectural problems in the analyzed application
  • Presentation of common design issues in a UML visual representation
  • Reduction of the number of antipatterns increases the application stability.

Dependency Web Browsing: Visual explorer of the dependencies and dependents of every package, class, or interface in the application.

Benefits:

  • A detailed picture of relationships between application components
  • A detailed map of dependencies for assistance in refactoring.

Package Analysis: Graphical view into the physical and logical organization of the application's packages.

Benefits:

  • Easily-understand starting point in the analysis process
  • It serves as a guideline for package refactoring.

"What if" Analysis: Visually pinpoints dependencies affected by the selected component.

Benefits:

  • Ability to determine the impact of change without having to do it first
  • Warns about pitfalls in making modifications destined to be riddled by side effects.

About the technology author(s):
Alex Iskold is the architect of application analysis technologies. Prior to joining IBM, Alex was founder and CEO of Information Laboratory, a company that pioneered a structural analysis tool called Small Worlds. Mr. Iskold holds a B.S. in mathematics from Lehigh University and an M.S. degree in Computer Science from NYU.

Daniel Kogan is the development manager of application analysis technologies. Prior to joining IBM, he was founder and CTO of Information Laboratory, a company that pioneered a structural analysis tool called Small Worlds. Mr. Kogan holds a B.S. degree in Computer Science from NYU.

Goran Begic is the product manager for application analysis technologies. During the past five years, he was involved in sales enablement and customer support of Rational Software's run-time analysis tools. Mr. Begic holds a B.S. in Electrical Engineering from the University of Zagreb, Croatia.

View screenshots:
Dependency Web Browsing

Download now Download now

Related technologies

For platform(s):
Multi-Platform

For topics:
analysis, antipattern detection, visualization


Related resources

Visualization Research topic

Press Articles

 

    About IBM Privacy Contact