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

Slides:



Advertisements
Similar presentations
Visual Scripting of XML
Advertisements

Chapter 2: Modularization
Tutorial 12: Enhancing Excel with Visual Basic for Applications
OFFICE CHOUM AHMED Microsoft Excel Lesson 04.
IEC Substation Configuration Language and Its Impact on the Engineering of Distribution Substation Systems Notes Dr. Alexander Apostolov.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 2.
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Detailed Design Kenneth M. Anderson Lecture 21
Chapter 9 Describing Process Specifications and Structured Decisions
Chapter 1 Assuming the Role of the Systems Analyst
Microsoft Visio is diagramming software for Microsoft Windows. It uses vector graphics to create diagrams. The 2007 Standard and Professional editions.
Chapter 1 Principles of Programming and Software Engineering.
Chapter 1 Assuming the Role of the Systems Analyst
JArchitect Benefits by CoderGears
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
© InLoox ® InLoox PM Web App product presentation The Online Project Software.
ACM/JETT Workshop - August 4-5, 2005 UML Modeling using MagicDraw UML for Java Programmers.
Open and save files directly from Word, Excel, and PowerPoint No more flash drives or sending yourself documents via Stop manually merging versions.
Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Introduction to High-Level Language Programming
INFO415 Approaches to System Development: Part 2
Systems Analysis And Design © Systems Analysis And Design © V. Rajaraman MODULE 14 CASE TOOLS Learning Units 14.1 CASE tools and their importance 14.2.
Requirements Analysis
® IBM Software Group © 2009 IBM Corporation Rational Publishing Engine RQM Multi Level Report Tutorial David Rennie, IBM Rational Services A/NZ
Chapter 9 Describing Process Specifications and Structured Decisions
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Multi-agent Research Tool (MART) A proposal for MSE project Madhukar Kumar.
Prepared by: Sanaz Helmi Hoda Akbari Zahra Ahmadi Sharif University of Tech. Summer 2006 An Introduction to.
Chapter 1 Introduction to SAS ® Enterprise Guide ®
CppDepend Benefits by CoderGears
1 On to Object Design Chapter 14 Applying UML and Patterns.
1 Programming Tools Slides by: Noppadon Kamolvilassatian Source: Code Complete by Steve McConnell, Chapter 20.
Introduction to Computer Programming Using C Session 23 - Review.
All Search Platforms are Created Equal … Myth or Reality Presented by Matt Dunie President, CSA
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
SYSTEMSDESIGNANALYSIS 1 Chapter 20 Software Engineering Jerry Post Copyright © 1997.
Paper written by Brian Berenbach Presentation by Matthew Merricks.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Source Mastering UML with Rational Rose 2002 Information System Engineering Introduction to UML.
® IBM Software Group © 2007 IBM Corporation Rational Transformation Workbench Analyzer for Eclipse V3.1 Name Title address.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Chapter 1 Introduction to Systems Design and Analysis Systems Analysis and Design Kendall and Kendall Sixth Edition.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
MNP1163/MANP1163 (Software Construction).  Minimizing complexity  Anticipating change  Constructing for verification  Reuse  Standards in software.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with the IBM Rational Software Architect, V7.5 Module 15: Traceability and Static Analysis.
Source Mastering UML with Rational Rose 2002 Information System Engineering Introduction to UML.
Object-Oriented Software Engineering Practical Software Development using UML and Java Modelling with Classes.
InLoox PM Product Presentation Slide 1 InLoox PM Product Presentation © InLoox, Inc. InLoox PM 8 for Outlook Product Presentation The Project.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
COMPREHENSIVE Excel Tutorial 12 Expanding Excel with Visual Basic for Applications.
Chapter 1 Assuming the Role of the Systems Analyst.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
Static Software Metrics Tool
Principles of Programming & Software Engineering
Building Enterprise Applications Using Visual Studio®
Assessment of Geant4 Software Quality
Software Engineering (CSI 321)
Microprocessor and Assembly Language
System Design.
Principles of Programming and Software Engineering
Abstract descriptions of systems whose requirements are being analysed
InLoox PM Web App product presentation
Introduction to Computer Programming
Presentation transcript:

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

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

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

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

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

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

Visualization

UML Diagrams

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

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

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

Control Flows

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

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

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

 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.

Software Metrics and Design Documents

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.

 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

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

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

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

Downloadable Demo   About 5MB  Unix or Windows  License restriction