Proactive Self-Adaptation for Improving the Reliability of Mission-Critical, Embedded, and Mobile Software
2013
Embedded and mobile software systems are marked with a high degree of unpredictability and dynamism in the execution context. At the same time, such systems are often mission-critical, meaning that they need to satisfy strict reliability requirements. Most current software reliability analysis approaches are not suitable for these types of software systems, as they do not take the changes in the execution context of the system into account. We propose an approach geared to such systems which continuously furnishes refined reliability predictions at runtime by incorporating various sources of information, including the execution context of the system. The reliability predictions are leveraged to proactively place the software in the (near-)optimal configuration with respect to changing conditions. Our approach considers two representative architectural reconfiguration decisions that impact the system's reliability: reallocation of components to processes and changing the number of component replicas. We have realized the approach as part of a framework intended for mission-critical settings, called REsilient SItuated SofTware system (RESIST), and evaluated it using a mobile emergency response system.
Keywords:
- Computer science
- Software reliability testing
- Real-time computing
- Social software engineering
- Avionics software
- Software system
- Reliability engineering
- Software design description
- Resource-oriented architecture
- Backporting
- Software sizing
- Software development
- Software quality
- Component-based software engineering
- Software construction
- Correction
- Source
- Cite
- Save
- Machine Reading By IdeaReader
42
References
13
Citations
NaN
KQI