All IT analysis efforts are very much like any other investigation, and, as such, analysts are investigators. I happen to be a very big crime story fan and I feel a certain kinship with those tough-nosed detectives who "always get their man". They are often thrown into a very chaotic situation where finding answers is critical to making a case. If they fail, the case goes cold, and the boss is unhappy.
Likewise, we analysts frequently find ourselves in work situations where getting answers to questions is vital to a project’s success. If we fail, the project goes into melt-down and we hear the dreaded statement from stakeholders, "That’s what I asked for, but it’s not what I want!"
So, like all good investigative stories, our "cases" hinge on the questions we ask. The foundation of our investigation, as it relates to the business process at hand, is the answers to the questions of what, where, who, how, and when. Where do we start? I believe the best place to start is the business process being addressed with the proposed system.
What is the result of the process currently in use? What business events are involved? Who is involved with it? How do we understand it? This is where we apply our data gathering techniques. There are many techniques that you can use to gather information; here are a few of my favorites.
Shadowing is a technique in which you observe a user performing the tasks in the actual work environment and ask the user any questions you have related to the task. You typically follow the user as the he or she performs daily tasks. The information you obtain by using this technique is firsthand and in context. In addition, you can also learn the purpose of performing a specific task. To gather as much information as possible, you need to encourage the user to explain the reasons for performing a task in as much detail as possible.
An interview is a one-on-one meeting between a member of the project team and a user or a stakeholder. The quality of the information a team gathers depends upon the skills of both the interviewer and the interviewee. An interviewer who becomes an ally can learn a great deal about the difficulties and limitations of the current solution. Interviews provide the opportunity to ask a wide range of questions about topics that you cannot observe by means of shadowing.
Interviews are useful for gathering information about:
· Processes that span individual tasks.
· Business issues from the manager’s perspective.
· Aspects of the business or task that are not directly observable, either because they are automated or because they occur over long periods of time.
· "Hidden" business rules that are known only to individuals directly involved with the process.
A focus group is a session in which individuals discuss a topic and provide feedback to a facilitator. Focus groups use group interviewing techniques. Use this method in cases in which there are more users than you can involve directly in the information gathering process. To ensure that information gathered during a focus group will be useful, make sure that the participants of the focus group represent the users or stakeholders associated with the business. You should also ensure that you have appropriately defined the topic of the focus group and that you keep the group focused on this topic.
These techniques get you intimately involved in what’s going on with the business, and particularly the process in question. This is the art of investigation!
Use your favorite diagramming tool(s) to convey your understanding of the process, and get feedback from the business stakeholders. My favorite is the lowly activity diagram with object flows. An activity either produces or consumes an object. The objects may represent a series of life-cycle states of the same object, or a set of unique objects embedded in the process. This keeps it to "circles and squares", and doesn’t confuse the stakeholders with fancy terms or techniques which don’t interest them in the least.
Be like all great detectives: single-minded, relentless, smart, and …always get your process!