Chapter 05 System Analysis
Chapter 05 System Analysis
ANALYSIS
Chapter 5
2
TOPICS:
Chapter 5a
• Traditional methods for determining requirements
• Contemporary methods for determining system requirements
Chapter 5b
• Requirements determination using Agile methodologies
• Structuring system process requirements
• Structuring system data requirements
3
SYSTEM ANALYSIS
4
SYSTEM ANALYSIS
Analysis is the first systems development life cycle (SDLC) phase where
you begin to understand, in depth, the need for system changes
SYSTEM ANALYSIS
Two main activities
• Requirements determination. This is primarily a factfinding activity.
• Requirements structuring. This activity creates a thorough and clear
description of current business operations and new information
processing services.
TRADITIONAL METHODS
FOR DETERMINING
REQUIREMENTS
7
FACT-FINDING TECHNIQUES
• Interview
• Questionnaire
• Document Review
• Observation
8
INTERVIEW
• Interviewing is one of the primary ways analysts ( projects manager) gather
information about an information systems project.
• Interviewing is an important fact-finding(fact, opinion, specification) tool
during the system analysis phase.
• An interview is a planned meeting during which the analyst obtain
information from another person. The skills needed to plan, conduct, and
document interviews successfully must be understood.
• Interviewees are current users, sometimes customers/suppliers, of the current
system or potential users of the proposed systems.
• During interviews, it is important to gather as much relevant information as
possible.
9
INTERVIEW
• Interviewer will ask more open-ended question so to obtain the qualitative
information.
• This technique is often the best source of qualitative information, such as
getting interviewee’ opinions or suggestions.
• The successful of an interview depends very much on the good
communication skill of the interviewer (SA).
10
TYPICAL
INTERVIEW
GUIDE
ADVANTAGES OF INTERVIEW 11
Overcome Resistance
Get the user directly involved & giving them the feeling of having made a substantial
contribution.
Better understanding
Allow the analyst to observe tone & voice inflection, body language of respondent.
12
DISADVANTAGES OF INTERVIEW
Costly and Time-consuming
An interview requires the dedicated time of both the interviewer and the interviewee for the
duration of the interview. [preparation-open ended question to interview-
interpretation(analyse the question)]
Require Skill
Certain amount of skill is required on the part of the interviewer and interviewing is an art not
readily acquired.
QUESTIONNAIRE
• It enables a large number of participants, from various departments to even various
countries, to be involved in the systems investigation. (geographic areas)
• With standardized questions, the facts gathered tend to be more reliable and often more
honest responses.
• Questionnaire uses more close-ended questionnaires to gather quantitative information.
• Questionnaires should be tested and if necessary, modified before printed and distributed.
• Recipients of questionnaires should be selected depending on the information they can
provide. SA should ensure the respondents’ backgrounds and experiences that qualify them
to answer the questions.
14
ADVANTAGES OF QUESTIONNAIRE
Respondent Given Time & Answer at Leisure
Given time to assemble the required information.
Respond Anonymously
Submit the questionnaire without written name on the top.
16
DISADVANTAGES OF QUESTIONNAIRE
Difficult to Design (a lot of guideline)
Difficult to design the questions so that no misinterpretation is possible and no
bias is possible in the replies.
Not all the forms will be returned (some of the form that refuse to answer)
Refuse to fill in forms.
17
DOCUMENT REVIEW
• Records and reports can provide analysts with valuable information about the
organization and its business operations.
• In document review, SA examines information that has been recorded about the system
and users.
• Records include written policy, manuals, regulations and standard operating procedures
used by most organizations as a guide for managers and employees.
• Sometimes the documented records can be out-dated. Thus, it might be no longer in use
or the actual practices might not comply to the system documentation.
• SA should review copies of the actual forms and operating documents that are currently
used in the system. Both blank copies of forms and samples of actual completed forms
should be collected.
18
OBSERVATION
• Refer to observing the current operating procedures, in order to have a fully understanding
of the system’s operation.
• Seeing the system in action gives an additional perspective to supplement what we have
heard and read from interview, observation or questionnaires.
• By personal observation, SA could verify statements made in interviews as well as
determine if procedures operate as specified in the system documentation.
• SA might even discover if the system documentation and the statements from interviewed
truly reflect the system in operations.
• Through observation, we might correct any misconceptions or erroneous impressions.
• Plan the observation in advance by preparing a checklist of the steps that wanted to be
observed and the questions to be asked.
21
ADVANTAGES OF OBSERVATION
Additional Perspective
Seeing the system in action gives you an additional perspective to supplement
what you have heard (interview) and read (inspection)
Acquire Know-how
Personal observation helps you acquire the know-how you will need for
implementation
22
ADVANTAGES OF OBSERVATION
Better Acceptance
Better acquainted with the operating personnel who will be implementing the
new or changed system
Environmental Conditions
Allows the analyst to observe environmental conditions (such as dirt, space and
noise) which may affect implementation
DISADVANTAGES OF OBSERVATION 23
Time Consuming
Time factor will often prevent the analyst from making as thorough an investigation
Subconscious Observation
An analyst will tend to make subconscious observations of his local environment and based on past
experiences
CONTEMPORARY METHODS FOR
DETERMINING SYSTEM
REQUIREMENTS
25
Users. The key users of the system under consideration are vital participants in a
JAD. They are the only ones who have a clear understanding of what it means to
use the system on a daily basis.
JOINT APPLICATION DESIGN 29
Managers. Managers of the work groups who use the system in question provide
insight into new organizational directions, motivations for and organizational
impacts of systems, and support for requirements determined during the JAD.
Systems analysts. Members of the systems analysis team attend the JAD,
although their actual participation may be limited. Analysts are there to learn
from users and managers, not to run or dominate the process. (to record the
progress of the project)
Scribe. The scribe takes notes during the JAD sessions. This is usually done on a
laptop. Notes may be taken using a word processor, or notes and diagrams may
be entered directly into a CASE tool.
31
The prototype can then serve as the basis for the production system in a process called
evolutionary prototyping.
Alternatively, the prototype can serve only as a model, which is then used as a reference for
the construction of the actual system. In this process, called throwaway prototyping, the
prototype is discarded after it has been used.
36
PROTOTYPING
CASE tool
EVOLUTIONARY PROTOTYPING
• A life-cycle model of evolutionary prototyping illustrates the iterative nature
of the process and the tendency to refine the prototype until it is ready to
release.
• One key aspect of this approach is that the prototype becomes the actual
production system.
38
EVOLUTIONARY PROTOTYPING
THROWAWAY PROTOTYPING
• Throwaway prototyping does not preserve the prototype that has been developed.
• With throwaway prototyping, there is never any intention to convert the prototype
into a working system. the prototype is developed quickly to demonstrate some
aspect of a system design that is unclear or to help users decide among different
features or interface characteristics.
• Once the uncertainty the prototype was created to address has been reduced, the
prototype can be discarded, and the principles learned from its creation and testing
can then become part of the requirements determination.
40
PROTOTYPING
Prototyping is most useful for requirements determination when:
• User requirements are not clear or well understood, which is often the case for
totally new systems or systems that support decision making. (to identify the
clear requirement of customer)
• One or a few users and other stakeholders are involved with the system.
• Possible designs are complex and require concrete form to fully evaluate.
41
PROTOTYPING
Prototyping is most useful for requirements determination when:
• Communication problems have existed in the past between users and analysts
and both parties want to be sure that system requirements are as specific as
possible.
• Tools (such as form and report generators) and data are readily available to
rapidly build working systems.
DRAWBACKS OF PROTOTYPING 42
• Prototypes can become very idiosyncratic to the initial user and difficult to diffuse or adapt
to other potential users.
• Prototypes are often built as stand-alone systems (, thus ignoring issues of sharing data and
interactions with other existing systems, as well as issues with scaling up applications.
• Checks in the SDLC are bypassed so that some more subtle, but still important, system
requirements might be forgotten (e.g., security, some data entry controls, or
standardization of data across systems).
REQUIREMENTS
DETERMINATION USING
AGILE METHODOLOGIES
REQUIREMENTS DETERMINATION USING AGILE 44
METHODOLOGIES
Agile requirements determination techniques are another contemporary approach to
figuring out what a new or improved system is supposed to do.
• This iterative process can continue through several cycles, until most of the major
functionality of the system has been developed.
• Extensive involvement of users in the analysis and design process is a key part of
many Agile approaches, but it was also a key part of Rapid Application
Development
THE ANALYSIS–DESIGN–CODE–TEST
46
CYCLE
47
• All phases of the life cycle converge into a series of activities based on the basic
processes of coding, testing, listening, and designing.
The Planning Game has three phases: 50
SPECIFICATION
• There exist lots of tools that could be used in helping SA to perform the
analysis tasks.
• All these tools are to ensure that the tasks of analysis are performed with
accuracy and efficiency.
DECISION TREE
• It is a graphical representation of the conditions, actions, and rules found in a
decision table. It also very useful ways to present the system to management.
• Decision trees show the logic structure in a horizontal form that resembles a tree
with the root at the left and branches to the right. This orientation allows the
analyst to write on the branches in order to describe conditions and actions.
• The sequence of the condition and actions are important. We begin to build the
tree from left to right while making sure that we complete listing all possible
alternatives before moving over to the right.
• A tree might not always be symmetrical all the times, where we could have a
complex decision tree.
61
DECISION TREE
Advantages of using decision trees:
• The order of checking conditions and executing actions is immediately noticeable.
• Conditions and actions of decision trees are found on some branches but not on others, unlike
decision tables where they are all part of the same table.
• Those conditions and actions that are connected directly to other conditions and actions, while
those conditions that do not matter are absent.
• Compared to decision tables, decision trees are more readily understood by others in the
organization. Thus, they are more appropriate as a communication tools.
DECISION TABLE
• A decision table is a table of rows and columns, separated into four
quadrants.
10. Check the table for any impossible situation, contradiction and
redundancies.
DECISION TABLE 69
EXTENDED-ENTRY FORM
• A narrative action approach is
used instead of simply a Y or N in
the case of a limited-entry form
table.
74
ELSE-ENTRY FORM
• This form is useful in helping to eliminate many repetitious rules
requiring the same exact action. It is also useful in preventing errors of
omission.
ELSE-ENTRY FORM EXAMPLE 75
STRUCTURED ENGLISH
• Many functional operations simply involve straightforward sequence of
tasks or the iteration of smaller operations. In such case, a series of concise
English statements, called Structured English, can be used to
communicate the processing rules.
STRUCTURED ENGLISH
A Structured English must conform to the following rules:
1. Use only the 3 building blocks of sequence, selection and iteration.
2. Use indentation for readability.
3. Use a limited vocabulary including standard terms used in the data dictionary
and specific words that describe the processing rules.
4. Three basic constructs of Structured English:
1) Sequence
2) Selection
3) Iteration / Repetition
78
SEQUENCE
• The completion of one of two steps in sequential order, one after another.
• One or more of the steps might represent a sub process that contains
additional logical structures.
79
SEQUENCE
Example:
• Request the borrower’s library card.
• Check the borrower is the owner of the card.
• Receive the books from the borrower.
• Check the books are non-reference materials.
• Stamp due dates on the books.
• Return the library card and the stamped books to the borrower.
80
SELECTION
• Often, we need to make decision where the successive actions are based on certain
decision made.
• Two possible forms are the IF-THEN-ELSE-ENDIF form and CASE-
OTHERWISE-ENDCASE form.
• Others are such as IF_ELSE_ENDIF, IF_ENDIF………
• IF-THEN-ELSE-ENDIF form is probably easier for the user to understand when
there are only two options possible for the selection. Use of indentation and the
separation of lines will enhance the readability.
• When three or more options are possible for a selection, the CASE-
OTHERWISE-ENDCASE construct usually communicates better.
81
SELECTION
82
ITERATION / REPETITION
• It shows the repetition of a group of statements some number of times
until it is done.
• The group of statements to be repeated is indented directly below the
conditional statement. The condition statement specifies the number of
times the iteration is to occur.
• It has three possible forms: FOR-ENDFOR, DO WHILE- ENDDO and
REPEAT-UNTIL.
ITERATION / REPETITION
SELECTION EXAMPLE 84
REFERENCES:
EXAMPLE OF A SALES PROMOTION POLICY:
86
Decision Table
87
Decision Tree
88
Structured English
89
STRUCTURING
SYSTEM DATA
REQUIREMENTS
91
ENTITIES
• Meaning. A class of persons, places, objects, events, or concepts about
which we need to capture and store data (crudely, it is a file and described
using a noun).
• Examples : customers, products, suppliers, employees, departments
• Using singular or plural nouns is a matter of preference
• Notation - it is represented by a rectangle.
ENTITIES 94
Examples of Entities:
• Persons : agency, contractor, customer, department, division, employee,
instructor, student, supplier
• Places : sales region, building, room, branch office, campus
• Objects : book, machine, part, product, raw material, software license,
software package, tool, vehicle model, vehicle
• Events : application, award, cancellation, class, flight, invoice, order,
registration, renewal, requisition, reservation, sale, trip
• Concepts : account, block of time, bond, course, fund, qualification, stock
95
ATTRIBUTES
• Meaning - is a characteristic, data field, or data element of an entity. There are many
attributes for each entity.
• Example – Customer’s attributes are name, address, telephone, email.
• Notation:
RELATIONSHIPS
• Meaning. The lines between the entities (boxes) representing relationships
between them
• Example. Between CUSTOMER and ORDER
• Notation. The relationship is indicated by lines connecting the entities.
There’s a “crow’s” foot or a diamond shaped box
• Description : A relationship is read in two directions (left and right).
Example : Each customer places many orders, and each order is placed by
only one customer.
Customer Order
97
DEGREE OF RELATIONSHIP
The degree of a relationship is the number of entity types that participate in that
relationship.
Unary relationship
• A relationship between instances of one entity type; also called recursive
relationship.
Binary relationship
• A relationship between instances of two entity types. This is the most common
type of relationship encountered in data modelling.
Ternary relationship
• A simultaneous relationship among instances of three entity types.
98
Drug
99
TYPES OF RELATIONSHIPS
One-to-one relationship (1:1)
Exists when exactly one of the second entity occurs for each instance of the first entity.
TYPES OF RELATIONSHIPS
Relationship - to be read in bidirectional:
• 1: 1 🡪 1: 1
1: 1
• 1: M 🡪 1: M
1: 1
• M: N 🡪 1: M
M: 1
101
TYPES OF RELATIONSHIPS
• Example of One-to-Many Relationship (in Access)
• Example: A teacher can teach many students, and each student have one
class teacher.
102
TYPES OF RELATIONSHIPS
Many-to-Many Relationship
• Meaning - When an entry can occur more than once on both sides of the relationship.
• Examples
• Each student can take many classes, and each class can contain many students
• Each order contains many products, and each product can be listed in many orders.
Student Class
Order Product
We only use this for
ERD NOTATION
103
examination and
assignment submission
104
Associative Entities
• Also known as weak entities.
• Used to resolve M:N relationships.
• Composed of primary keys of each of the entities to be connected.
• By introducing an ‘associative’ entity to form a new 2 pairs of one-to-
many relationships.
• M: N 🡪 1: M
M: 1
RESOLVING MANY-TO-MANY RELATIONSHIP 108
Order_list
Associative Entity
109
Order Product
RESOLVING
MANY-TO-
Order_list MANY
RELATIONSHIP
Associative Entity
Associative entity
SUMMARY 111