"Software development projects face multiple forms of uncertainty, including requirement, technical, human-related, management, environmental, and professional uncertainty."
A systematic review of 60 articles identifies several uncertainty classes in software work, with requirement uncertainty including ambiguity and frequent changes in requirements.
View Source