Formal Methods and Models for System Design