Bring Your Code to Life Using Graphs

Do you want to better understand your codebase? Using Understand's Graphs feature is a great way to explore your project. Understand offers a variety of graphs including dependency, control flow, call graphs, and more.

Walk through your code using Control Flow Graphs to see exactly how it works.
Butterfly graphs are used in Understand to represent relationships between various elements of code.

Use Graphs to Explore and Explain Your Project

Graphs are a visual representation of your code. Seeing your project visually helps you better understand relationships within your code, identify patterns and errors, and share your work with others.

Show off your work by creating your own cool graphs in Understand
Sync and display graphs automatically as you work
Optimize your work by understanding relationships between entities in your code
A Butterfly graph usually displays both calls and called by at the same time, but other relationship are also possible.
Understanding Graphs in Understand

Using Graphs to Optimize Your Code

Dependency, Control Flow, and Call Graphs

The most popular graphs in Understand include Call and Called by, Butterfly, Object References, Control Flow, UML Class Diagram, UML Sequence Diagram, Data Flow, Dependency, and Declaration.

Easily Switch Between Graph Variants to View Similar Graphs

Graph variants allow you to quickly change the content and style of a graph. For example, to group functions by file or architecture, use a cluster graph variant (shown below). The relationship variant of a call graph will show all the paths between two functions. The compare variant highlights changes between your current project and a previous version of your project. Specific graphs have even more variants to explore.

Choose How to Configure and Display Your Graphs

Choose from a variety of options in the submenu to interact with your code in helpful and interesting ways. For example, there are a variety of node options to select from in the customizer toolbar and/or legends.

Use Graphs to Display and Explain Your Work

Graphs can be saved as JPEG, PNG, or SVG files. Share your graphs digitally, or print a physical copy of your work to share with others. We not only let you create cool graphs, but you can also edit and customize them with the Visio (vdx, vsdx) and Graphviz (dot) exports.

Save Time with Understand

“What would have previously taken me several days (or weeks) can now be accomplished in a matter of hours… It’s the Swiss army knife of static analysis tools.”

Randall Landaiche


​“[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.”

Paul Hyland

Lockheed Martin

​“Understand accelerates my understanding of large source code repositories.”

Chris Rhodes


Trusted by over 20,000 developers

Customer Case Studies

Learn how software developers across different industries use Understand to accelerate their workflows.

“[Understand] has great graphing tools, metrics, reporting, data dictionary… and is customizable and extensible. It also helps you to find compile time and parsing errors.”

– USAF Software Developer

“Understand can take existing code and basically generate any design information or view you would want to see, in addition to performing several useful types of analyses.”

– Jason Bold, Sr. Software Eng.

​“Understand is a tremendous reverse engineering tool... with excellent metrics reporting and evolving standards verification capability.”

– Pratt & Whitney Software Developer

​“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, and I would not have had near as much confidence in my own work (assurance that I understood the code correctly).”

– Paul Hyland, Software Engineer, Lockheed Martin

Icon - Elements Webflow Library - BRIX Templates
Icon - Elements Webflow Library - BRIX Templates

Try Understand for Free Today!

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