Rigorous Software Development (Springer, 2011)