Professional Documents
Culture Documents
System Analysis
SDLC System Request
Preliminary
Investigation
(Feasibility Study)
Preliminary
Investigation
Report
System Analysis
System
Requirements
Document
System
Design
System
Design
Specification
System Development
System Implementation
System Requirements
Definition of System Analysis (Requirements Analysis)
• Meaning
– Widely used technique and the most
productive.
– Ask the user face-to-face on how the current
system works and about requirements.
– Formal meetings (with agenda, objectives).
– Documented feedback to the user for
confirmation
Advantages of Interviews
• Overcome Resistance. Provides an opportunity to meet
and overcome user resistance. It gets cooperation of
people involved.
• Body language. Interviews allow the analyst to observe
the tone of the responses and body language which
convey great deal of information. (this will help the analyst to
have better understanding of the real issues involved)
Evaluation
Evaluation
• Justification
Requirements Mapping of A
Software Package
Functional Requirements
• Describe the functionality or services that the system
is expected to provide.
• Described in detail eg. inputs, outputs, processes,
and stored data. (that are needed to satisfy the
system improvement objectives)
• Depend on :
– type of software
– users’ requirements
Examples of Functional
Requirements – Sales Order System
• Storage Requirements. Fast retrieval (eg. for reporting
purpose) and update of data from product.
• User Interface Requirements. Automatic entry of
product data (e.g. Through use of bar-code scanning )
and easy-to-use data entry screens. (e.g. Through
keyboards)
• Processing Requirements. Fast automatic calculation of
sales totals and shipping costs.
• Control Requirements. Signals for data entry errors and
quick pricing, and customer databases. Mail
confirmation for customers. (for orders which have been
accepted and processed).
Non-Functional Requirements
Data
Store
DFD Symbols
Notation Used (Recommended)
These will be
the symbols
recommended
and used in
TAR University
College in
assignments
and exams.
Data Flow (object / noun)
• Definition
– A path by which data moves from one part of the IS to
another part.
– Represents a specific piece of data in motion.
• Examples
– Calculating Gross Pay Process :
• Input data flows (e.g. worked hours, pay rate,
employee number);
• Output data flows (e.g. gross pay)
– Creating Purchase Order Process : Input data flows
(purchase requisition, item details, supplier details);
Output data flows (eg. PO)
• Symbol/Notation
invoice
Process(active verb + object/noun)
• Definition
– Describes the main transformations that take place
within the system. It changes incoming data flows into
outgoing data flows.
• Examples
– Calculate gross pay
– Preparing vendor cheques
• Symbol
– A circle
– Labeled with an active verb (eg. Calculate) and a noun
Data Store
• Definition
– Shows information that is stored within the system
– It is accessed and updated by the processes
– It is a repository of data (a file)
• Examples
– Student Scores
– Employee Salary and Deduction data
• Symbol/Notation
– An open-ended rectangle
– Labeled with a name (noun) and a number as an
identifier
Entities
• Definition
– Represents a person, department, organisation
or other IS that receives (sink) or send (source)
information to the system concerned.
– Show the boundaries of the IS
• Examples
– Customer
– Patient
• Symbol
– A rectangle
– Labeled with a noun
Steps in Drawing DFD
• Start by drawing a Context Diagram
• Draw detail diagrams using series of ‘explosion’ or level
of abstraction eg. Diagram 0, diagram 1 etc. until
‘functional primitive’. (a process that consists of a single
function that is not exploded further).
Draw
Context Diagram
Draw
Diagram 0 DFD
‘Explosions’
Draw
Diagram 1 DFD
DFD and
Levels of
Abstraction
(‘explosion’)
Note :
Data stores not
shown in context
diagram
The number of
external entities
remain the same
In ‘balancing’, the
number of inflows
and outflows
remain the same
Context Diagram
• Definition – represents the entire software element
as a single process (rectangle or circle) with input
and output data indicated by incoming and
outgoing arrows.
request for
quotation
purchase 0 quotation
request
Branches Purchasing Supplier
System
purchase
order
Example 1 – Sales Order System
• In XYZ Ltd, when a sales order is received from a
customer, the sales personnel would have to
check whether the particular customer’s credit
limit has been exceeded or not. This can be
carried out by checking with the Accounts Dept.
The next thing to check is the availability of the
stock items ordered. Where all these are in
proper order, then an order confirmation will be
sent to the customer and a delivery request sent
to the Warehouse. The Warehouse would
confirm if the delivery of goods has been
completed. After the goods have been sent to
the customer, an Invoice generation request will
be sent to the Accounts Dept to issue an invoice
to the customer.
Context Diagram
Diagram 0 DFD
Diagram 1 DFD – Receive Order
Example 2 – Ticket Reservation
System
• The ticketing function starts with the customer
booking tickets online in the comfort of their
homes or simply to walk-in to any of the 50
ticketing counters located in various places
throughout the country. When a reservation is
made, cash payment is collected to be banked
in later in the day. Payment can also be made
using credit cards where the normal credit
verification with the credit card firm is carried
out. Cancellation, if any, can only be allowed at
least two weeks prior to the concert when
refunds will be given. In other cases no
refunds will be allowed.
Context Diagram – Ticket
Reservation System
Context
Diagram
Diagram 0 DFD
Steps in Drawing DFD
- Purchasing System
Purchasing System
• Purchase requests are received from other departments
to buy goods.
• The purchasing department will invite request for
quotations to suppliers. Suppliers will be sending in
bids.
• A purchase order will be prepared, a copy of which is
sent to the supplier and a copy retained.
• When goods are delivered by the suppliers, the items
received are checked against the purchase order. The
delivery order is filed after noting any discrepancies.
• When the invoice is received from the supplier, it is
checked against the delivery order, payment is then
made and the invoice is filed.
1. Draw Context Diagram
• Draw a single process that represents the entire system. The process is
named after the system with number zero
• Identify and draw the external entities
• Draw the data flows from an external entity to the system and from the
system to that external entity
Diagram 0
DFD
Diagram 1 DFD – User Module
Purpose of DFD
• Help the analyst to understand the
business processes or users’ problems
better
• Describe how the current business
processes work.
• Describe how the proposed system work
and its scope and boundary.
• Users - gain users agreement (sign-off)
and commitment.
Important Points /
Rules on DFD
DFD Rules
• Process Rules
– Transformation. Processes must have both inputs and outputs and they
must differ, that is some transformation must occur to the inputs to produce
the outputs
– Process Number. Each process is numbered but this is only for ease of
identification and not to show sequence.
– Process Heading. The description of the process should be a verb like
‘prepare’, ‘calculate’, ‘check’ etc plus objects (nouns).
• Data Flow Rules
– Arrows. Arrows must always finish at or start from a process.
– Label. Every arrows must be labeled. However, there is no requirement to
label arrows that go in and out of data stores.
– Data flow should not cross line to each other (Solution: duplicated
entity/data store)
• Data Store Rules
– Number. Data stores are given a reference number (for reference only)
Repeated Diagrams
• Rather than having data flow arrows criss-
crossing all over the place it is often
simpler to show a symbol more than once
on the same diagrams.
• Repeated Entity
Customer
Some Common Errors
Incorrect Combination of Data Flow
and Process Symbols
Incorrect Combination of Data Flow
and Process Symbols
• Miracle: has outputs but no inputs
• Black hole: has inputs but no outputs
• Gray hole: the inputs are insufficient to produce the output
Entities
Order Product
Despatch Relationships
Note
ERD Notations
Entity
• 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
• Notation. It is represented by a
rectangular box.
Examples of Entities
• Persons : agency, contractor, customer,
department, division, employee, instructor,
student, supplier
• 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
• Places : sales region, building, room, branch
office, campus
Exercise 2
• List 4 appropriate entities for the following
systems :
– Inventory System
– Human Resource System
– Purchasing System
Solution
• Inventory System
• Purchasing System
Relationship
• Meaning. The lines between the boxes
represent relationships.
• Example. Between CUSTOMER and
ORDER
• Notation. The relationship is indicated by
lines connecting the entities
3 Types of Relationship
• One-to-One (1 : 1)
• One-to-Many (1 : N)
Types of Relationship
• Many-to-Many (M : N)
Cardinality – no of occurrences
Crow’s Foot Notation
Crow’s Foot Notation
• Describes the number of relationships between
two entities
• Shows how many instances of one entity relate
to instances of another entity.
• Cardinality must be defined in both directions for
every relationship.
Crow’s Foot Notation Examples
Crow’s Foot Notation Examples
Example 1 - Inventory System
Example 2 – Sales Order
Processing System
Example 3 – Purchase Order
Processing
Resolving Many-to-Many
Relationship
Example 1 – Associative Entity
• By introducing an ‘associative’ entity to form a
new 2 pairs of one-to-many relationships.
Order Line
Associative
Entity
Attributes (Fields)
Customer Order
Primary
Key
CustomerID OrderNo
LastName Order Date
Attributes FirstName CustomerID
Address
PostCode
City
Phone
Foreign
Key
Sample Data for Each Attribute
Listing Attributes using DBDL
• DBDL = Database Design Language
Customer Order