The high cost of software production is driving development organizations to adopt more automated design and analysis methods such as rapid prototyping, computer-aided software engineering (CASE) tools, and high-level code generators. Even developers of safety-critical software system have adopted many of these new methods while striving to achieve high levels Of quality and reliability. While these new methods may enhance productivity and quality in many cases, we examine some of the risks involved in the use of new methods in safety-critical contexts. We examine a case study involving the use of a CASE tool that automatically generates code from high-level system designs. We show that while high-level testing on the system structure is highly desirable, significant risks exist in the automatically generated code and in re-validating releases of the generated code after subsequent design changes. We identify these risks and suggest process improvements that retain the advantages of rapid, automated development methods within the quality and reliability contexts of safety-critical projects.
[1]
John R. Callahan,et al.
Software risk management through independent verification and validation
,
1995
.
[2]
John R. Callahan,et al.
A process improvement model for software verification and validation
,
1994
.
[3]
Steve McConnell,et al.
Rapid Development: Taming Wild Software Schedules
,
1996
.
[4]
Darius Karkaria.
Independent Verification and Validation: a Life Cycle Engineering Process for Quality Software, by R. O. Lewis, Wiley, 1992 (Book Review)
,
1993,
Softw. Test. Verification Reliab..
[5]
David Garlan,et al.
Using tool abstraction to compose systems
,
1992,
Computer.