High-level and low-level design