Presentation is loading. Please wait.

Presentation is loading. Please wait.

IMaGix 4D Presented by: Elliott Harrington Derek Larson Matt Heinzelman Cheneng Vang.

Similar presentations


Presentation on theme: "IMaGix 4D Presented by: Elliott Harrington Derek Larson Matt Heinzelman Cheneng Vang."— Presentation transcript:

1 iMaGix 4D Presented by: Elliott Harrington Derek Larson Matt Heinzelman Cheneng Vang

2 Imagix Corporation  Headquartered in San Luis Obispo, CA  Products for reverse-engineering, quality analysis and documentation of software  Applied in deep space communication, air traffic control systems, billing and management info. Systems, computer peripherals, communication devices and medical instruments

3 Customers include…  Boeing  General Dynamics  Intel  Lucent  Nokia  Siemens  Toshiba  Air Force  NASA  JPL  FAA  Sandia National Labs

4 What is Imagix 4D?  A software to help software developers…  Understand complex/legacy C & C++ software  Reverse engineer code  Document Code  Eliminate bugs  A comprehensive program understanding tool

5 Advantages  Rapidly check or systematically study your software on any level  Ability to visually explore your software  Review software metrics and source  Automatically creates design documents  Spend more time engineering  Get new hires on board faster  Reduces the cost of software maintenance

6 Features  Visualization  UML Diagrams  Control Flow  Metrics  HTML Docs

7 Visualization

8 UML Diagrams

9 Class Diagram Unified Modeling Language notation Classes Class’s members Class Hierarchy Can add relevant detailed member-level relationships (associations)

10 UML Diagrams File Diagram Same UML diagram format as the class diagrams Displaying package / member information at the file level physical location of the files Add in build dependencies

11 UML Diagrams Built-In Abstractions One mechanism to address the problem of scope. abstracting member to member relationships to the members‘ containers example, if classA::methodA calls classB::methodB, you're able to view a higher level graph where classA is shown as calling classB. You thereby can avoid becoming deluged in the details of the design

12 Control Flows

13 Control Flow Analysis  Control Flow mode provides the next level of detail beyond a call graph  Shows the order that all the function calls are made  See where a call is made all the time or just under some conditions  Able to accurately understand the dependencies in complex or sequence critical code

14 Flow Charts  Shows the complete control flow, or program logic occurring in each function  Helps you quickly grasp the internal logic of a routine  Sorts through if conditions, switch statements, and do loops  Linked to the File Editor so changes can be made quickly and easily  By seeing the source code in combination with the logic, you're able to understand and modify the function much more quickly and accurately

15 Function Pointer Support  Any variable with data containing function names is marked as a function pointer  All functions are recorded as being potentially called from a function pointer  If a function makes a call through the function pointer, then the function is shown as calling the function pointer variable

16  You can see the potential call tree by following the call relationship from the function to the function pointer variable  The result is that you end up with a complete and accurate understanding of your software.

17 Software Metrics and Design Documents

18 Software Metrics  Use to analyze all the measurements taken by Imagix 4D  Can list, sort, compare, and rank all files, classes, functions, and variables  Has many different general categories:  Lines of Source Code  Lines of Comments  Comments to Code Ratio  Number of Variables in a File  Number of Declarations in a File  Etc.

19  Also, has many specific categories:  Halstead’s Metrics  Mental Effort, Program Difficulty, and Intelligence Content  Inherited and Derived Classes  Class Coupling  Lack of Cohesion Between Classes  McCabe Cyclomatic Complexity  Etc. Software Metrics

20  Display in different formats: Absolute, Relative, and Graph  Can also change the thresholds of the data found

21 Documentation Using Imagix  Five to Fifteen percent of development goes into documentation  Imagix automates the system by using the data gathered and the source code  Outputs into three formats:  ASCII  RTF (Rich Text Format)  HTML

22 Documentation Using Imagix  Sorted into nine categories:  Project  Files  Classes  Functions (also Library)  Macros  Variables  Types (also Pre-Defined)

23 Downloadable Demo  WWW.IMAGIX.COM WWW.IMAGIX.COM  About 5MB  Unix or Windows  License restriction


Download ppt "IMaGix 4D Presented by: Elliott Harrington Derek Larson Matt Heinzelman Cheneng Vang."

Similar presentations


Ads by Google