Short Introduction to This Paper

This paper characterizes self-healing software systems by surveying some of the existing work in the field. It maps the space of software self-healing capabilities and discusses the risks and limitations inherent in automatic-reaction schemes. The structure of this paper is quite clear, including "what", "why", "how" and "future directions" on self-healing systems.

Highlights of This Paper

Self-healing Systems: Future Directions

  • Fault detection

    • Improving fault detection at lower memory and computation cost
    • Using hardware features to improve fault detection and mitigation
    • Using collections of nodes that collaborate in the detection of attacks and faults by exchanging profiling or fault-occurrence information
    • Dynamic analysis of application behavior, possibly combined with a priori behavior profiling and code analysis techniques
    • Using application-specific integrity policies
  • Fault recovery / mitigation

    • Dealing with faults at different (higher) semantic levels
    • Profiling applications to identify likely "correct" ways for fault recovery
    • Using application-specific recovery policies that identify steps that the system must undertake to recover from different types of faults
  • Assurance

    • Assuring the system will not cause damage in the course of healing an application
    • Assuring the system cannot be exploited by an adversary to attack an otherwise secure system


Characterizing Self-Healing Software Systems

标签: Paper Review, Self-Healing