Event Details

An Integrated Approach to Program Redocumentation Based on XML

Presenter: Dr. Scott Tilley - Department of Computer Science, University of California, Riverside, U.S.A.
Supervisor:

Date: Thu, May 2, 2002
Time: 13:30:00 - 14:30:00
Place: Engineering Office Building (EOW), Room # 430

ABSTRACT

ABSTRACT:

Software engineers rely on program documentation as an aid in understanding the functional nature, high-level design, and implementation details of complex applications. Unfortunately, such documentation - if it exists at all - is often of low-quality and out of date, usually provides a single perspective, and is difficult to integrate into the overall software process. This forces the engineer to spend an inordinate amount of time attempting to recreate an abstract representation of the system's high-level functionality by exploring its low-level source code. This is a very time-consuming and error-prone task, especially when one considers the amount of information assimilation and domain mapping that is required to understand the singular complexities of large-scale systems.

One way of creating high-quality program documentation for existing software systems is through reverse engineering. Reverse engineering is an emerging branch of software engineering that directly supports the essence of program understanding: identifying artifacts, discovering relationships, and generating abstractions. It can help a software engineer extract high-level information (such as system architecture) from low-level artifacts (such as source code) in an automated manner.

As part of a larger project focused on the reuse of software components in embedded real-time control systems, we have developed an integrated approach to program re-documentation based on standardized representations such as XML and commonly-available reverse engineering tools. The approach relies on maintaining consistency between the program documentation (in both textual and graphical forms) and the underlying software. The result is a documentation package that is always up to date, provides multiple perspectives, and is easily integrated into the overall production process. To illustrate the approach, selected aspects of the re-documentation procedure for a transmission control system from a commercial automotive engine is presented.