A Product Family Approach to Graceful Degradation
Design of gracefully degrading systems, where functionality is gradually reduced in the face of faults, has traditionally been a very difficult and error-prone task. General approaches to graceful degradation are typically limited to re-implementation of the system for a number of pre-designated fallback configurations. We describe an architecture-based approach to gracefully degrading systems based upon Product Family Architectures (PFAs) combined with automatic reconfiguration.
A PFA is a region of a system design space populated by different, but related, products sharing similar architectures and components. Each system instance within a PFA yields a distinct price/performance point, and represents a different model in the product family. The unifying mechanism that joins PFAs and gracefully degrading systems is automatic reconfiguration – in the face of a fault, the system reconfigures to a different PFA configuration point that optimizes the functionality available with the remaining resources. In this process, the system sheds some of the non-critical functions that make up such a large percentage of modern embedded systems. System designers can also exploit a reconfiguration mechanism to provide graceful upgrade and unique logistical benefits. The RoSES (Robust Self-configuring Embedded Systems) project employs such a reconfiguration approach, seeking to create a revolutionary means to build self-customizing, distributed, embedded control systems.