Imagix 4D User Guide

Using Imagix 4D - Advanced Topics

Imagix 4D helps you analyze, document and improve complex, third party or legacy C, C++ and Java software. It speeds your comprehension of programs that are large, complex, unfamiliar or old, by automating the browsing and analysis of your code. You can use the tool to rapidly review or systematically study your software on any level -- from its high level architecture to the detailed program logic of individual functions. You can visually explore a wide range of aspects about your software - including control structures, data usage, and class inheritance. Through this process, you can achieve faster, more accurate program understanding, resulting in higher productivity and fewer software defects.

The quality analysis features of Imagix 4D help you to identify potential problems in the development and maintenance of your software. A series of analytical verifications of variable usage, task interaction and interrupt protection enable you to spot potential conflicts in real-time embedded and multi-tasking, multi-threaded systems. You can use source checks to find exceptions to generally agreed upon design and coding standards for clarity and portability. And software metrics help you manage your development process and spot areas of your software that don't meet your organizational criteria for testability and maintainability.

Imagix 4D also eliminates much of the drudgery involved with creating documents for structure analysis, code reviews and system design documentation. You're assured of comprehensive, accurate, up-to-date information through automatically generated documents, available in a number of formats, including RTF and HTML.

The Information Displays section of this User Guide introduced the underlying data model and the full range of displays for achieving these results. This section goes into greater detail on certain of the features and functions of Imagix 4D, particularly those that are unique or extensive.

Graphical Analysis

The Graph windows help you understand and analyze your software by pictorially representing the structure and dependencies inherent in your code. Extensive controls enable you to control the format and contents of the Graph window so that you're able to visualize the information specific to the task at hand.

Data Flow Analysis

By using static analysis to follow the program control flow over multiple levels and to track how data is manipulated during these execution paths, data flow analysis provides insight into program behavior and identification of potential problem areas.

Delta Analysis

Delta Analysis identifies differences between versions of your software at a structural level, not as mere file diffs. Identifying symbols unique to one version or the other, it also detects any changes in the dependencies and usage of symbols that are common to both.

Review Tool

The Review Tool supports a guided review of your software using checklists such as CWE, MISRA, CERT-C and ISO xxx. You're able to methodically identify those specific portions of your software that pertain to the checks, and apply Imagix 4D's general analysis and visualization functionality to assess your code.

Software Metrics

The tool collects a wide range of quantitative measurements about the various symbols that make up your software. The metrics displays along with the integration of information into to standard displays help you to identify potential problem areas in your code and to measure the progress of your development effort.

Generating Documentation

Imagix 4D's document generation facility enables you to automatically create detailed documentation from the information in the tool's database. By controlling the document's scope and format, you can generate documents for use in any of a wide number of scenarios.