Software is present in every aspect of our lives, pushing us inevitably towards a world of distributed computing systems. ...