jGRASP An Integrated Development Environment with Visualizations for Improving Software Comprehensibility


Home
Download
Contact Us
Team Members
Resources
Archive
Privacy Policy
Support jGRASP

Documentation

jGRASP Help
On-line Papers
Tips
FAQ
Known Bugs
Version History
Future Plans
License

Intro Videos

Getting Started
Interactions

Tutorials (PDF)

Overview (2.0)
Installation
Getting Started (2.0)
Objects First
Interactions
CSD (2.0)
Debugger
Projects
UML
Workbench
Viewers
Canvas (2.0)
All (zipped)

Sponsors
NSF

    
Current jGRASP release is version 2.0.0_12 (July 17, 2014).



About jGRASP

jGRASP is a lightweight development environment, created specifically to provide automatic generation of software visualizations to improve the comprehensibility of software. jGRASP is implemented in Java, and runs on all platforms with a Java Virtual Machine (Java version 1.5 or higher). jGRASP produces Control Structure Diagrams (CSDs) for Java, C, C++, Objective-C, Python, Ada, and VHDL; Complexity Profile Graphs (CPGs) for Java and Ada; UML class diagrams for Java; and has dynamic object viewers and a viewer canvas that work in conjunction with an integrated debugger and workbench for Java. The viewers include a data structure identifier mechanism which recognizes objects that represent traditional data structures such as stacks, queues, linked lists, binary trees, and hash tables, and then displays them in an intuitive textbook-like presentation view.

jGRASP is developed by the Department of Computer Science and Software Engineering in the Samuel Ginn College of Engineering at Auburn University.



Note on Tutorials

We are in the process of updating the tutorials for jGRASP 2.0. The four updated tutorials that are available now cover most of the new features.



New Releases

Version 2.0.0_08 introduces basic support for Java 8. It should run correctly under Java 8 and all functions should work correctly for code compiled under Java 8 unless it has new Java 8 features. CSD generation, CPG generation, interactions, and other uses of Java expressions in the debugger do not yet support new Java 8 features.

Version 2.0.0_08 has much better display speed when running under Java 7 on most Mac OS X systems. Fonts should now be sized similarly to native applications on OS X when running under Java 7 update 40 and higher.



New Features in jGRASP 2.0.0

A new Viewer Canvas for Java that allows multiple viewers to be placed in one window, and the open viewers and viewer settings to be saved to file and to persist between debugging sessions.

Unicode support with the ability to manually specify the encoding (if something other than the system default is needed) when opening or saving a file.

Support for Python, including CSD generation.

Project management for C, C++, Objective-C, and Ada: the ability to compile and link multiple files without creating a makefile and support for separate source and binary directories.

Changes to the CSD so that with the CSD removed the code is formatted with standard 3 space indentation. There are no longer 3 leading spaces on all code. Exception handlers no longer have an "extra" level of indentation. The new CSD generator will attempt to correct for code with leading space (code indented with CSD generation in older versions of jGRASP) and for code with an indent size different from 3 spaces.



Acknowledgments

The development of jGRASP has been supported by a research grant from the National Science Foundation.

The development of previous versions of GRASP was supported by research grants from NASA Marshall Space Flight Center, the Department of Defense Advanced Research Projects Agency (ARPA), and the Defense Information Systems Agency (DISA).


    
G
Download jGRASP

G
Institutions Using jGRASP

G
Support jGRASP

Control Structure Diagram (CSD)
CSD

UML Class Diagram
UML

Java Workbench
Workbench

Viewers
Workbench

Interactions
Interactions

Java Debugger
Debugger

Complexity Profile Graph (CPG)
CPG



Copyright © 2014 Auburn University
Valid HTML 4.0