Source Code
| Imagix 4D helps software developers comprehend complex or legacy C, C++ and Java source code. By using Imagix 4D to reverse engineer and analyze your code, you're able to speed your development, enhancement, reuse, and testing. Eliminate bugs due to faulty understanding. Get new hires on board faster. Spend time engineering, not reading through code. A comprehensive source code analysis tool, Imagix 4D enables you to rapidly check or systematically study your software on any level -- from its high level architecture to the details of its build, class and function dependencies. You can visually explore a wide range of aspects about your software - control structures, data usage, and inheritance. All based on Imagix 4D's precise static analysis of your source code. You're able to find and focus on the relevant portions of your source code through Imagix 4D's querying capabilities. Automated analysis, database lookups, and graphical querying all sift through the mountains of data inherent in your source code so you examine the structural and dependency info you're interested in. Quickly and accurately. | |
| Watch Demo » |
|
Underneath Imagix 4D's powerful software visualization and analysis functionality is a precise, comprehensive database, generated through a full semantic analysis of your source code.
This precision is achieved in part through the use of compiler configuration files. These enable Imagix 4D's source analyzer to parse your code the same way your specific compiler does, supporting the same language extensions and keywords, and using the same system header files.
|
Full language support includes:
|
|
An extensive range of graphical view types, 15 in all, include a number of high level views. These provide a 'big picture' perspective and analysis of your software's inherent architecture - its components, dependencies and packaging.
Some of these high level views use abstraction to represent information at a less granular level than it actually occurs in the source code. For example, function calls can be summarized at the class level, so that ClassA::FunctionA calling ClassB::FunctionB can be represented as ClassA calling ClassB.
|
High level displays include:
|
|
You can begin your source code analysis with less complex, high level views and then show more and more detail with a few clicks. Drilling down through increasingly granular views provides more detailed understanding of particular portions of the software.
You're able to find and analyze the control flow, data usage and type dependencies that underlie your software. And through Imagix 4D's interactive graphs, you're able to follow specific implementations and trace their impacts on other parts of your code.
|
Mid level displays include:
|
|
Complementing Imagix 4D's extensive set of displays for control flow analysis, the Calculation Trees present information about the assignments leading to the current value of a variable. You're able to examine all of the initializations, sets and reads, of any variable, that contribute to a specific variable's value.
Automatically generated from Imagix 4D's comprehensive database by the data flow engine, the calculation trees track assignment dependencies across function boundaries and through parameter passing.
|
Calculation Tree displays:
|
|
Individual displays are leveraged by distributing information between different view types, and displaying multiple views side by side. For example, one graph might show the control flow by which one function indirectly calls another. Next to that, for added perspective, might be a Subsystem Architecture diagram showing the specific subsystems that are involved in that calling hierarchy.
The information and navigation available in the Graph windows, Flow Charts and Calculation Trees is further supplemented by an extensive and integrated set of complementary displays.
|
Addition displays include:
|
|
What makes Imagix 4D's software visualization especially powerful is the ability to focus the displays on the information of interest. With database lookups, graphical querying and drill down capabilities, you're able to identify and explore the relevant portions of your source code.
And with the Analyze feature, you're able to direct Imagix 4D to do much of the analysis for you. You can quickly examine important interfaces and automatically track down critical dependencies.
|
Automated analyses include:
|