Formal Techniques in Real-Time and Fault-Tolerant Systems