ICSE 2001 Logo   Rigi Logo
 
Description: What it is
Rigi is an interactive, visual tool designed to help you better understand and re-document your software. It has been in development over the past decade by researchers in the Department of Computer Science at the University of Victoria. The whole project is overseen by our principle investigator, Dr. Hausi Müller. Our two main goals are:
  1. to provide an infrastructure for research and practice in program understanding, and
  2. to discover abstractions in large software systems, and pass this information on to software engineers for maintenance and reengineering purposes.

The general Rigi graph model, and the supporting graph editor, rigiedit, arose as a result of our early work on algorithms for the analysis, representation, and visualization of software structure. Software structure refers to a collection of artifacts that software engineers use to form mental models when designing, documenting, or analyzing systems. These artifacts include software components such as subsystems, procedures, variables, calls, data accesses, and interfaces; dependencies among components such as client-supplier, composition, and control and data-flow relations; and attributes such as component type, interface size, and interconnection strength.

Currently, the group is focusing on visualization support to aid in the understanding and reverse engineering of legacy systems. This support is embodied in the form of a general Rigi graph model, and realized in an editor called rigiedit. Inherent in the model is the notion of nested subsystems that encapsulate detail, providing high level overviews of software systems. Recent work has generalized both the model and the tool, thus allowing the use of the graph editor in other domains, and user defined extensions to the built-in Rigi Command Library.

What it is
How it works
Features
Platforms
Methodology
Success
Glossary
FAQ

<< previous | next >>