Introduction

The Dependency Tool is a java based application to analyze the dependencies of packages and classes in java projects. The results will be represented as graphics or as reports. The use of this tool may become essential for project comprehensions, reverse engineering, statistics and quality assuarance.

Although the tool was firstly developed to display violations according to the 'layers architectural pattern', it became a general project comprehension and visualization tool.

Beside its graphical interface, this tool can be used as a command-line utility to generate projects reports (e.g. layering violations, metrics, etc.).

The existence of an apache-ant task allows a saemless integration into a project-build process.

Main Use-Cases

Name Description
Project comprehension Understanding the structure of complex software projects. (e.g. for new developers on a project, for maintenance developers, etc.)
Reverse engineering e.g. for maintenance developers.
Quality assurance QA-Agents can easily plug the Dependency Tool into the build process of a java-project and use the generated reports for their reviews and QA-talks.
Project statistics Number of classes, average number of classes per package, number of packages in project, etc.