Using executable assertions for runtime fault detection in a model-based software development approach. - Guilherme Figueira Althoff (2007)
The impressive technological evolution observed in the last years has as its main engine the computer. Among many possible applications for this notable machine, the Embedded Computer Systems (ECS) are of great relevance. The number of critical ECS, i.e., whose failure results in catastrophic consequences in terms of human or material lost, also grows dramatically, and opens a new horizon of hazards. Hence, studies in the field of critical ECS become more important. Among the strategies for the development of such systems, this work will deal with fault tolerance. More specifically, software techniques for detection of faults that arise due to external factors of software design errors will be studied. Such techniques are named assertions. It will be proposed an activities workflow that considers the process of software development for a critical ECS based on system models. This approach, called model-based design, is a tendency in the embedded software world, because it brings many benefits, such as reduction of development time, ease of understading and maintaining the design and high degree of reuse. A hypothetical system will be developed according to this approach and different assertions types will be tested and compared. The quality of the assertion set will be measured through a set of metrics, and fault injection at the model level will be applied for this evaluation.