3.1 overview of requirements gathering

advertisement
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
Download