Formal System Development