You probably heard this expression before. You are speaking with one of your client about changes that he wants in his application when out of a sudden, he tells you: “It would be nice to have …”. Those words are dangerous, get ready.
There are two attitudes toward those demands from your clients. First, you do not ask yourself too many questions and you just do what your client wants. After all, he is the one paying for your application. He should get what he asks for right? The second attitude is to ask yourself a simple question. Will this new feature make the users of the application more efficient and productive? I believe the second one is the way to go.
If the answer of that question is no, you probably should not do it even for the sake of the client in the long run. The tendency to accepts every demands from your client, especially those “nice-to-have” requests will create bloat. It adds complexity everywhere: for the end user, the developer, the architect, the person maintaining the application, the person doing the graphics. Everyone.
A good example of this is Microsoft Word. In its 2003 version, it had so many tabs, preferences choices, menu items and toolbar buttons that you could easily get lost using it. Now imagine the programmer maintaining and debugging that application. It makes your head want to explode. The thing is 80% of all users only use 20% of all the features in Word. In its latest form, they came up with a pretty nice solution to that problem with the ribbon.
It does not mean that you should not implement those 80% features that the 20% use, but you should be very careful when adding those features.
Post a Comment