Adaptability of fault tolerance software
The adaptation of software systems is essential to implement resilient computing, in particular very challenging when targeting fault tolerance software. In this work we leverage component-based software engineering techniques and reflective middleware to implement resilient computing systems. We proposed a development process for enabling fine-grained runtime transitions between fault tolerance mechanisms (FTMs) that minimize the impact on the overall software architecture [SFR12]. The process comprises four milestones: 1) the identification of change criteria (application assumptions, resources, fault model) having an impact on FTM selection, 2) a “design for adaptation” approach revealing the variable features of these FTMs and their common parts, 3) the mapping of this fine-grained design on a reflective component-based middleware providing the necessary runtime control features, and 4) the implementation of fine-grained transitions between FTMs on the FraSCAti reflective component-based middleware developed at INRIA.
Adaptation is a big challenge today also in automotive embedded systems and such facilities should improve the manufacturing process, the maintenance, the selection of the software options after shipment, etc. The above results cannot be applied to this context because architectural standards in automotive systems (like AUTOSAR) impose a static and frozen architecture, and thus disable by design any further update. Our objective is to tackle the problem of safe incremental software updates in the context of embedded automotive systems. On-line adaptation allows the inclusion of new functionalities in an efficient way, without restarting the full validation and uploading procedure. A deep analysis of AUTOSAR led us to extract relevant features to precisely define the notion of "containers" as a placeholder for dynamic updates [MFRV14]. Then, we have defined a tool-based approach for enabling these updates, and provided an evaluation of our approach on a classical RISC micro controller. Our current work includes the addition of FTM to ensure a correct behavior of the system in the presence of faults, and the evaluation of our approach on an industry-driven case study (from Renault Automotive), a Blinker application on a PowerPC5510 board.
FTM Adaptation process: off-line CBSE design and transition packages & on-line script-based adaptation
[MFRV14] H. Martorell, J.C. Fabre, M. Roy, R. Valentin, Improving Adaptiveness of AUTOSAR Embedded Applications, ACM Symposium on Applied Computing, Distributed Dependable Adaptive Systems, Gyeongju (Korea), March 2014, to appear
[SFR12] M. Stoicescu, J.C. Fabre, M. Roy, From design for adaptation to component-based resilient computing, IEEE Pacific Rim International Symposium on Dependable Computing (PRDC 2004) 2012 du 18 novembre au 19 novembre 2012, Niigata (Japan), 2012, 10p.