O documento descreve diferentes paradigmas de engenharia de software, incluindo o ciclo de vida clássico, modelo evolutivo, espiral e protótipo. Cada um tem suas vantagens e desvantagens dependendo do projeto. Um paradigma não é mutuamente exclusivo e elementos de cada um podem ser combinados para melhor atender aos requisitos do sistema.