The Customer Is Always Right or The Customer Is King. Do you know this kind of saying? Does this statement fit the IT world?
Requirements, use cases, user stories…
Let’s imagine that a project begins. In general, regardless of the project management methodology, first we need to define product requirements. We can meet client and future users, draw use cases using UML Diagrams or write user stories. There may now be two cases:
- They will tell you WHAT the software is supposed to do
- They will tell you WHAT the software is supposed to do and HOW
How vs What. What’s the difference?
Customers that uses only WHAT wants you to solve their probem e.g. to increase efficiency of the specific business process. You are obliged to come up with an idea and put it into practice.
Customers that uses HOW wants you to implement their solution to the problem. You should use this framework and that technology and etc.
Which approach is appropriate depends on the client’s knowledge. Not everyone is able to choose the right technology and solutions to their problems. This also applies to us, developers, when we don’t have enough domain related knowledge.
People are used to solutions. Imagine Mr. John. John is familliar with excel. He know some commands. With use of Excel he can solve many problems that occur during the day. When you ask him about requirements, his vision will be probably limited by his knowledge of Excel. He don’t know that there are other methods to accomplish such tasks. As we do otherwise, John will have to figure out how to handle this program.
So it is bad to make a solution that people are familiar with?
As always… it depends. If such solution is not impossible to develop and is functional enough, why not. Users will be quicker to use our solution. But if this solution is not optimal and implementation is difficult, it may be better to go another, more efficient way. Back to John’s case. On the one hand, it does not make sense to copy Excel functionality, but on the other hand, what John does can be automated in other, simpler, and more efficient way than excel provide.
We should consider whether we provide the customer with a solution or simply a “product”. I think the best summary will be the Henry Ford quote:
If I had asked people what they wanted, they would have said faster horses.