Also, because many projects are initiated by mistake or by sheer Dunning and Kruger effect (customers having more money than brains in general, and pouring it into the fields they have no idea about), that makes framing project in some coherent way, keeping it at least somewhat sensible looking to keep the money flowing, difficult, requiring a lot of back and forth and grudges, and makes keeping decent developers difficult because they are forced to do obvious bs, thus complicating completion.