lorenzoliEtAl-ISSRE-2007 - Towards Self-Protecting...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
Towards Self-Protecting Enterprise Applications Davide Lorenzoli, Leonardo Mariani, and Mauro Pezz`e Universit`a degli Studi di Milano Bicocca via Bicocca degli Arcimboldi, 8 20126 Milano, Italy { lorenzoli,mariani,pezze } @disco.unimib.it Abstract Enterprise systems must guarantee high availability and reliability to provide 24/7 services without interruptions and failures. Mechanisms for handling exceptional cases and implementing fault tolerance techniques can reduce failure occurrences, and increase dependability. Most of such mechanisms address major problems that lead to unex- pected service termination or crashes, but do not deal with many subtle domain dependent failures that do not neces- sarily cause service termination or crashes, but result in incorrect results. In this paper, we propose a technique for developing self- protecting systems. The technique proposed in this paper observes values at relevant program points. When the tech- nique detects a software failure, it uses the collected infor- mation to identify the execution contexts that lead to the failure, and automatically enables mechanisms for prevent- ing future occurrences of failures of the same type. Thus, failures do not occur again after the first detection of a fail- ure of the same type. 1 Introduction Enterprise systems are long living applications that in- tegrate persistent and transaction-based services to offer core business functionalities to large populations of users who continuously access enterprise applications to meet relevant business objectives [8]. Dependability properties, such as availability, safety and reliability, are essential qual- ity attributes, and enterprise systems are thoroughly tested throughout all development phases, from system design to deployment, to verify the satisfaction of such essential prop- erties. However because of the complexity of these systems, faults cannot be completely eliminated from deployed ap- plications [3]. Due to the continuous accesses from many users, failures can be experienced repeatedly before identi- fying the responsible faults and before developing, testing and deploying suitable patches. Failure prevention tech- niques aim at mitigating the problem of recurrent failures by protecting systems from failure occurrences, while wait- ing for faults to be identified and removed. Failure prevention techniques can be roughly classified as failure-specific and general techniques. Failure spe- cific techniques are based on design-time prediction of fail- ures that are likely to occur at run-time, and on the de- sign of mechanisms to protect the system from the occur- rence of the predicted failures. Common failure specific techniques are exception handling and defensive program- ming [21, 29]. We can for example design exception han- dlers to manage accesses to non-existing file, even if such events should not happen. Failure-specific techniques can capture a limited subset of potential faults, but do not pro- tect from problems that are not predicted and handled at design-time.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 02/24/2012 for the course CSE 503 taught by Professor Davidnotikin during the Spring '11 term at University of Washington.

Page1 / 10

lorenzoliEtAl-ISSRE-2007 - Towards Self-Protecting...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online