an approach to preserving sufficient correctness in open resource coalitions
Most software that most people use most of the time needs only moderate assurance of fitness for its intended purpose. Unlike high-assurance software, where the severe consequences of failure justify substantial investment in validation, everyday software is used in settings in which occasional degraded service or even failure is tolerable. Unlike high-assurance software, which has been the subject of extensive scrutiny, everyday software has received only meager attention concerning how good it must be, how to decide whether a system is sufficiently correct, or how to detect and remedy abnormalities. The need for such techniques is particularly strong for software that takes the form of open resource coalitions - loosely coupled aggregations of independent distributed resources. In this paper, we discuss the problem of determining fitness for purpose, introduce a model for detecting abnormal behavior, and describe some of the ways to deal with abnormalities when they are detected.
sufficient correctness correctness open resource coalitions resource software use timing assurance fit failure everyday software attention systems aggregate distributed paper model behavior software homeostasis distributed component-based software fitness for task medium-assurance software fault tolerance