Olá a todos!
O primeiro empecilho que vejo no Waterfall é o fato de ele lidar mal com a incerteza. Desenvolvimento de software por si só é incerto e você pode descobrir no meio do caminho que um projeto pode demorar mais tempo. Junto disso, vem a dificuldade de realizar mudanças, que demandam uma burocrática "change request". A resistência à mudança aliada à dificuldade em lidar com a incerteza fazem com que sejam altas as chances de que um projeto deste tipo leve muito tempo para ser concluído, gaste muitos recursos, e entregue algo que não gera valor para usuário ou negócio algum.