Fault Tolerance for Distributed Real Time Dynamically Reconfigurable Systems from Modeling to Implementation

The development of computer systems is extremely complex due to real-time, distribution and dynamism requirements. For this reason, whatever the taken precautions, the occurrence of faults is sometimes unavoidable. In this context, we notice the need of techniques ensuring the dependability of realtime distributed dynamically reconfigurable systems. We focus on fault-tolerance, that means avoiding service failures in the presence of faults. In this paper, we have defined a development process for modeling and generating fault tolerance code using aspect oriented programming. First, we integrate fault tolerance elements since the modeling step of a system in order to take advantage of features of analysis, proof and verification possible at this stage using AADL and its annex Error Model Annex. Second, we extend an aspect oriented language and adapt it to respect real-time requirements. Finally, we define a code generation process for both functional preoccupations and crosscutting ones like fault tolerance.

[1]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[2]  Ana-Elena Rugina,et al.  Dependability modeling and evaluation : from AADL to stochastic Petri nets , 2007 .

[3]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[4]  Rob Williams,et al.  Aspect oriented software fault tolerance , 2009 .

[5]  Myron Hecht,et al.  A Tool Set for Integrated Software and Hardware Dependability Analysis Using the Architecture Analysis and Design Language (AADL) and Error Model Annex , 2011, 2011 16th IEEE International Conference on Engineering of Complex Computer Systems.

[6]  Constantinos Constantinides,et al.  AspectAda: aspect oriented programming for ada95 , 2005 .

[7]  Alan Burns,et al.  The Ravenscar Tasking Profile for High Integrity Real-Time Programs , 1998, Ada-Europe.

[8]  Sébastien Gérard,et al.  A Fault-tolerance Framework for Distributed Component Systems , 2008, 2008 34th Euromicro Conference Software Engineering and Advanced Applications.

[9]  Simin Nadjm-Tehrani,et al.  Aspects for improvement of performance in fault-tolerant software , 2004, 10th IEEE Pacific Rim International Symposium on Dependable Computing, 2004. Proceedings..

[10]  Johan Karlsson,et al.  Fault injection-based assessment of aspect-oriented implementation of fault tolerance , 2011, 2011 IEEE/IFIP 41st International Conference on Dependable Systems & Networks (DSN).

[11]  John G. P. Barnes,et al.  High Integrity Software - The SPARK Approach to Safety and Security , 2003 .

[12]  Brian Randell,et al.  Dependability and its threats - A taxonomy , 2004, IFIP Congress Topical Sessions.

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

[14]  Sébastien Gérard,et al.  Designing Fault-Tolerant Component Based Applications with a Model Driven Approach , 2008, SEUS.

[15]  Nuno Brito,et al.  Aspect-oriented fault tolerance for real-time embedded systems , 2008, ACP4IS@AOSD.