El documento proporciona directrices para el diseño de software de alta calidad. Indica que un buen diseño debe implementar todos los requisitos del análisis, ser comprensible, y proporcionar una visión completa del software. Además, debe presentar una arquitectura modular creada con patrones de diseño reconocidos y que facilite la implementación evolutiva. Finalmente, el diseño debe derivarse de forma controlada y repetitiva de los requisitos del análisis.