What always surprises me is how little software developers know about their own company and its industry. The reason they know so little is because they have not taken any time to study.
One of the best ways to study customers is by using ethnological techniques. Ethnological studies consist of looking at what people do (behaviors), what they say (language), what they really do, what they make, and what they use (artifacts). Too often what people say they do is not what they really do, and what they say they need to do their jobs is not what they really use. It is important for the software developer to determine the real problem and the solution for the customers. Those software development organizations that are successful go to their customer jungle. They follow their customers around trying to figure out how they actually work and what type of information is needed to complete the work. They actually watch how their customers use the current applications. They do not just rely on feedback they receive from user satisfaction surveys.
I practice what I preach. Whenever I get a new client, I start to learn as much about their business domain as possible. Since every industry has its own set of magazines, journals, organizations, and conferences, I start to subscribe to all these things in hopes of learning something about the business of my new client. This is a common practice for an industrial designer.
Not long ago, I started consulting with a company specializing in the health care industry. I subscribed to a series of free magazines such as Health Care Information Technology, Radiology Today, and Health Management Technology. I also requested conference brochures. I am sure my mailman hates me because I get magazines and conference brochures from just about every industry now. I read over these magazines and conference brochures to begin to learn about health care industry trends. Back in the early 1980’s John Naisbitt wrote a bestseller book called Megatrends. In his book he outlines in great detail how to study trends and I use many of his ideas.
I learn the names of my client’s competitors. I review annual reports, read articles and press releases. I make a list of my client’s competitors, a list of the top 5 trends, and a list of people I know in that industry. Before I arrive at a client’s worksite I have a working knowledge of that industry. My background research is only a starting point for me. Next I spend time at a client’s site studying them.
Read more at Reboot! Rethinking and Restarting Software Development.