is3320 developing and using management information systems lecture 16: data-flow diagrams 1 (intro...
TRANSCRIPT
IS3320 Developing and Using Management Information SystemsLecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams)
Rob Gleasure
IS3320
Today’s lecture What are DFDs? Exercise
What are DFDs?
DFD stands for Data Flow Diagram
A DFD is a representation of a system that captures all of its important component pieces, as well as the interfaces between these components
DFDs focus on the movement of data between components
So… how is that different from flowcharts?
Flowcharts DFDs
Flow of control/activity Flow of data
Flows are sequential Flows are parallel
Flows are bound within a single time unit, e.g. over a minute, week, month, etc.
Flows can happen at any time, including on demand
Why use DFDs?
Use cases Allows us to identify the key actors and uses of a system
Flowcharts Allows us to break down uses into sequential algorithmic
processes, including how these processes are effected by decisions and conditions
DFDs Allows us to model the data and system resources available, as
well as how these are required by different actors during different processes
Used during analysis and
design!
How do we create a DFD?
A DFD is made up of four components
Component Symbol (a la gane and Sarson)
Processes
External entities
Data flows
Data stores
Components: Processes
Work or actions performed on data (inside the system) Receives input data and produces output
Labels should be verb phrases
1.0
ProduceGradeReport
Grade Detail Grade Report
Components: Processes
Rules Can have more than one outgoing data flow or more than one
incoming data flow
Can connect to any other symbol (including another process symbol)
3.0
Calculated Gross Pay
Hours Worked
Pay Rate
Gross Pay
1.0
VerifyOrder
2.0
Assemble Order
Order Accepted OrderInventory Change
Rules Needs to have input and output
Components: Processes
Apply InsurancePremium
Payment AmountPolicy Number
2.1
Calculate Gross Pay
Hours Worked Pay Rate
Incorrect!
Components: Data Store
Is used in a DFD to represent data that the system stores Labels should be noun phrases
StudentsD1
2.0
BookFlight
Passengers
FightRequest
Components: Data Store
Incorrect!
RuleMust have at least one incoming and one outgoing data flow
Components: External Entity
External entity that is origin or destination of data (outside the system)
Is the singular form of a department, outside organisation, other IS, or person Labels should be noun phrases
Note, sometimes the following terms are used: Source – Entity that supplies data to the system Sink – Entity that receives data from the system
CUSTOMER
1.0
VerifyOrder
Order
Invoice
RuleMust be connected to a process by a data flow
BANK
2.0
Prepare Deposit
BankDeposit
Components: External Entity
PAYROLLDEPARTMENT
EMPLOYEE
Paycheck
CUSTOMER
AccountsReceivable
Payment
Components: External Entity
Incorrect!
Components: Data Flow
A path for data to move from one part of the IS to another Arrows depicting movement of data
Can represent flow between process and data store by two separate arrows
2.1
Post Payment
Accounts Receivable
D1
Payment Detail
Invoice Detail
Components: Data Flows
Summary of rules for data flows
MAY connect a process to another process
MAY connect a process to an external entity
MAY connect a process to a data store
May NOT connect an external entity to another external entity
May NOT connect an external entity to a data store
May NOT connect a data store to another data store
Spot the errors
E1
E1
P2
P1
1.0
2.0
DS1
DF2
DF2
DF6
DF4
DF3
DF1
DF5
Levels of DFDs
DFDs are constructed separately across several layers, each of which serves a slightly different function Context-level
Shows system boundaries, the data flows between external entities and the system
Level-1 Shows system’s major processes, data flows, and data stores
at a high level of abstraction (not detailed) Level-2, Level-3, …, Level n
Iteratively break down a system description down into finer and finer detail
New DFDs must be balanced at each stage to ensure they are complete and correct
Steps in Constructing Context Level DFD
1. Read the narrative/collection of narratives describing the system
2. Create your main system process
3. Identify the external entities from the text (usually these will be among the nouns in the narrative)
4. Identify and name the data flows to and from these external entities to your main system process
Example Context Level DFD
0
Order System
SALESREP
CUSTOMER WAREHOUSE
BANKACCOUNTING
Order
OrderReject Notice
PickingList
CompletedOrder
Payment Invoice
Commission Bank Deposit
CashReceiptsEntry
Exercise
Consider an ATM interface system Users enter their account details and password Users view balance Users retrieve cash ATM checks account details and balance against bank system ATM updates the bank database when cash is distributed ATM checks quantity of each bank note available from cashbox ATM retrieves bank notes from cashbox ATM updates quantity of each bank note available from cashbox
Want to read more?
Sullivan, L.H. (2006). +Just Enough Structured Analysis, Chapter 9: Dataflow Diagrams http://static.squarespace.com/static/
50c9c50fe4b0a97682fac903/t/512878e6e4b02e5615b4c5ed/1361606886338/Yourdon%20DFD.pdf
Data Flow Diagrams: An Agile introduction http://www.agilemodeling.com/artifacts/dataFlowDiagram.htm