Achieving Cost-Effective Software Reliability Through Self-Healing


  • Alessandra Gorla
  • Mauro Pezzè
  • Jochen Wuttke
  • Leonardo Mariani
  • Fabrizio Pastore


Self-healing, autonomic computing, software reliability


Heterogeneity, mobility, complexity and new application domains raise new software reliability issues that cannot be met cost-effectively only with classic software engineering approaches. Self-healing systems can successfully address these problems, thus increasing software reliability while reducing maintenance costs. Self-healing systems must be able to automatically identify runtime failures, locate faults, and find a way to bring the system back to an acceptable behavior. This paper discusses the challenges underlying the construction of self-healing systems with particular focus on functional failures, and presents a set of techniques to build software systems that can automatically heal such failures. It introduces techniques to automatically derive assertions to effectively detect functional failures, locate the faults underlying the failures, and identify sequences of actions alternative to the failing sequence to bring the system back to an acceptable behavior.


Download data is not yet available.




How to Cite

Gorla, A., Pezzè, M., Wuttke, J., Mariani, L., & Pastore, F. (2012). Achieving Cost-Effective Software Reliability Through Self-Healing. COMPUTING AND INFORMATICS, 29(1), 93–115. Retrieved from