Interviews are an integral part of database design, and they play a key role during certain phases of the design process. Assuming that you work within some organization and need to design a database to support the work that you and your fellow employees perform, you should make certain that you conduct your interviews in the manner described in this book. This means that throughout the design process, you'll interact with some of your fellow employees, management personnel, and (depending on the size of the organization) the owner. If you work for a small organization that employs only a handful of people, or if you are only creating a database for yourself, you'll conduct "self-interviews"; you'll still conduct the interviews described in this book, but you will act as the interviewer and the interviewee. You will be the one who provides the answers to the questions.
Interviewing is a skill that you can learn with some amount of patience, diligence, and practice. There are a variety of approaches and techniques you can use to conduct an interview, and there are numerous academic papers, articles, and books that have been written on the subject. Although an in-depth discussion of this topic is beyond the scope of this book, I've included several techniques and guidelines in this chapter that will help you conduct your interviews efficiently and effectively.
Interviews are important because they provide a valuable communication link between you (the developer) and the people for whom you're designing the database, help ensure the success of your design efforts, and provide critical information that can affect the design of the database structure. As you're working with table relationships, for example, you might find it difficult to determine the type of participation and degree of participation for a specific relationship. The only way for you to determine the proper values for these relationship characteristics is to conduct an interview with the appropriate people in your organization. You can then use the information you gathered during the interview to set the relationship characteristics. Using an interview as an information-gathering tool, you can gain new insights from participants regarding part of the database or clarify facts that you don't understand. Note that you must always conduct each of the interviews incorporated within this design process, regardless of the type of database you're designing or the number of people involved. You will inevitably miss some piece of important information when you neglect or omit any of the interviews, and this could adversely affect the final structure of your database.
Throughout the remaining chapters, I use open-ended questions for all interviews that are part of the concept or technique under discussion. You can use these questions as a guide for formulating your own questions for a given interview.
Always establish guidelines for your interviews before you conduct them. This will help ensure that you conduct your interviews in a consistent manner and that they are always (or usually) successful. Here are some guidelines you can establish for the participants and for yourself.
Make the participants aware of your intentions. Many people are wary of interviews. They don't like to be "put on the spot" and they don't want to be asked "trick" questions. Let each person know the subject you wish to discuss, the names of the other participants, the time you want to start the session, and whether this interview is part of an ongoing series of interviews. If everyone participating in a given interview session knows how you're going to conduct it and what you expect of them, they're more likely to engage in the conversation at hand and be quite responsive to your questions. Above all, reassure them that the interview is not a disguised assessment of their performance; you want to make certain they feel comfortable talking to you openly and without reservation. This will go a long way toward building a foundation of trust between you and the participants.
Let the participants know that you appreciate their taking part in the interview and that their responses to the interview questions are valuable to the overall design project. Earlier experiences are likely to make some people believe that whatever input they provide goes unnoticed and unappreciated at work. Even when in the past their input made a significant impact on a specific project, rarely did they get so much as a thank-you. In light of this, there's no real motivation for them to participate in your interview. Many, if not all, of your participants will start out with this attitude. But you can really increase their motivation by letting them know that you truly and honestly appreciate their participation and are very interested in their responses. Assure them that their feedback is truly valuable to the design process and that in many cases their responses can substantiate and validate decisions made throughout the design process. If you make yourself credible by being genuinely sincere, participants will help you in any way they can. Your job will be much easier and everyone will participate voluntarily and enthusiastically. It's very effective to show, on a second interview, how you have already used participants' earlier contributions.
Make sure everyone understands that you are the official arbitrator if and when a dispute arises. It's inevitable that minor disputes will arise during an interview and that there will be some amount of tension until such disputes are resolved. You can avoid this situation by arbitrating these disputes yourself. As the database developer, you're in the best position to do this because you have an objective viewpoint and can see both sides of an issue. Additionally, the decision you make will always be in the best interests of the database structure. Always remember that disputes dealing with something other than the database structure can be referred to a more appropriate authority, if one exists.
Conduct the interview in a well-lit room, separated from distracting noise, with a large table and comfortable chairs, and have coffee and munchies on hand. You'll greatly enhance your chances of carrying out a successful interview when you pay attention to atmosphere. Use a well-lit room because it allows the participants to read your interview materials very easily. A large table ensures that everyone has space to work, and comfortable chairs keeps them relaxed enough to concentrate on the conversation at hand. Always have plenty of coffee available, as this seems to be the preferred beverage of businesspeople everywhere. Finally, provide a good supply of munchies to help keep everyone in a good mood. People actually seem to think better when they have something to munch onit keeps their mouths occupied while they're thinking. (The business climate has changed considerably since I first wrote this book. Many people are now conducting interviews and meetings in restaurants or at the local Starbucks. You might consider this as an option if you can't devise an appropriate setting for your interviews.)
Set a limit of 10 people for each interview. Limiting the number of participants promotes a more relaxed atmosphere and makes it easier for you to encourage everyone to participate. One problem you'll find in conducting an interview with a large number of people is that the intimidation level of some of the participants will rise in direct proportion to the number of participants taking part in the interview as a whole. Some people are just afraid of looking ignorant or incompetent in front of their colleagues, whether or not there's truly any justification for such feelings. So, you do have a very good reason to restrict the number of participants in an interview.
Conduct separate interviews for users and management. Separating the two groups is a good idea for a variety of reasons, including the "fear factor" noted above. Primarily, you want to separate them because each group has a different perspective on the organization as a whole and how the organization uses its data on a daily basis. Conducting separate interviews for each group allows you to leverage their unique perspectives to your advantage as you work through the database-design process. Another reason for keeping the interviews separate is to eliminate the conflicts that can arise when these groups disagree over certain aspects of the organization. It's quite common for there to be a lack of communication between them, and the odds are 50/50 that the interview will bring this problem to the surface. This may impel them to establish better lines of communication, or it may exacerbate the problem further. In any case, this communication problem can complicate and extend your interview and diffuse its results. Use your knowledge of the organization to help you judge whether to keep the interviews separate. If you need to conduct an interview with both groups at the same time, do so intentionally, with a specific purpose in mind, and be prepared for distractions.
When you have to interview several groups of people, designate a group leader for each group. The group leader will help you ensure that the interview runs smoothly. She will be responsible for preparing each member of her group for the interview and for providing you with any new information she obtained from the group outside of the interview. During the interview, the group leader can direct your questions to the member best equipped to answer them.
You'll occasionally encounter a group leader who may want to dominate the interview and answer every one of your questions. When this happens, diplomatically and politely inform him that it is your job (and duty) to obtain feedback from all of the participants, so that you can make a complete assessment of the organization's overall information requirements. If this doesn't rectify the problem, you have the option of designating someone else as the group leader or refraining from including him in future interviews.
Prepare your questions prior to the interview. You can conduct an interview rather easily if you have a set of prepared questions. (Coming up with questions off the top of your head is rarely a good idea, even if you're an experienced interviewer and are highly skilled at producing ad hoc questions.) Having a prepared list of questions allows you to provide a focus and direction for the interview, and it provides the participant with a continuity of thought. Your interview will flow more smoothly and will be more productive when your questions move easily from topic to topic.
As you prepare your list of interview questions, make sure you use open-ended questions. For example, "Did you feel our service was (a) poor, (b) average, or (c) good" is a closed question. A closed question isn't particularly useful because it supplies its own set of responses and does not allow an interviewee to provide an objective opinion or elaborate answer. On the other hand, an open-ended question, such as "How do you feel about our service?" is far more useful because it allows the interviewee to answer the question in a variety of ways. There are times when you may need to use closed questions, but it's better to use them intentionally, sparingly, and with a specific purpose in mind.
If you're not very good at taking notes, either assign that task to a dependable transcriber for each interview or get the group's permission to use a tape recorder to record the interview. You conduct interviews to gather specific information about the organization, so it's important that you establish a detailed record of each interview. If you find it difficult to conduct an interview and take notes at the same time, you should enlist one of the participants as your assistant and have him take notes for you. (This is one good way to encourage participation from people who are normally quiet or reserved.) Choose your assistant carefully because the notes may suffer if he is at all distracted by the proceedings. Another option you have available is to use a tape recorder to record the interview. This might prove to be a better way to handle your notes because the tape recorder will capture the interview more accurately, and you'll be able to determine exactly who provided you with a given piece of information. (If you do decide to record the interview, be sure you first obtain permission from each of the participants. There may be privacy or confidentiality issues at stake, and you don't want to get yourself into any kind of trouble.)
Give everyone your equal and undivided attention. This is a crucial point for you to remember: You must pay complete attention to the person who is speaking, and do so sincerely. If you give a participant the impression that you're bored, uninterested, or preoccupied, he will immediately reduce his level of participation within the interview. On the other hand, he will probably participate quite enthusiastically if he sees that you are interested in what he's saying and has your undivided attention.
There will be times when a participant responds to your questions with vague or incomplete answers. He may respond this way for several reasons. It may be that he doesn't quite know how to express the ideas he wants to convey or that he's not at liberty to divulge certain information. It could also be that he's just not comfortable talking about himself and what he does or that he is suspicious of you for some reason. In any case, you'll have to be patient and make him feel at ease so that he will provide you with the information you need. For example, you could try to state your best approximation of what he's said thus far and ask if it is what he meant to say.
Keep the pace of the interview moving. You've probably attended meetings during which a particular point was belabored or much time was spent trying to extract information from a reluctant participant. You can prevent this from happening during your interviews by setting personal limits on the time you'll allow for a question to be answered and the time you'll spend on a specific topic. Don't inform the participants about this limit; instead, try to promote a sense of urgency.
Always maintain control of the interview. This is the single most important guideline for every interview you conduct. Inevitably, something goes wrong the moment you lose control of the interview. For instance, say you have a situation where one of the participants begins to change the focus of the interview by discussing issues that have little or no relevance to the topics on your agenda. You'll certainly lose control of the interview unless you do something to redirect the discussion. Regaining control of the interview will be easy for you to do in some cases, but in others you'll just have to declare your portion of the interview "complete" and let the participants carry on with their discussion. You can avoid situations like this so long as you maintain control of the interview.
Interviews are an integral part of the design process, and I provide examples of them throughout the next several chapters. You'll find sample dialog that illustrates typical interview scenarios and examples of questions you might use during a given interview. (The sample questions always relate to the type of interview you're currently conducting.)
The purpose of an interview example is to illustrate the techniques you use to conduct a specific type of interview, and I've kept the dialog relatively simple for this reason. However, the dialog will still provide you with good ideas for the types of conversations you conduct in the interview.
One final point: Keep in mind that the guidelines I've presented in this section are merely recommendations. I suspect that you won't be able to apply all of these guidelines to every interview you conduct. However, I would expect you to apply them in an ideal situation. Yes, I knowyou don't come across ideal situations all the time. Neither do I. But you can still make it your goal to meet as many of these guidelines as possible. In the end, the person who stands to gain the most is you.