3.1 Overview of Requirement Gathering
Figure 3-1 shows three major activities involved during the system analysis phase. In this Lesson Three we will discuss the first activity in system analysis; requirements gathering. We will learn about determining system requirements. First, we study traditional requirements methods, including interviewing, observation, and collecting procedures and other written documents. Then, it goes to the current methods for collecting system requirements such as Joint Application Development.
Figure 3-1: Requirement Gathering Activities in the System Analysis Phase
3.1 Overview of Requirement Gathering
Before we go further on discussion types of fact-finding techniques that can be used in requirement gathering, we should know the definition of system requirements. What are system requirements? System requirements specify what the information system must do or what property or quality the system must have (Bentley et. al., 2007). During requirement gathering, the system analyst should identify and describe all system requirements. There are two types of system requirements; nonfunctional requirements and non-functional requirements. Functional requirements specify that what the system must do or what the system must have. Non-functional requirements specify that property or quality of the system must have.
Essentially, the system requirement is to correctly identify the data, process and people requirements for the users of a new system. Failure to this system requirement process may result one or more than one of the following problems:
 |
the system may cost more than budget |
 |
the system may not be delivered on time |
 |
they system may not meet the user's requirement and that dissatisfaction |
 |
the system may be unreliable |
So, because of all this possible result; we should plan a good system requirement during this phase. We must schedule and plan a good system analysis phase.
3.1 Overview of Requirement Gathering
Based on Boehm's finding, an erroneous requirement that goes undetected and unfixed until the operation phase may cost 1,000 times more than it would if it were detected and fixed in the requirements phase (Bentley et. al., 2007).
This can be time consuming and difficult process that often leads organizations to take shortcuts to save times and money. But, this action may be leads to the problems defined before. So, the best way is to conduct a good system requirement using suitable fact-finding techniques.
3.1.1 Fact finding technique
The core of system analysis is to get as much as information needed to develop the system. This information is important as a base for system development. Information about the current system must be collected to be used and what and how users want from a new system. The best way to gather all this information is by sit and talk together with the people who involved directly or indirectly with the system. In this section we discuss common types of fact-finding techniques available :
 |
interviews, |
 |
direct observation |
 |
questionnaires |
 |
Joint application development |
3.1 Overview of Requirement Gathering
Fact-finding technique is a formal process of using research, meetings, interviews, questionnaires, sampling and other techniques appropriate to collect information about system problems, requirements, and preferences. It's also referring to information gathering and data collection. An analyst applies several of this techniques during a single system project. During the requirement gathering, the analyst will identify what types of techniques will be used, what type of information will collected.
Interviews
Interviews are of the primary ways to gather information about the information system. Early in the system development project, system analyst spend most the time to interview system users and system owner. People are the most important element of an information system. Important information that need to be seek during the interviews are to understand the organization's policy, organizational direction, organizational operations and others. There are many ways to conduct effective interview. Table 1-1 shows some guidelines for effective interview.
3.1 Overview of Requirement Gathering
Table 1-1: Guidelines for effective interview
3.1 Overview of Requirement Gathering
Types of Interviews
There are two types of interview; unstructured interviews and structured interviews. Unstructured interviews involve general questions that allow the interviewee to direct the conversation. This type of interview frequently gets off track and the system analyst must be prepared to redirect the interview back to the main goals of the interviews if needed. Structured interviews involve the interviewer asking a specific questions design to obtain specific information from the interviewee. The interviewer will direct additional questions to obtain clarification depends on the interviewee's answers. Types of interview selected are related with the types of questions prepared. Normally, unstructured interviews involved with open-ended questions, meanwhile structured interviews involved with close-ended questions.
Choosing Interview Questions
During the interview, we should decide what type of questions that we'll use. We need to decide either it's open-ended questions or closed-ended questions. Open-ended questions are suitable for information that have no specific and precise answers. For example:
"What is the best way to enhance the student participation in class?".
3.1 Overview of Requirement Gathering
Open-ended question will give the interviewee to respond with their own words and opinion, but sometimes it may take a longer time to answer the question. The advantage of using open-ended questions is an interviewee did not know the exact information from the interviewee, then, the interviewer will expand the questions based on the answer given. Closed-ended questions is a type of questions that enable the interviewee to select the answer from a range of answer provided. An example of closed-ended question is :
How many subjects normally students register for each semester?
a) 4 subjects
b) 5 subjects
c) 6 subjects
Closed-ended question is suitable when we know the range of the answer and the interviewee need to decide which answer is belonging to them. Closed-ended question can have a several types such as :
i) True or false
ii) Multiple choice
iii) Rating answer using a scale
iv) Ranking items based on order
Deciding what type of question that might be used is important in order to make sure that the interview session is efficient and the interviewee feels comfortable.
3.1 Overview of Requirement Gathering
How to Conduct an Interviews
A successful interview will involve preparing good and suitable questions, conducting properly, and following up the interview. This section will elaborate how to conduct an effective interview.
| 1. |
Select an interviewee |
|
System analyst decide what type of information should be gathered, then, the analyst will select the interviewee. System analyst should interview the end users of the information system that being studied to get as much information about it. The system analyst should be able to avoid any biases during the interviews. Once system analyst has identified who will be the interviewee, they should set an appointment with an interviewee. Normally, we'll follows the interviewee when he/she will be available to be interviewed. It's because wrong interview timing may caused the interviewee will not give a good feedback. But, an effective interview is only between half an hour. |
| 2. |
Prepare for the interview |
|
Preparation is the main key of successful interview. When setting the appointment, the interviwee should be informed about the interview; the purpose of the interview, the important of the interview, and how their involvement can give future benefits to them. Sometimes, people do not comfortable being interview, asking lots of questions, unless it'll give benefits to them. The purpose of interview is to get as much as facts, opinion not to critics. In (Bentley et. al., 2007), some guidelines when preparing an interview questions are:
|
3.1 Overview of Requirement Gathering
3.1 Overview of Requirement Gathering
|
|
|
|
|
|
|
 |
