An effective way to deal with this problem is to perform high-level design and testing early in the development process using system-level design techniques. After building a prototype, engineers can ...