On Aspect-Oriented Implementation of Fault Tolerance
Doktorsavhandling, 2010

This thesis investigates the use of aspect-oriented programming for the purpose of implementing fault-tolerance in software. The feasibility of aspect-oriented programming languages is evaluated from the perspectives of expressiveness, overhead, and fault coverage. It is shown that a wide range of mechanisms for fault tolerance, both systematic and application specific, can be implemented using aspect-oriented languages. Regarding overhead we show that aspect-oriented programming can be used without significant memory and run-time overhead compared to other implementation techniques. We have conducted a large fault injection study where we compare the fault coverage of aspect-oriented implementations of fault tolerance mechanisms with implementations in the C language. For the purpose of this study, we developed three software-based fault tolerance mechanisms that can detect and mask errors caused by transient hardware faults. One of these achieved perfect fault coverage in our experiments. The fault coverage of the mechanism where evaluated by injecting single-bit errors in CPU-registers and main memory locations during program execution. For each mechanism we conducted experiments with implementations made in C and two variants of the AspectC++ language. The result show that the difference in fault coverage between programs implemented using aspect-oriented programming and those implemented in C in general is small. In summary, we found clear advantages and no major disadvantages of using aspect-oriented programming for the implementation of software-based fault tolerance.

Aspect-Oriented Programming

Fault Tolerance

Error Detection

Fault Injection

ED, Hörsalsvägen 11, Chalmers tekniska högskola
Opponent: Prof. Jean-Charles Fabre, LAAS-CNRS and National Polytechnic Institute of Toulouse, France.


Ruben Alexandersson

Chalmers, Data- och informationsteknik, Software Engineering

Aspect-Oriented Implementation of Fault Tolerance: An Assessment of Overhead

Lecture Notes in Computer Science,; Vol. 6351(2010)p. 466-479

Paper i proceeding

Implementing Fault Tolerance Using Aspect Oriented Programming

Lecture Notes in Computer Science,; Vol. 4746/2007(2007)p. 57-74

Paper i proceeding

Aspect oriented software implemented node level fault tolerance

IASTED International Conference on Software Engineering and Applications (SEA),; (2005)

Paper i proceeding

On hardware resource consumption for aspect-oriented implementation of fault tolerance

EDCC-8 - Proceedings of the 8th European Dependable Computing Conference,; (2010)p. 61-66

Paper i proceeding







Doktorsavhandlingar vid Chalmers tekniska högskola. Ny serie: 3141

Technical report D - Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University: 72

ED, Hörsalsvägen 11, Chalmers tekniska högskola

Opponent: Prof. Jean-Charles Fabre, LAAS-CNRS and National Polytechnic Institute of Toulouse, France.