DependencyAnalyser
Download DependencyAnalyser. Requires Mac OS X 10.5 or later.
Release notes.
Class dependency information
AnalysisTool outputs a file named
Class dependency graph-AnalysisTool.xml when it analyses a project.
DependencyAnalyser takes that file and gives an interactive interface for analysing the dependencies
between classes.
Classes with name starting with "NS" are filtered out automatically.
Categories depend on the classes they extend as if they were subclasses.

- Target Popup
- Top left corner. Choose target to analyse. Lists all targets and subprojects.
- Classes List
- Left-most column. Select class to analyse. By double-clicking you can open a new window.
You can also find specific classes using the search field to filter the list.
Out and In columns show how many classes the selected class depends on and
how many classes depend on it.
- Dependencies Browser
- Multicolumn thing next from Classes List. Lists all dependencies for the selected class.
By clicking an item you can see its dependencies, and dig through the dependency network.
- Recursive Dependencies List
- Column in the middle. For the selected class, shows all dependencies and their dependencies
recursively.
- Dependents Browser
- Second column (or multicolumn thingy) from right. Lists all classes that have a dependency to the class selected
in the Classes List. By clicking a class you can see its dependents, and dig through the dependent network.
- Recursive Dependencies List
- Right-most column. For the selected class, shows all dependents and their dependents
recursively.
Configuring Dependencies
DependencyAnalyser recognizes and can show multiple kinds of dependencies between classes and protocols.
You can enable those relationships as visualized dependencies you wish to examine. If nothing is selected,
no dependencies are shown.
- Super Class Is Dependency
- Super class is shown as a dependency when this is enabled.
- Subclasses Are Dependencies
- Adds subclasses to the list of dependencies when this setting is enabled.
- Association Is Dependency
- Associations are shown as dependencies. This was the default behaviour in previous release.
Association means calling a method on an instance or a class, or having an instance variable
of the type in question.
- Instantiation Is Dependency
- Instantiations are shown as dependencies. This is a specific type of association.
Feedback is highly appreciated.