CORRECT Developing Fault-Tolerant Distributed Systems