Skip to main content
Open Access Publications from the University of California

Reliable software through rational design


This paper describes two (related) ways that software unreliability may occur: in response to unanticipated demands or due to unreliable design processes. Five illustrative examples of design-induced unreliability are presented. Design rationalization, a technique for forcing careful and rational consideration of design decisions, is described and its use to improve the reliability of a design process is illustrated. Some experimental and abstract evidence supporting the use of design rationalization to increase software reliability is given.

Main Content
For improved accessibility of PDF content, download the file to your device.
Current View