O método waterfall garante que os processos cumpram requisitos, regulamentações e prazos muito específicios. Tudo ocorre de forma cronológica, de maneira que uma etapa não pode ser iniciada sem que a outra tenha terminado. Na elaboração de um software, as etapas podem ocorrer de formas simultâneas e ao final de uma etapa, pode-se perceber a necessidade de mudanças em uma fase bem anterior do projeto. Com um modelo mais engeassado como o waterfall, que inviabiliza a retomada de etapas anteriores, toda essa dinâmica se torna muito morosa, exigindo um esforço muito maior do que quando adotado o agility. Quando tratamos de engenharia de software, estamos falando de um cenário de mudanças e inovações, onde é necessário, muitas vezes, reconsiderar protótipos e adaptá-los para as novas transformações. Como conseguir isso com o waterfall? Ele possivelmente resultaria em atrasos nos projetos e altos custos.