Runtime failure detection and adaptive repair for fault-tolerant component-based applications

In software engineering appropriately developed reusable components may significantly reduce the design cost, shorten the time to the market and reduce the maintenance effort. For those reasons more and more attention has been paid to the component-based framework recently. In this chapter, to improve availability of each individual service instance in a component-based system, we propose a runtime configurable fault management mechanism (FMM) which utilizes model-based failure detection and rule-based repair. When more than one repair action is possible, FMM picks one that incurs the best tradeoff between the success rate, the cost of repair and the post-repair reliability measure. Furthermore, in order to gradually improve the quality of fault tolerance, FMM is designed to be able to accumulate knowledge and adapts its capability accordingly.

[1]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[2]  Valérie Issarny,et al.  Architecture-based exception handling , 2001, Proceedings of the 34th Annual Hawaii International Conference on System Sciences.

[3]  John D. Musa,et al.  Software reliability - measurement, prediction, application , 1987, McGraw-Hill series in software engineering and technology.

[4]  Dimitri Kececioglu,et al.  Reliability engineering handbook , 1991 .

[5]  Johan J. Lukkien,et al.  Adaptive runtime fault management for service instances in component-based software applications , 2007, IET Softw..

[6]  Mahesh Viswanathan,et al.  Java-MaC: A Run-Time Assurance Approach for Java Programs , 2004, Formal Methods Syst. Des..

[7]  Taghi M. Khoshgoftaar,et al.  An empirical study of predicting software faults with case-based reasoning , 2006, Software Quality Journal.

[8]  Bev Littlewood,et al.  A Bayesian Reliability Growth Model for Computer Software , 1973 .

[9]  Koushik Sen,et al.  Runtime safety analysis of multithreaded programs , 2003, ESEC/FSE-11.

[10]  Sudheendra Hangal,et al.  Tracking down software bugs using automatic anomaly detection , 2002, ICSE '02.

[11]  Zhen Xiao,et al.  An automated approach to increasing the robustness of C libraries , 2002, Proceedings International Conference on Dependable Systems and Networks.

[12]  Simon Shim,et al.  Monitoring software components and component-based software , 2000, Proceedings 24th Annual International Computer Software and Applications Conference. COMPSAC2000.

[13]  Carl E. Landwehr,et al.  Basic concepts and taxonomy of dependable and secure computing , 2004, IEEE Transactions on Dependable and Secure Computing.

[14]  Yali Zhu,et al.  Exception handling in component composition with the support of middleware , 2005, SEM '05.

[15]  Markus Stumptner,et al.  A model-based approach to software debugging , 1996 .

[16]  Grigore Rosu,et al.  Monitoring programs using rewriting , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

[17]  David G. Robinson,et al.  A nonparametric-Bayes reliability-growth model , 1989 .

[18]  Cecília M. F. Rubira,et al.  A Method for Modeling and Testing Exceptions in Component-Based Software Development , 2005, LADC.

[19]  Raymond Reiter,et al.  A Theory of Diagnosis from First Principles , 1986, Artif. Intell..

[20]  Cecilia Mary Fischer Rubira,et al.  Exception handling in the development of dependable component-based systems , 2005 .

[21]  Stéphane Lafortune,et al.  Failure diagnosis using discrete-event models , 1996, IEEE Trans. Control. Syst. Technol..

[22]  Bin Wang,et al.  Automated support for classifying software failure reports , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[23]  Vyacheslav S. Kharchenko,et al.  The method of software reliability growth models choice using assumptions matrix , 2002, Proceedings 26th Annual International Computer Software and Applications.

[24]  Lorenzo Strigini,et al.  Protective Wrapping of OTS Components , 2001, ICSE 2001.

[25]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .