ABSTRACT
The last decade has seen a revolution in software engineering tools and techniques. This revolution has been
fueled by the ever-increasing complexity of the software component of delivered systems. Although the
software component of delivered systems may not be the most expensive component, it is usually, however,
‘‘in series’’ with the hardware component; if the software doesn’t work, the hardware is useless.