2 ms·
No one is talking about "never delivering any working software". You definitely do need to deliver working software and should do it in increments. That both s
by mfuzzey 4y ago
No one is talking about "never delivering any working software".
You definitely do need to deliver working software and should do it in increments.
That both shows the customer you are making progress and (more importantly) lets them adjust their requirements as they go along.
Software is different from most other branches of engineering in that it is far less limited by physics and that the requirements are far harder to define.
For example the requirements for a bridge or a building are relatively straight forward (size, load capacity, climatic resistance etc etc). That's not to say that designing the bridge or the building is necessarilly simple (though it probably is for small bridges and houses because we have centuries of experience with them) but even for complex construction projects the requirements are relatively simple even if the implementation may be very complex (think channel tunnel or mileau viaduc).
In software there are much flexibility that most customers don't know what they want until they see it. They generally aren't capable of saying up front what they really want (and when they try to they are often wrong and end up saying "yes, that's what I said I wanted but now I can see it it's not good".