Today a colleague sent the following email:
I found this cute little diagram of the design process. Any comments?
I limited my reply to:
Assumes that there is a “correct” functionality that can be completely specified in advance, and that any deviation from that complete specification is an “error”
I prefer to release small increments of functionality and get customer feedback; it’s hard to know if functionality is “appropriate” or “inappropriate” until customers are using it
This doesn’t mean you can put broken functionality in front of a customer. But it means that you’re not going to know whether the functionality you build really meets the customer’s need until they start using it.
I have no idea where my colleague got the diagram, so I can’t give appropriate credit. Sorry.