Integrating optional software components into hard real-time systems

The incorporation of optional components (i.e. software modules that cannot be analysed to produce realistic worst case execution times) into hard real-time applications has been recognised as a key issue for the next generation of real-time systems. A system model is presented that caters for the three main approaches to integrating optional components: milestone methods, sieve functions and multiple versions. The formal language TAM is used to describe this model. Further, an approach to ensuring that the mandatory components of this model are guaranteed to meet their deadlines is described, and the optional components are admitted for scheduling such that the utility of the system is maximised.