The purpose of this collaboration is to make sure that design and implementation are in perfect alignment: that designs accommodate technical and cost constraints, capitalize on technological opportunities, and are effectively communicated to programmers.