The most common reason for software project failure is attributed to requirements issues – badly defined, not stated correctly, changing requirements, etc.
Any project I’ve done that lasted longer than a day had changing requirements. If your development strategy only works with an unchanging set of requirements, you need to rethink your approach . . .