Improving the reliability of software systems using their intrinsic redundancy

April 28, 2014

Alessandra Gorla


Improving the reliability of software systems using their intrinsic redundancy

Time:   10:30am
Location:   Meeting room 302 (Mountain View), level 3

Software is often redundant, in the sense that some operations are designed to behave like others but their executions differ. This redundancy can be introduced deliberately, as in the case of N-version programming, or it can be intrinsically present due to common design and development practices. I will present and discuss the notion of intrinsic redundancy and I will show that it exists and can be exploited to improve the reliability of software systems. I will first present a technique that uses such redundancy to automatically recover from runtime failures. I will then present another use of intrinsic redundancy to generate testing oracles.