PHASE 1 : SYSTEM ANALYSIS LESSON 3 REQUIREMENTS GATHERING INTRODUCTION In Lesson 2, we discussed two major activities involved during the system planning phase. System planning is the first phase of system development meanwhile system analysis is a second phase in system development. System analysis is a phase where we determine how the current information system assesses what users would like to see in a new system. There are three main activities involved during the system analysis phase : 1. Requirements gathering 2. Data modeling 3. Process Modeling In this lesson, we will discuss on the first activity in system analysis; requirements gathering. This lesson consists of two sections : overview of requirement gathering fact-finding techniques planning the system development project feasibility study involved during system planning phase LEARNING OUTCOMES At the end of this lesson, students should be able to : 1. explain the importance of requirement gathering in system analysis 2. identify several fact-finding techniques and characterize the weaknesses and strengths of each TERMINOLOGY No 1 Word Fact-finding Definition The formal process of using interviews, questionnaires, observations to collect information about system problems and requirements 2 Interview A fact-finding technique whereby the systems analysts collect information from individuals through face-to-face interaction 3 Joint Application Development A fact-finding technique where a workshop is facilitated and all the system participant sit and discuss for the system analysis 4 Observation A fact-finding technique wherein the participant involved in the system development watches the activities to learn more about the system 5 Questionnaires A fact-finding technique where a document is used to collect information and opinion from respondents 6 Requirements gathering Process and techniques used by a system analyst to identify the extract system problems and solution requirements from user community 7 System analysis A second phase of SDLC in which system requirements are studied and structured 3.1 OVERVIEW OF REQUIREMENTS 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. System Planning √ Requirements Gathering Data Modeling Process Modeling System Analysis System Design System Implementation System Maintenance Figure 3-1: Requirement Gathering Activities in the System Analysis Phase 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. Nonfunctional 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. 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. 2.2 FACT-FINDING TECHNIQUES 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 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. 2.2.1 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. Table 3-1 Guidelines for Effective Interviewing (Bentley et. al., 2007) Effective Interviews Plan the interview Prepare the Interviewee : appointment, priming questions Prepare checklist, agenda and questions Listen carefully and take notes (tape-record if necessary) Review notes within 48 hours of interview Be neutral Seek diverse views 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?”. 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 openended 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. 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: Use clear and concise language Don’t include your opinion as part of the questions Avoid long or complex questions Avoid threatening questions Don’t use you when you mean a group of people 3 Conduct the interview As an interviewer, we need to respect our interviewee. The interview should be started with many thanks to the interviewee because spending their times to be interviewed. Then, interviewer need to explain the purpose and the important of the interview, highlight how information gathered from the interview will help them in a new information system development. As an interviewer, we must listen carefully about everything being said by the interviewee, observe their reactions during the session. It’s important to be on time, but at the same time, try to get as much as information needed from the interviewee. End the interview session by expressing appreciation and providing answers to any questions posed by the interviewee. 4 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. 5 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. 2.2.2 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 : determine who, what, where, why and how of the observation obtain permission to observe from appropriate supervisors or managers inform those who will be observed of the purpose 2.2.3 Questionnaires Another fact-finding technique is conducting a survey using questionnaires. A questionnaire is a document distributed to respondents in order to get the information about anything. Questionnaires allow the system analyst to collect information from a number of respondents and normally it involves a large amount of respondents. Advantages of using questionnaire are most questionnaires can be answered quickly, and the responses from the questionnaires can be analyzed quickly. Disadvantages of using questionnaires is, the number of feedbacks are quite low because people will not send back the questionnaires, and there’s no guarantee that the respondents will answer all the questions. There are two format for questionnaires; free format and fixed format. Free format questionnaires are designed to allow users to answer freely in each question. An example of free format questions is : 1 What reports do you needed and why do you need that reports? 2 Are they any problems with the current reports? If yes, please explain. 3 Do you prefer to have any other reports, so that it can help you? 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 : Do you feel that the reports are useful? Ο Yes Ο No Is the current reports are useful for your jobs? Ο Yes Ο No If your answer is No, please explain WHY. 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 : The reports should be prepared efficiently, so that it can help users. Ο Strongly agree Ο Agree Ο No opinion Ο Disagree Ο Strongly Disagree Student’s report may help them to generalize their academic reputation Ο Strongly agree Ο Agree Ο Not sure Ο Disagree Ο Strongly Disagree Noted that in the previous questions, there are two answers for positive (strongly agree and agree), two answers for negative (disagree and strongly disagree) and one answer between positive and negative answer (no opinion). 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 : Rank the following transactions according to the amount of time you spend in processing them Ο Strongly agree Ο Agree Ο No opinion Ο Disagree Ο Strongly Disagree __ new order __ order cancellation __ order update __ payment __ order delivery Rank the following transaction according to your purposes of using the system __ do course registration __ update student profile __ view results __ check fees pending 3.2.4 Joint 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. 3.2.5 Exercises Answer TRUE or for FALSE for each of the questions below. 1. Interviewer need to jot down everything during the session, so there’s no important point missing. FALSE 2. IT is easy to prepare closed-ended questions during the interview, so that we can get a better feedback from respondents. FALSE 3. Closed-ended questions put the interviewee at ease, are easily summarized, and save time. FALSE 4. An observation is known as unbiased fact-finding technique. TRUE 5. An advantage of using questionnaire is the number of feedback get from respondents is generally high. FALSE SUMMARY This is the end of lesson Three. In this lesson, we have learned : the importance of requirement gathering in system analysis conducted a fact-finding techniques and characterize the weaknesses and strengths of each In the next lesson, we will continue to discuss the second activity involved in system analysis; data and process modeling. Data and process are important elements that need to be clearly defined when develop a system. SELF ASSESSMENT Fill in with the correct answer 1. _________________________________ is a problem-solving technique that decomposes a system into its component pieces for the purpose of studying how well those component parts work and interact to accomplish their purpose. System analysis 2. _________________________________ specify what the information system must do or what property or quality the system must have. System requirements 3. During _________________________________, the system analyst should identify and describe all system requirements. requirement gathering 4. System requirements that specify what the information system must do are referred to as _________________________________. functional requirements 5. __________________________________ is a process of using research, interviews, questionnaires, sampling and other techniques to collect information about problems, requirements, and preferences. Fact-finding 6. Traditional methods of collecting system requirements include __________________________________, __________________________________ and __________________________________. Interviews; observations; questionnaires. 7. A(n) ____________________________ question allows an interviewee to give respond in any way they prefer. open-ended 8. _________________________________ is a fact-finding technique wherein the system analysts either participate in or watches a person perform activities to learn about the system. Observation 9. _________________________________is a type of fact-findings technique that allows the analyst to collect information and opinions from respondents. Questionnaire 10. ____________________________________ is a fact-finding technique where highly structured group meetings are conducted to analyze problems and define requirements. Joint application development