I just reviewed an article on www.stickynotes.com about, It Is Still The Requirements: Getting Software Requirements Right, by James Ward
This is a very interesting article on the challenges facing a Business Analyst in gathering/eliciting requirements. Mr. Ward accurately describes the dichotomy “between those analysts who believe the customer is responsible for requirements definition and those who believe the customer is not capable of providing this information, at least to the level of detail and precision that is required …”
Mr. Ward suggests that an analyst must take the time to understand the business before true solution requirements will be identified. I agree. As much as we want to hurry up and get a new project done, the best solution is identified by individuals who clearly understand the business problem and the business environment. Software is not always the best or only solution. An excellent Business Analyst must understand what the business is trying to accomplish and the constraints around that work.
I don’t like to hear analysts or developers say “The customer doesn’t know what he wants!” Of course he doesn’t know what he wants, he knows what he is trying to accomplish and needs the creative, knowledgeable minds of the Business Analyst and developer to help create/design a solution. At the beginning of a project, no one on the project knows what the solution will look like. The work of the Business Analyst and the technical team is to help understand the needs and constraints and design a solution that will answer the problem. If the customer knew what he wanted, we wouldn’t need Business Analysts and we would not have so many problems with User-IT relations. The activity of understanding a business problem/opportunity and developing a solution to accommodate it is a very complex, difficult, creative process. It requires very well-educated, logical, creative people who are open to new ideas and willing to work collaboratively with others to come up with the best solution.