Occassionally a client doesn't understand how complex web application development can be. What they believe is an easy application, or a simply addon can sometimes take much longer than the client anticipates. How do you get them to understand that there's a lot of finer details that need to be taken care of?
I came across this answer on Quora earlier today that I thought was great way to explain;
Ask your client them to explain in detail how to make a cup of coffee.
After rolling their eyes their answer will probably go something like this:
- Pour water in the carafe
- Put a filter and coffee in the container
- Push the "on" button.
Now explain what they missed:
- Water? Where did the water come from? They forgot to get the water in the first place. And what did they put it in?
- Even if they got that, they made a big mess of the counter because they forgot to open the door above the water reservoir before pouring water all over it.
- Where did the filter come from? Where did the coffee come from? You have to get them first. What order do they go in the container? The filter has an up and a down side. You've got to get it in the right way.
- When they pushed the "on" button the coffee was successfully made... and poured it all over the counter. They forgot to put the carafe in the coffee maker.
And all of that is assuming that everything goes just perfectly. What if you're out of filters or coffee? What if the carafe is dirty and needs to be washed? And how much coffee are you making? What if the door won't open? What if the coffee maker isn't plugged in? You have to check for all of these errors. Every. Single. One.
If you or your client are looking to have a web application developed, it's important to remember that what may seem like a quick, easy application, probably won't be as easy as you think. I'm sure many developers over the years have heard their client say "it's only a quick change, should only take 5 minutes", there are many aspects to projects that are unknown until you start developing it, and even the most detailed of planning won't reveal all possible hurdles.