3 ms·
The problem is even more fundamental than that. The point of these extra steps in Royce's eyes is to ensure the developers deliver exactly what the customer ord
by CraigJPerry 5y ago
The problem is even more fundamental than that. The point of these extra steps in Royce's eyes is to ensure the developers deliver exactly what the customer ordered. Page 335 - "Step 5: Involve the Customer" - Royce wants to push design risk to the customer by committing the customer to sign off specific requirements along the way.
This leaves the project open to delivering the wrong thing. It doesn't matter that the customer specified the wrong thing and everyone else implemented exactly what was asked for, because in the end you all failed to meet the original goal - to solve a specific business problem through the introduction of a software system.
Agile recognises that no one knows exactly what's needed ahead of time - Royce kind of recognises this but only for the software developers with his idea to build then throw away the first system then deliver the second ground up re-write to the customer.
Agile says we'll all learn together as we build, we'll minimise risk at every step by only taking such small steps each iteration that we're completely happy to throw the iteration in the bin if we got it wrong.