Requirements-Driven Software Development Must Die
Fred Beecher, Requirements-Driven Software Development Must Die, 2011
The process by which most enterprise software is developed is fatally flawed. There are flaws in any software development process, but in the past 13 years I’ve seen one approach produce more bad software and blow more budgets than any other: requirements-driven software development. Thankfully, I’ve also had the opportunity to see the success of an alternative type of process, a process in which user experience design drives what gets developed. This type of process helps teams deliver good software on time and within their budgets.
Requirements-driven software development fails mainly due to communication issues. Huge spreadsheets of detailed requirements, by themselves, are simply not an effective way to convey what an interactive system needs to do and how users need it to work. What does work, however, is validating those requirements with an interactive prototype.