Las metodologías tradicionales de desarrollo de software se caracterizan por definir total y rígidamente los requisitos al inicio del proyecto y tienen ciclos de desarrollo poco flexibles que no permiten cambios. Las metodologías tradicionales más utilizadas son la cascada, que organiza las etapas de arriba a abajo; el prototipado, que construye un prototipo inicial; la espiral, que añade el análisis de riesgos; e incremental, que construye el producto de forma progresiva.