Understand: Visualize, Document, and Analyze Complex Codebases
A static code analysis tool providing call graphs, control flow graphs, metrics reports, dependency graphs, and more to understand code structure and quality.
What is Understand?
Understand is a powerful static analysis tool developed by Scientific Toolworks Inc. It is used to analyze, document, and visualize complex codebases to help developers understand code structure, quality, complexity, dependencies, and other important metrics.
Key features of Understand include:
- Code visualization - Understand generates intuitive graphical representations of code including call graphs, class diagrams, control flow graphs, and architectural overviews.
- Documentation generation - It automatically generates documentation of code elements like functions/methods, classes, files etc. Developers can customize templates for high quality documentation.
- Metrics and reporting - Understand calculates 100+ code quality metrics like cyclomatic complexity, maintainability index, comment density etc. It generates detailed reports to identify issues.
- Architecture analysis - It allows understanding architectural layers and dependency analysis to assess quality and identify violation of architectural rules.
- Language support - Understand supports analysis for languages like C/C++, Java, C#, Python, VB.NET, PHP, Verilog, VHDL, and others.
- Integration - It integrates with IDEs like Visual Studio, Eclipse etc for easy analysis during development. Understand CLI allows integration with CI/CD pipelines.
With its strong analysis capabilities and flexible visualization, Understand is invaluable for developing and maintaining complex codebases. The insights it provides helps developers assess quality, complexity, structure early in development cycles saving significant time and cost.