In his keynote address to the Software Developers’ Conference, Karl Wiegers outlined his top ten “software development traps”.
When he asked his audience how many people had experienced them, a large proportion of the audience admitted to suffering at least four or five.
The top 10 traps, according to Wiegers, are:
- The project’s vision and scope are never clearly defined
- Customers are too busy to spend time working with developers on requirements
- Customer surrogates (managers or marketing) claim to speak for the users, but they really don’t
- Users claim all requirements are critical and do not prioritise them
- Developers encounter ambiguities and missing information during coding, and they have to guess
- Customers sign off on the requirements, then change them continuously
- The scope increases as requirements changes are accepted, but the schedule slips because more resources are not provided
- Requested requirements changes get lost and the status of a change request is not known
- Functionality is requested and built, but never used
- The specification is satisfied, but the customer is not.