Using the Class Dependency Analyzer

Using the Class Dependency
Analyzer for OODT
Joshua Garcia
• A software system has many dependencies
– Programming language level
• Finding relevant dependencies
• Displaying dependencies in an understandable
• Usable
• Simple
Motivation – iRODS - Prescriptive
Motivation – iRODS - Descriptive
• Class Dependency Analyzer (CDA)
– Find dependencies
– Visualize them
– Relatively Usable and Simple
• Granularity
– Package, class, jar, directory structure
Compiling OODT
You will need Apache Maven
Please refer to the Maven website about how to install Maven
Maven will need to download dependencies
Compiling all of OODT takes long
– If you want try compiling all of OODT, going to the top directory
containing all the source directories and a pom.xml file and type
• mvn install
• You can change to each source directory in the OODT tar.gz file that
has a pom.xml and use the following command to compile
– mvn install
• Compiling with Maven
– Go to the core directory of OODT and type “mvn install” without the
Installation of CDA
• Unzip the archive to any directory you
• Then ensure that environment variable JAVA_HOME is
set to a Java Runtime Environment 1.5.0 or higher.
• Open a command shell in the directory to which you
unzipped the archive.
• Run the script sssgen.bat or to generate a
start shell script that invokes the tool with absolute
classpath entries in order to allow to start it from
anywhere in the file system.
• Eventually a run.bat (or on Linux) must be
available in the directory
Importing Source to Analyze
• File->New
• Workset Wizard dialog appears
• In the General tab, enter a Name in the associated text
• In the Classpath tab, click the add button
– Can select jar, Eclipse .classpath file, folder containing
.class files
• Display Filter tab and Ignore Filter tab
– Filter out package patterns
• Once you click the save button in the Workset Wizard,
you will be asked to save your workset.
Highlighted Features
• Find
All dependents
Direct dependents
All implementors
• Graphs that show all dependencies between two classes
• Show dependency, graph, or hierarchy view for selected elements
• Tabular views of dependencies
– Copy and paste to text
• Different icons for different kinds of entities
• Finding main methods
– Right click on the workset row or icon
• Find duplicate classes
• Circular dependencies
– Doesn’t seem to work

similar documents