Software Self-Healing with Panacea

Onn Shehory

Abstract:

Self-healing capabilities allow software systems to autonomously overcome problems occurring during testing and run time, and thus improve overall system behavior. The Panacea framework provides a design methodology as well as ready-to-use healing elements aimed at enhancing software systems with self-healing capabilities both at design time and at run time. The Panacea approach is based on inserting self-healing elements into the system at design and coding time, to be used later for healing at testing and run time. Specifically, the Panacea framework is based on inserting annotations into the system code at design and coding time, to later on serve as an interface for runtime monitoring, managing, configuring and healing of the annotated system components.

The current embodiment of Panacea includes several generic components that provide self-healing capabilities suited for a variety of application types. The Panacea runtime environment automatically activates and invokes these components in order to optimize and heal the application. The Panacea framework provides an innovative programming model that enables development of advanced self-healing applications. Panacea introduces a paradigm shift in which software is made self-healing by design. This paradigm shift, however, is graceful since developers are not required to master neither new programming skills, nor languages.

As our initial experiments demonstrate, Panacea introduces a very small performance overhead, and scales well.

Short bio:

Onn Shehory is a research staff member at the IBM Haifa Research Lab, and an adjunct faculty at several Israeli Univesities.

He received his Ph.D. in computer science and his M.Sc. in physics from Bar Ilan University, Israel. Prior to joining IBM Research, Dr. Shehory was a visiting faculty at the Robotics Institute, CarnegieMellonUniversity, where he conducted research on multiagent systems. At IBM, he studied and developed agent applications, electronic commerce solutions, storage systems manangement and performance management tools, and autonomic systems.

His studies, both practice and theory, span across multiple disciplines, including distributed artificial intelligence, software engineering, networked storage, system management and autonomic computing. He has published more than 60 papers in leading journals and conferences, of which two have received best paper awards.

He is on the editorial board of two international scientific journals and served as a chair of multiple scientific meetings.

Currently, Dr. Shehory leads a large multinational European project on software self-healing, named SHADOWS.