The GRASP Project has created an algorithmic-level graphical representation for software called the Control Structure Diagram (CSD). The CSD was created to improve the comprehension efficiency of Ada source code and, as a result, improve software reliability and reduce software costs. Since its creation, the CSD has been expanded and adapted to include other languages. GRASP provides the capability to generate CSD's from Ada 95, C, C++, Java, and VHDL source code in both a reverse and forward engineering mode with a level of flexibility suitable for professional application. GRASP has been integrated with the GNU family of compilers for Ada (GNAT) and C (gcc), and Sun's javac compiler for Java. Use of GRASP is not restricted to these compilers, however. This has resulted in a comprehensive graphically-based development environment for these languages. The user may view, edit, print, and compile source code as CSDs with no discernible addition to storage or computational overhead.
The Texttools packages are an ncurses-based library for the Linux console written in Ada 95. It contains more than 600 procedures and functions to create windows, draw scroll bars, handle the mouse and keyboard events, play sounds, and much more. It also provides a thick binding to Linux kernel calls. You can create a wide variety of application programs using Texttools alone.
TIA is an ncurses-based console IDE for GCC, G++, Java, Perl, PHP, BASH, BUSH, HTML, and GNAT (Ada 95). It has integrated support for CVS, SVN, and ncurses compatible mice. Features include a ddd-style console debugger, automatic spelling correction, keyword hilighting, project statistics, automatic backups, and keyboard macros. The project window controls optimization and debug settings all in one place. TIA supports make, cook, and gnatmake project builders. For large projects, each user has a separate preference file.
Zephyr Basecamp is a functioning GTK frontend and PostgreSQL backend enterprise project that gives small and midsize businesses the same level of inventory, order entry, sales tracking, and accounting functionality as would be expected from commercial applications. It has interfaces for both X11/GNOME/Linux and Windows.
Fenris is a multipurpose tracer, debugger, and code analysis tool that detects and documents high-level language constructions, can recover symbols, graph program execution flow, detect internal functions, recover symbol tables, and deal with anti-debugging protection. It features a command-line interface as well as a SoftICE-alike GUI and Web frontend.
WIPORT is a layer over the grx graphics library which provides a simple GUI API with memorization of the objects displayed in the various windows. This makes redrawing and printing to a scalable PostScript representation easy to do. Thanks to the grx library programs, using WIPORT works identically on the DOS graphical console, Linux+svgalib, and Linux+X11. WIPORT is written in C and comes with an Ada-95 binding.
Visual Paradigm for UML is a Unified Modeling Language (UML) design tool that supports all UML diagrams, SysML diagrams, and entity relationship diagrams. Visual Paradigm for UML provides extensive use case modeling features, including full function UML use case diagram, flow of events editor, use case/actor grid, and activity diagram generation. Visual Paradigm for UML produces system documentation in PDF, HTML, and MS Word formats. A developer can design system documentation with the template designer. A system analyst can estimate the consequences of changes with impact analysis diagrams, such as matrix and analysis diagram. Visual Paradigm for UML generates Java code.