Design of Dependable Systems