@(#)r3wOverview.htm 1.2 - 04/06/04
RECON3 Home
Download RECON3
RECON3 Overview
Software Engineers frequently need to work with code written by others,
for example when enhancing or fixing an existing program, when
attempting to use an unfamiliar class library, or when integrating
several software products to produce a new system. Working with other
people's code is difficult, since the documentation rarely tells you
everything you need to know. Debuggers can be useful, but are difficult
to use on large systems unless you have a starting point; it takes
too long to step through all the code to find the problem.
RECON3 instead lets the Software Engineer generate and analyze traces of
execution from the program. The toolset provides for:
- Instrumenting the source code for a Software Engineer's
program (which we call
the target program). The Software Engineer may also insert
instrumentation statements by hand. When the target program is compiled
and executed with test data, each instrumentation statement
triggers a trace event.
- Monitoring the trace events and generating trace records
for analysis. The Software Engineer may use a RECON3 trace
monitor to turn tracing on or off in different parts of the
target program or to control tracing of different kinds of events.
- Analyzing or displaying the trace records to better understand
the target program.

RECON3 Tools Overview
The tools are written in either standard ANSI C or in Java.
While specific requirements for each tool vary, in general
you will need a recent version of the
Java Platform for your
operating system, a compiler for ANSI C or C++, and a compiler for
the language of your target program.
RECON3 distributions are provided for Unix and Win32 operating systems.
These distributions can be run from the command line, user-written scripts or the Recon3 Graphical User Interface.
While some tools are provided in executable form for Win32,
source code is also provided and you are welcome to modify the tools
to fit your needs. We ask only that credit be given to the UWF
in any documentation or publications.
Email suggestions or questions to:
Norman Wilde