is3320 developing and using management information systems lecture 16: data-flow diagrams 1 (intro...

22
IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure [email protected] www.robgleasure.com

Upload: silvester-shepherd

Post on 19-Jan-2016

223 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

IS3320 Developing and Using Management Information SystemsLecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams)

Rob Gleasure

[email protected]

Page 2: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

IS3320

Today’s lecture What are DFDs? Exercise

Page 3: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 4: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 5: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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!

Page 6: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 7: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 8: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 9: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

Rules Needs to have input and output

Components: Processes

Apply InsurancePremium

Payment AmountPolicy Number

2.1

Calculate Gross Pay

Hours Worked Pay Rate

Incorrect!

Page 10: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

Components: Data Store

Is used in a DFD to represent data that the system stores Labels should be noun phrases

StudentsD1

Page 11: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

2.0

BookFlight

Passengers

FightRequest

Components: Data Store

Incorrect!

RuleMust have at least one incoming and one outgoing data flow

Page 12: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 13: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

RuleMust be connected to a process by a data flow

BANK

2.0

Prepare Deposit

BankDeposit

Components: External Entity

Page 14: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

PAYROLLDEPARTMENT

EMPLOYEE

Paycheck

CUSTOMER

AccountsReceivable

Payment

Components: External Entity

Incorrect!

Page 15: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 16: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 17: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

Spot the errors

E1

E1

P2

P1

1.0

2.0

DS1

DF2

DF2

DF6

DF4

DF3

DF1

DF5

Page 18: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 19: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 20: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

Example Context Level DFD

0

Order System

SALESREP

CUSTOMER WAREHOUSE

BANKACCOUNTING

Order

OrderReject Notice

PickingList

CompletedOrder

Payment Invoice

Commission Bank Deposit

CashReceiptsEntry

Page 21: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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

Page 22: IS3320 Developing and Using Management Information Systems Lecture 16: Data-Flow Diagrams 1 (Intro to Context-Level diagrams) Rob Gleasure R.Gleasure@ucc.ie

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