Healing Web applications through automatic workarounds

  • Authors:
  • Antonio Carzaniga;Alessandra Gorla;Mauro Pezzè

  • Affiliations:
  • University of Lugano, Faculty of Informatics, Via Buffi13, 6904, Lugano, Switzerland;University of Lugano, Faculty of Informatics, Via Buffi13, 6904, Lugano, Switzerland;University of Lugano, Faculty of Informatics, Via Buffi13, 6904, Lugano, Switzerland and University of Milano-Bicocca, Dipartimento di Informatica, Sistemistica e Comunicazione, Via Bicocca degli ...

  • Venue:
  • International Journal on Software Tools for Technology Transfer (STTT)
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

We develop the notion of automatic workaround in the context of Web applications. A workaround is a sequence of operations, applied to a failing component, that is equivalent to the failing sequence in terms of its intended effect, but that does not result in a failure. We argue that workarounds exist in modular systems because components often offer redundant interfaces and implementations, which in turn admit several equivalent sequences of operations. In this paper, we focus on Web applications because these are good and relevant examples of component-based (or service-oriented) applications. Web applications also have attractive technical properties that make them particularly amenable to the deployment of automatic workarounds. We propose an architecture where a self-healing proxy applies automatic workarounds to a Web application server. We also propose a method to generate equivalent sequences and to represent and select them at run-time as automatic workarounds. We validate the proposed architecture in four case studies in which we deploy automatic workarounds to handle four known failures in to the popular Flickr and Google Maps Web applications.