Lecture 05 - SEN 309
Lecture 05 - SEN 309
Section-1: 2e7cj2g
Section-2: carndws 1
Objectives
Upon Completion of this section, you will be able to:
▪ Explain fact finding techniques
▪ Describe different fact finding techniques
✓Interview
✓Questionnaires
✓Record Review
✓Observation
▪ Explain Structured Analysis
▪ Explain various tools for structured analysis
✓Data Flow Diagram
✓Data dictionary
✓Decision Tree
✓Decision Table
✓Structured English 2
fact finding techniques
❑The specific methods analysts use for collecting data about requirements are
called fact finding techniques.
❑Fact-finding is an important activity in system investigation. The analyst needs
to fully understand the current system and proposed new system. The analyst
needs data about the requirements and demands of the project undertaken
and the techniques employed to gather this data are known as fact-finding
techniques.
❑Various kinds of techniques are used and the most popular among them are
interviews, questionnaires, record reviews, and also the personal observations
made by the analyst himself.
❑Analysts usually employ more than one of these techniques to ensure an
accurate and comprehensive investigation.
3
1. Interviews
❑Interview is a very important data gathering technique that the
analyst directly contacts system and the potential user of the
proposed system.
❑One very essential aspect of conducting the interview is that
the interviewer should first establish a rapport with the
interviewee.
❑The advantage of interviews is that the analyst has a free hand
and he can extract almost all the information from the
concerned people but then as it is a very time consuming
method.
❑The interviews are of two types namely structured and
unstructured.
4
Structured interviews
❑Structured interviews are those where the interviewee is asked a
standard set of questions in a particular order. All interviewees are
asked the same set of questions. The questions are further divided in
two kinds of formats for conducting this type of interview.
❑The first is the open-response format in which the respondent is
free to answer in his own words. An example of open-response is
"Why are you dissatisfied with the current students portal?"
❑The closed-response format, which limits the respondents to select
their answer from a set of already prescribed choices. An example of
such a question might be "Are you satisfied with the current
students portal?“. 5
Unstructured Interview
❑The unstructured interviews are undertaken in a question-and-answer
format. This is much more flexible nature than the structured interview
and can be very rightly used to gather general information about the
system.
❑The respondents are free to answer in their own words. In this way their
views are not restricted. So the interviewer get a bigger area to further
explore the issues pertaining to a problem.
6
2. Questionnaires
❑Questionnaires are another way of information gathering where the
potential users of the system are given questionnaires to be filled up
and returned to the analyst. Questionnaires are useful when the
analyst need to gather information from a large number of people. It is
not possible to interview each individual. Also if the time is very short,
in that case also questionnaires are useful.
❑If the anonymous of the respondent is guaranteed by the analyst then
the respondent answers the questionnaires very honestly and critically.
❑The analyst should sensibly design and frame questionnaires with
clarity of it's objective so as to do justice to the cost incurred on their
development and distribution. The questionnaires are of two types i.e.
open-response questionnaire and the closed-response questionnaire .
7
3. Record Reviews
❑Records and reports are the collection of information and data gathered over the
time by the users about the system and it's operations. This can also put light on the
requirements of the system and the modifications it has undergone.
❑Records and reports may have a limitation if they are not upto-date or if some
essential links are missing. All the changes, which the system suffers, may not be
recorded. The analyst may analyze the records either at the beginning of his study
which may give him a fair introduction about the system and will make him familiar
with it or in the end which will provide the analyst with a comparison between what
exactly is/was desired from the system and it's current working.
❑One drawback of using this method for gathering information is that practically the
functioning of the systems is generally different from the procedure shown in records.
So analyst should be careful in gathering in gathering information using this method.
8
4. Personal Observation
❑Personal observations are one of the most effective tools with the
analyst where the analyst personally goes to the site and discovers the
functioning of the system. As an observer, the analyst can gain first hand
knowledge of the activities, operations, processes of the system on-site,
hence here the role of an analyst is of an information seeker.
❑This exposure also sheds some light on the actual happenings of the
system as compared to what has already been documented, thus the
analyst gets closer to the system. This technique is also time consuming
and the analyst should not jump to conclusions or draw inferences from
small samples of observation rather the analyst should be more patient in
gathering the information.
❑This method is however less effective for learning about people's views,
feelings and motivations. 9
Structured Analysis
❑Structured Analysis is a systematic approach used in SAD to break down complex
systems into manageable components. This method focused on defining the
systems requirement and the relationships between components in a clear,
organized way, making it easier to understand and develop complex systems.
❑Structured Analysis is a development method that allows the analyst to
understand the system and its activities in a logical way, which uses graphical tools
to analyze and refine the objectives of an existing system and develop a new
system specification which can be easily understandable by user.
❑During Structured Analysis, various techniques are used for system development.
They are:
i. Data Flow Diagram (DFD)
ii. Data Dictionary
iii. Decision Trees
iv. Decision Tables
v. Structured English 10
Data Flow Diagram (DFD)
❑Data Flow Diagrams (DFD) is a graphical representation technique used in
system analysis and design to show the flow of data within a system. It
provide a visual representation of how data moves through various
processes and stores within a system, highlighting the interactions
between different components.
❑A DFD is a graphical representation of a system that shows the flow of
data between processes, data stores, and external entities. It uses
standardized symbols to represent components and their interactions,
helping stakeholders understand the system's data flow and processing
logic.
❑DFD, It is a technique developed by Larry Constantine to express the
requirements of system in a graphical form. 11
Basic Elements of DFD
❑The following table shows the symbols used in designing a DFD and their
significance. The symbol set comprises of diagram entity, process, data
store and data flow.
12
Example 1
❑A System for computing students CGPA, illustrated using DFD.
Input Output
13
Example 2: Online Shopping System
❑Consider an online shopping system where customers browse products,
add items to their cart, and complete the checkout process. A DFD for this
system may include:
14
Data Dictionary
❑As the name suggests the data dictionary is a catalog of data,
such as data elements, data structures etc. Data dictionary is a
collection of data to be captured and stored in the system,
inputs to the systems and outputs generated by the systems.
❑A data dictionary improves the communication between the
analyst and the user. It plays an important role in building a
database. Most DBMSs have a data dictionary as a standard
feature.
❑Data dictionary is one of the most important reference works
that contain information about data which is also known as
metadata. It is compiled by systems analysts and guides
developers during analysis and design.
15
Example's of the Data Dictionary
S/NO DATA NAME DATA DESCRIPTION NUMBER OF
CHARACTERS
1 FNAME FULLNAME 15
2 LNAME LAST NAME 15
3 DOB DATE OF BIRTH 8
4 ADD HOME ADDRESS 72
5 ST_NO STUDENT NUMBER 8
No. of
Sr.No. Data Name Description
Characters
1 ISBN ISBN Number 10
2 TITLE title 60
3 SUB Book Subjects 80
4 ANAME Author Name 15
16
Decision Trees
❑Decision tree is a tree like structure that represents the various
conditions and the subsequent possible actions. It also shows the priority
in which the conditions are to be tested or addressed. Each of its
branches stands for any one of the logical alternatives and because of the
branch structure, it is known as a tree.
❑Decision trees are a method for defining complex relationships by
describing decisions and avoiding the problems in communication. A
decision tree is a diagram that shows alternative actions and conditions
within horizontal tree framework. Thus, it depicts which conditions to
consider first, second, and so on.
❑Decision trees depict the relationship of each condition and their
permissible actions. A square node indicates an action and a circle
indicates a condition. 17
Structure of the Decision tree
18
Example 1
❑For example, the discount policy of a mobile device company for his
customers. According to the policy, the mobile device company give
discount to his customers based on the type of customer and size of their
order. For the individual, only if the order size is 12 or more, the
manufacturer gives a discount of 50% and for less than 12 devices the
discount is 30%. Whereas in case of retailers, the discount policy is
different. If the order is less than 12 then there is 15% discount. For 13 to
48 devices order, the discount is 30%, for 49 to 84 devices 40% and for
more than 85 devices the discount is 50%.
❑The decision policy for discount percentage can be put in the form of a
decision tree.
19
Example 2
❑Procedure for becoming a member of library. Anyone whose age is 18 or
more than that can become a member of library. There are two types of
memberships depending upon the duration of membership. First is for 6
months and other is for 1 year. 6 months membership fee is $ 2 and 1
year membership fee is $ 3. Illustrate the decision tree.
❑Class work?
20
Structured English
❑Structure English is derived from structured programming language which
gives more understandable and precise description of process. It is based on
procedural logic that uses construction and imperative sentences designed to
perform operation for action. Using "IF", "THEN", "ELSE" and "So" statement
decisions are made.
▪ It is best used when sequences and loops in a program must be considered and the
problem needs sequences of actions with decisions.
▪ It does not have strict syntax rule. It expresses all logic in terms of sequential decision
structures and iterations.
❑The analyst is first required to identify the conditions that occur in the process,
subsequent decisions, which are to be made and the alternative actions to be
taken. However, the steps are clearly listed in the order in which they should be
taken.
❑There are no special symbols or formats involved unlike in the case of decision
trees and tables, also the entire procedure can be stated quickly as only English
like statements are used. 21
Example of Structured English
COMPUTE_DISCOUNT
See Number of Devices
IF order is from individual
and-if order is for 12 or more devices
THEN: Discount is 50%
ELSE order is for less than 12 devices
SO: Discount is 30%
ELSE order is from retailer
SO-IF order is for 85 devices or more
Discount is 50%
ELSE IF order is for 49 to 84 devices
Discount is 40%
ELSE IF order is for 48 to 13 devices
Discount is 30%
Else order is for less than 12 devices
SO: Discount is 15% 22
Decision Tables
❑Decision tables are a method of describing the complex logical relationship
in a precise manner which is easily understandable.
✓It is useful in situations where the resulting actions depend on the
occurrence of one or several combinations of independent conditions.
✓It is a matrix containing row or columns for defining a problem and the
actions.
❑The entries in decision table are given by Decision Rules which define the
relationships between combinations of conditions and courses of action. In
rules section,
✓Y shows the existence of a condition.
✓N represents the condition, which is not satisfied.
✓A blank - against action states it is to be ignored.
✓X (or a check mark will do) against action states it is to be carried out.
23
Example of Decision Tables
CONDITIONS Rule 1 Rule 2 Rule 3 Rule 4
Advance
payment Y N N N
made
Purchase
amount = $ - Y Y N
10,000/-
Regular
- Y N -
Customer
ACTIONS
Give 5%
X X - -
discount
Give no
- - X X
discount
24
Selecting Appropriate Tools
Use the following guidelines for selecting the most appropriate tool that
would suit your requirements:
✓Use DFD at high or low level analysis for providing good system
documentations.
✓Use data dictionary to simplify the structure for meeting the data
requirement of the system.
✓Use structured English if there are many loops and actions are complex.
✓Use decision tables when there are a large number of conditions to check
and logic is complex.
✓Use decision trees when sequencing of conditions is important and if
there are few conditions to be tested.
25
Summary of the Lecture
In this section, we have learned:
1) fact finding techniques and its various techniques including,
➢Interview
➢Questionnaires
➢Record Review
➢Observation
2) Structured Analysis and its different tool for structured analysis
➢Data Flow Diagram
➢Data dictionary
➢Decision Tree
➢Decision Table
➢Structured English
26
Thank You!
27