No Project Plan Survives Contact With Reality
In software, the "enemy" is not bad faith or incompetence. Usually it is complexity, hidden coupling, changing context, and the basic fact that delivery plans are built on assumptions about systems and people that have not been stress-tested yet.