Talking to users is the first and the most important aspect of designing a software product or application. Talking to the users can be done in many ways - Ethnographic studies, contextual inquiry and observations, questionnaires, card sorting, affinity diagramming, etc. All these user research techniques help in user interface analysis, design of appropriate scenarios, help in layout and visual design, and design of protocols for usability testing. User research also helps the product development team arrive at appropriate functionality and prioritize it.
However, in small and medium-sided software product companies, it becomes very difficult for usability professionals to conduct any meaningful user research. Software product companies create many barriers between the usability researchers (or developers) and users.
1. The Chief Technology Officer of a small sofware product company in India was of an opinion if users can talk to the development team, they will disturb the development process. The users will constantly call or email them with bugs, discuss ideas, give suggestions, and would want them to solve all support queries.
2. Sales and marketing departments don't want the product team to talk to the users. They don't want the team to talk to satisfied users because such talks may make users dissatisfied with the current product. They also don't want the product team to talk to dissatisfied users because the users may feel that the product is really bad.
With the above excuses, even a good product idea can see a slow death. First commandment of usability is "know your user."
You may want to see how McAfee understood their users to fuel a successful product.