I have found this picture to be very hilarious and after having talked to different people working in different companies, I am led to believe this is very true in a lot of companies. (I give the credit to the original creator of this picture whose name is unknown to me)
To avoid the above situation, in my opinion a product manager has to do three fundamental things:
1) Thoroughly understand the customer problem, rather than taking what the customer tells you at face value. Need to do a deep dive with the customer using the concept of Five why’s. While doing this, you need to make sure you need to involve your engineers/qa etc. or take the time to educate them about the customer problem that needs to be solved.
2) Engage the customer throughout the product development process to ensure that you are building what he is really looking for. My mantra is that it is never too early to show anything to your customers. Sign NDA’s if you have to, but engage them early. Get them to review specs, let them play with early code. The whole idea is to know if you are building the right thing, that you are rowing the boat in the right direction. The boat could be leaking water at this time because it is not finished, but you want to make sure that you are building the right boat and rowing it in the right direction.
3) Educate other departments in your company about the customer problem and why you are creating this product/service so that they can align their tasks with what you are trying to do.