The purpose of the analysis and design workflow is to translate the requirements into a specification that describes how to implement the system. To make this translation, you must understand the requirements and transform them into a system design by selecting the best implementation strategy. Early in the project, you must establish a robust architecture so that you can design a system that is easy to understand, build, and evolve . Then you must adjust the design to match the implementation environment, designing it for performance, robustness, scalability, and testability, among other qualities.