Flow oriented modeling

Post on 20-Jun-2015

1,731 views 5 download

Tags:

transcript

1

Flow-Oriented Modeling

Represents how data objects are transformed at Represents how data objects are transformed at they move through the systemthey move through the system

A A data flow diagram (DFD)data flow diagram (DFD) is the diagrammatic is the diagrammatic form that is usedform that is used

Considered by many to be an ‘old school’ Considered by many to be an ‘old school’ approach, flow-oriented modeling continues to approach, flow-oriented modeling continues to provide a view of the system that is unique—it provide a view of the system that is unique—it should be used to supplement other analysis should be used to supplement other analysis model elementsmodel elements

2

The Flow ModelEvery computer-based system is an Every computer-based system is an information transform ....information transform ....

computercomputerbasedbasedsystemsystem

inputinput outputoutput

3

Flow Modeling Notation

external entityexternal entity

processprocess

data flowdata flow

data storedata store

4

External Entity

A producer or consumer of dataA producer or consumer of data

Examples: a person, a device, a sensorExamples: a person, a device, a sensor

Another example: computer-basedAnother example: computer-basedsystemsystem

Data must always originate somewhereData must always originate somewhereand must always be sent to somethingand must always be sent to something

5

Process

A data transformer (changes inputA data transformer (changes inputto output)to output)

Examples: compute taxes, determine area,Examples: compute taxes, determine area,format report, display graph format report, display graph

Data must always be processed in some Data must always be processed in some way to achieve system functionway to achieve system function

6

Data Flow

Data flows through a system, beginningData flows through a system, beginningas input and be transformed into output.as input and be transformed into output.

computecomputetriangle triangle

areaarea

basebase

heightheight

areaarea

7

Data Stores

DataData is often stored for later use.is often stored for later use.

look-uplook-upsensorsensordatadata

sensor #sensor #

report requiredreport required

sensor #, type, sensor #, type, location, agelocation, age

sensor datasensor data

sensor numbersensor number

type, type, location, agelocation, age

8

Data Flow DiagrammingGuidelines

• All icons must be labeled with meaningful names• The DFD evolves through a number of levels of

detail• Always begin with a context level diagram (also

called level 0)• Always show external entities at level 0 and 1

• The level 0 data flow diagram should depict the software/system as a single bubble

• Primary input and output should be carefully noted

• Refinement should begin by isolating candidate processes, data objects, and data stores to be represented at the next level

• All arrows and bubbles should be labeled with meaningful names

• Information flow continuity must be maintained from level to level

• One bubble at a time should be refined9

10

Constructing a DFD – level 0

• Review the data model to isolate data objects and use a grammatical parse to determine “operations”

• Determine external entities (producers and consumers of data)

• Create a level 0 DFD

11

12

Constructing a DFD – level 1

• A “grammatical parse” on the narrative that describes the context level bubble.

• Isolate all nouns (and noun phrases) and verbs (and verb phrases).

• Verbs are processes which are represented as bubbles in a subsequent DFD.

• Nouns are external entities / data objects / control objects / data store.

13

14

Constructing a DFD – level 2

• Refines the monitor sensors process

15

16

PSPEC• The process transform performs password validation at the control panel

for the SafeHome security function.• Process password receives a four-digit password from the interact with

user function.• The password is first compared to the master password stored within the

system.• If the master password matches , [valid id message = true] is passed to the

message and status display function.• If the master password does not match , the four digits are compared to a

table of secondary passwords (they may be assigned to house guests and/or workers who require entry to the home when the owner is not present).

• If the password matches an entry with the table, [valid id message = true] is passed to the message and status display function.

• If there is no match, [valid id message = false] is passed to the message and status display function.

17