Follow up th interview |
|
To help maintain good report and trust with the interviewee, the interviewer should send them a memo that summarizes the findings from the interview. This memo should remind them about their meaningful contributions to the information system development project and how much their contribution is appreciated. Let them know that we encourage them to participate if they have additional information. |
 |
Listening |
|
The skills of listening is important in interviewing process. When listening to the interviewee, the interviewer should maintain the eye contact and use the a response such as head nod or "ya..ya" to acknowledge that you listen and understand what they said. Shows that we really interested with the session. It's good if the interviewer can use tape recorder instead of jotting down everything said by the interviewee, so we can pay more attention to the interviewee. Jotting down all the time sometimes make the interviewee feel not comfortable, since you are not giving your attention with what they said. But, before that, please ask the permission from the interviewee to record the conversation during the session. |
|
3.1 Overview of Requirement Gathering
Direct Observation
Besides interview, observation is also one of the most effective data-collection techniques. Observation is a fact-finding technique wherein the system analysts either participate in or watches a person perform activities to learn about the system. Observation is a technique where system analyst either participates in or sees a person perform activities to learn about the system. Normally, this technique will be used if the system analyst feel that the questions from other methods used can be queried. So, observation is needed to see what's going on. The advantages of this technique are data gathered are reliable. During observation, system analyst can see what happen they know what is the best solution. But, the disadvantages are; some people are not feel comfortable being watched, so, it may act differently during the observation.
Guidelines for Observations
Observation can be a very useful technique where we have the ability to observe all aspect of work done by the user. The system analyst should identify when the ideal time to observe a particular aspect of the system is. For example, when observing for the needs of keeping the costumer order, so that the system should observe what was actually happened during the peak hours if they didn't implement a new system. The following guidelines are key for observation :
3.1 Overview of Requirement Gathering
3.1 Overview of Requirement Gathering
But, it is difficult to analyze this type of questions. Because more respondents participate, more answers we got, and most of answer are from various answers. So, the best thing is try to use as simple questions as possible. This type of questions is good when we require any suggestion or opinion from user when deciding the requirements.
Second type of questionnaires, fixed format questions is more rigid. It requires respondents to select an answer from a predefined set of answers. Respondents need to select an answer from a set of answers given. An answer from this format is much easier to analyze. But, on the other hand, it is more static; respondents can not give their opinion or answers other than provided. There are three types of fixed-format questions :
| 1. |
Multiple choice questions |
|
The respondents are given several answers from which to choose. The respondents should be told either to select one answer or more than one answer. Example of multiple choice questions are : |
3.1 Overview of Requirement Gathering
| 2. |
Rating Questions |
|
Respondents is given a statement and asked to use the give responses based on their opinion. Normally, rating questions are provided with an equal number of positive and negative ratings and also neutral ratings. Examples of rating questions are : |
3.1 Overview of Requirement Gathering
| 3. |
Ranking Questions |
|
The respondents are given several possible answers, which are to be ranked in order of preferences or experience. Examples of ranking questions are : |
3.1 Overview of Requirement Gathering
Join Application Development
Today, many organizations use the group work session instead of interviews. An example of this group work session approach joint application development (JAD). Joint Application Development is a process whereby highly structured group meetings are conducted for the purpose of analyzing problems and defining requirements (Bentley et. al., 2007). By using this technique, it can decrease the time spent on fact-finding in one or more than one phase in system development. It has been used to obtain and gather information from the group about the problems, objectives and system requirements. During the session, they sit together to discuss and get the ideas from the participants. The JRP session should be planned and conducted effectively.