More than just a UML tool for object oriented code.
Understand™ is built around an intuitive static code analysis tool that will change the way you look at code. Think of it as a brain augmentation tool. Once you learn Understand™ it will help you work faster, smarter, and with fewer errors.
Manages Millions of Lines of Code
Understand™ is used daily on projects with hundreds of millions of lines of code. Know what your code's design is, as it changes, instantly.
UML at a Click
The Unified Modeling Language is the standard way to describe objects, their attributes and methods in object oriented programming languages. Understand™ is a UML modeling tool that generates UML for your project, classes, methods instantly.
Use Understand™ on your Linux box in the lab, on your Mac at home, and your PC at your desk. It provides the same functionality across all the platforms.
Object Oriented Metrics
In addition to showing you graphical representations of your code's "as built" design, Understand™ also measures it using common object oriented metrics, like Lack of Cohesion (LCOM) or Fan In and Fan Out.
Graphs and Diagrams
Everything in your code is analyzed and cross-referenced. Relationships are identified. You don't have to remember what objects depend on others, or what is affected if you change something. Understand™ will show you.
Just inherit a massive project? Understand™ can help.
"A large part of my career has been spent debugging and maintaining other people’s code and that means I spend a lot of time figuring out what a program actually did and how that was different from what it was supposed to do. Understand™ for C/C++ deals with that cognitive dissonance by helping me envision a program’s flow and structure and to figure out the changes necessary to fix the errors. It’s a very cool tool!"Senior Software Engineer, Scientific Games International, Inc.
Visualize Your Object Oriented Code
Detailed graphs can be generated in 60 seconds.
Object knowledge is always up to date as it changes
Dependency graphs quickly and easily show what parts of your code depend on other parts. These work on files, directories, classes and other major semantic units of your code. Dependencies can be semantic in nature (such as inherits, based from, implements), or procedurally (data is set, used, transferred).