Segundo Pressman e Maxim (2016), "é um modelo de processo de software iterativa da prototipação aos aspectos sistemáticos e controlados do modelo de processo. Como toda iniciativa, o desenvolvimento de versões cada vez mais completas do software". O modelo pode ser adaptado muitas vezes ao longo da vida do software e voltado para sistemas de grande escala. Apesar de ser um modelo evolutivo, ele é completamente controlável.