End-to-end system specification and design