New Onboard is here — AI-guided, self-hosted onboarding for your codebase. Learn more
Features Code Navigation Static Analysis Graphs Compliance Metrics Custom API How it works Compliance FAQs Pricing Docs Start free trial
Dependency analysis

See what your code actually depends on

Analyze dependencies between modules, classes, functions, and custom architectures. Make informed decisions regarding refactoring, optimization, and overall code organization.

Files and entities · Architecture nodes · Graphs and configurable checks

Refactoring

Understanding these dependencies helps in managing changes and refactoring the code in a controlled manner, rather than finding out what broke afterwards.

Optimization

See how different parts of the code interact with each other, so the work you do lands where the coupling actually is.

Code organization

Group entities into architectures and analyze the dependencies between those groupings instead of raw directories.

Three ways in

Browse them, graph them, check them

The same parsed model, looked at three different ways.

The Dependency Browser

The Dependency Browser lets you examine which items are dependent on others. You can use the Dependency Browser with architecture nodes, files, and most entity types.

The Dependency Browser in Understand, listing what a selected file depends on and what depends on it.

Dependency graphs

Understand can generate visual representations of code structure, such as call graphs and dependency graphs. These visual maps can help you see how different parts of the code interact with each other, making it easier to understand and untangle complex relationships.

A project-wide dependency graph in Understand, with each node a part of the project and each edge a dependency between them.

Dependency checks on your architectures

Dependency checks verify that certain architecture nodes do or do not depend on other nodes or make circular references. These checks are easily configurable.

The Architecture Designer in Understand, used to build architecture nodes and configure dependency checks between them.

“[Understand] is good for discovering the structure of the code dependencies and call-paths... it would have taken me hours to generate the same thing on my own.”

Get started

Map your dependencies before you touch them

Our free trial enables all features that can be used on a sample code base.