Laser Scanned Imaging System
This project was an upgrade to an existing control/analysis program
for a high-end, laser scanned imaging system. The hardware
unit was capable of high-speed, variable resolution scans using
either radioisotopic or chemiluminescent samples. As originally
configured, the analysis package allowed the user to isolate
a region of the scanned iconic image using one of a number
of predetermined planar shapes such as rectangles or ellipses.
The largest part of the upgrade consisted of adding a freehand
draw routine that would allow the user to isolate an arbitrarily
shaped, closed region containing image elements of interest.
The user could then perform various background manipulation
and image enhancement filter operations on the result.
This project was well specified from the outset and contained
no high-risk elements other than simple understanding of
an existing code base. At the time the project was assigned,
the existing code base consisted of more than 200,000 lines.
The software product was mature, had been through many previous
revisions by a succession of programmers and therefore constituted
something of a challenge in terms of program understanding.
Therefore, we approached this project in two phases, a code
familiarization phase and a design/implementation phase.
No significant work was done on phase two until the first
phase, code base familiarization, was complete. Because little
usable software documentation existed, a number of code analysis
tools were either obtained commercially or constructed (mostly
using scripting languages such as AWK). Because of the complexity
of the existing code base, the familiarization phase required
a full four months to complete. With phase one complete,
the remainder of the project proceeded using a classic waterfall
The code familiarization phase of this project concluded within
only four months. At this point, understanding of the code base
was excellent and, as a bonus, the project documentation was
substantially updated. The design and implementation phase was
then estimated at eight months. We finished in seven. The freehand
draw feature was a well-received aspect of the subsequent release
of the product.