Workshop on Self-Healing Systems (WOSS '02). Affiliated with the 10th International Symposium on the Foundations of Software Engineering (FSE-10), Charleston, South Carolina, November 2002.
Download the PDF version.
Modern practical computing systems are much more complex than the simple
programs on which we developed our models of dependability. These dependability
models depend on precise specifications, but it is often impractical to obtain
precise specifications of practical software-intensive systems.
Furthermore, the criteria for acceptable behavior vary from time to time and
from one user to another. When development methods are based on the classic
models that assume precise specifications, the resulting systems are often
brittle -- they are vulnerable to unexpected conditions and hard to tune to
changing expectations. Practical systems would be better served by development
models that recognize the variability and unpredictability of the environment in
which the systems are used. Such development methods should pursue not the
absolute criterion of correctness, but rather the goal of fitness for the
intended task, or sufficient correctness. They should accommodate environmental
unpredictability not only by reactive mechanisms, but also by design the
produces resilience to environmental change, or homeostasis. In many cases, this
resilience may be achievable by relaxing tolerances in the specifications,
thereby enlarging the envelope of acceptable operation.
_________________________________________________________
Brought to you by Composable Software Systems Research Group in the School of Computer Science at Carnegie Mellon University.
[Last modified 1-OCT-02. Mail suggestions to the Maintainer.]