Nice to have! Or not…
The purpose of software development should be increase the product value, in other words make it more useful and worth more to stakeholders. But in the urge to improve and to increase the number of features causes, as I guess everyone knows, usability problems. Microsoft Office is a typical example of this. Microsoft has struggled since the early 1990’s to get a decent UI for all these features that probably just a minority of the users really wants. Besides the problems with including these nice to have that a minority wants is that time is spent on this, instead of what people really need. In other words, a system can be very complicated and complex without solving the user’s problem.
An example of this was when a customer had a system with a very complex state machine. The users struggled with it, it created problems testing the system (since all the states needed testing in all clients and for all situations). When looking at the previous version, I could see that the state machine was very simple, so I asked why they’d made it so complicated. The reason was that they wanted to support that customer’s signed an order before invoicing, so the customer knew what they would be billed in advance. But this is not possible with the current state machine. They’d spent all that money, made the system too complex for users and coming development and testing and the thing would still not do what the customer really wanted.
The picture below is worth thought:
Source: Windows Mobile – No Secret


Recent Comments