Resilience for Distributed Systems - Ubbergo