Este documento describe seis mejores prácticas para el desarrollo de software probadas comercialmente. Estas incluyen desarrollar de manera iterativa en lugar de cascada para reducir riesgos, administrar requerimientos para construir el sistema correcto, usar arquitecturas basadas en componentes para tiempos más cortos, modelar visualmente el software para evitar ambigüedades, verificar continuamente la calidad del software, y controlar los cambios realizados al software.