Data and Process Modeling
Data and Process Modeling
• Physical model
– describes how the system will be constructed
2
Overview of Data and Process
Modeling Tools
• Systems analysts use many graphical techniques to
describe an information system
• Data and process modeling involves three main tools:
– data flow diagrams,
– data dictionary, and
– process descriptions
• A data flow diagram (DFD) uses various symbols to
show how the system transforms input data into
useful information
3
Data Flow Diagrams
A data flow diagram (DFD)
• shows how data moves through an information system
• but does not show program logic or processing steps
A set of DFDs
• provides a logical model that
• shows what the system does,
• not how it does it
4
Data Flow Diagrams
• DFD Symbols: Different symbol sets
5
Data Flow Diagrams
• DFD Symbols
– Process symbol
• Receives input data and produces output that has a
different content, form, or both
• Contain the business logic, also called business rules
6
Data Flow Diagrams
• DFD Symbols
– Data flow symbol
– Data flow is a path for data to move from one part of the
information system to another.
• Represents one or more data items
• The symbol for a data flow is a line with a single or double
arrowhead
– Impossible DFDs
– Spontaneous generation produces output but has no input
– Black hole has input but no output
– Gray hole has both, but input is not sufficient to create the output
7
Data Flow Diagrams
• DFD Symbols
– Data store symbol
• Represent data that the system stores
9
Two data stores cannot be connected by a data flow
without an intervening process, and each data store must
have at least one outgoing and one incoming data flow.
Data Flow Diagrams
• DFD Symbols
– Entity Symbol
• Name of the entity appears inside the
symbol
• Shows External entities that provide data
to the system
Also called Terminators:
• Since they are the data origins or final
destinations
• Source: entity supplying data
• Sink: entity that receives data
• Each entity must be connected to a process
by a data flow
11
Creating a Set of DFDs
• Create a graphical model of the information
system based on your fact-finding results
• Three-step process
– Step 1: Draw a context diagram
12
Creating a Set of DFDs
• Guidelines for Drawing DFDs
– Draw the context diagram so that it fits on one page
– Use the name of the information system as the process
name in the context diagram
– Use unique names within each set of symbols
– Do not cross lines
– Provide a unique name and reference number for each
process
– Obtain as much user input and feedback as possible
13
Creating a Set of DFDs
• Step 1: Draw a Context Diagram
– Context diagram is a top-level view of an information
system that shows the system’s boundaries and scope.
– Most general view
14
Example 1
Example 2
Creating a Set of DFDs
• Step 2: Draw a Diagram 0 DFD
– Show the detail inside the black box
17
Creating a Set of DFDs
• Step 2: Draw a Diagram 0 DFD
– If same data flows in both directions, you can use a double-
headed arrow
– A diverging data flow is a data flow in which the same data
travels to two or more different locations.
– Diagram 0 is an exploded view of process 0
• Parent diagram: higher-level diagram of an exploded DFD
• Child diagram: lower-level diagram of an exploded DFD
– Functional primitive:
• A process that consists of a single function that is not exploded further
18
Creating a Set of DFDs
• Step 3: Draw the
Lower-Level Diagrams
– Must use leveling and
balancing techniques
– Leveling examples
• Uses a series of
increasingly detailed
DFDs until all functional
primitives are identified
• Exploding, partitioning,
or decomposing
19
Creating a Set of DFDs
• Step 3: Draw the
Lower-Level
Diagrams
– Balancing
• Ensures that the input
and output data flows of
the parent DFD are
maintained on the child
DFD
20
Example 2
Data Dictionary
• A data dictionary, or data repository:
– a central storehouse of information about the
system’s data
• An analyst uses the data dictionary to
collect, document, and organize specific
facts about the system
• Also defines and describes all data elements
and meaningful combinations of data
elements
25
Data Dictionary
• A data element, a data item or field:
– the smallest piece of data that has meaning
• Data structures:
– Data elements combined into records.
• A record:
– a meaningful combination of related data
elements that is included in a data flow or
retained in a data store
26
Data Dictionary
• Documenting the Data
Elements
– You must document
every data element in
the data dictionary
– The objective is the
same: to provide clear,
comprehensive
information about the
data and processes that
make up the system
27
Data Dictionary
• Documenting the Data Elements
– The following attributes usually are recorded
and described
• Data element name and label
• Alias (alternate names for the data element)
• Type and length
• Default value
• Acceptable values - Domain and validity rules
28
Data Dictionary
• Documenting the Data Elements
– The following attributes usually are recorded
and described
• Source
• Security
• Responsible user(s)
• Description and comments
29
Data Dictionary
• Documenting the Data Flows
• using Visible Analyst CASE
tool
– The typical attributes are as
follows
• Data flow name or label
• Description
• Alternate name(s)
• Origin
• Destination
• Record
• Volume and frequency
30
Data Dictionary
• Documenting the Data
Stores
– Typical characteristics
of a data store are
• Data store name or
label
• Description
• Alternate name(s)
• Attributes
• Volume and frequency
31
Data Dictionary
• Documenting the
Processes
– Typical characteristics
of a process
• Process name or label
• Description
• Process number
• Process description
32
Data Dictionary
• Documenting the
Entities
– Typical characteristics
of an entity include
• Entity name
• Description
• Alternate name(s)
• Input data flows
• Output data flows
33
Data Dictionary
• Documenting the
Records
– Typical characteristics
of a record include
• Record or data structure
name
• Definition or
description
• Alternate name(s)
• Attributes
34
Data Dictionary
• Data Dictionary Reports
– Many valuable reports
• An alphabetized list of all data elements by name
• A report describing each data element and
indicating the user or department that is responsible
for data entry, updating, or deletion
• A report of all data flows and data stores that use a
particular data element
• Detailed reports showing all characteristics of data
elements, records, data flows, processes, or any
other selected item stored in the data dictionary
35
Process Description Tools
• A process description
• documents the details of a functional primitive,
which represents a specific set of processing
steps and business logic
37
Process Description Tools
• Typical Process description tools:
– Structured English, decision tables, and decision trees.
• Structured English:
– a subset of standard English
– describes logical processes clearly
– Must conform to the following rules
• Use only the three building blocks of sequence, selection, and
iteration
• Use indentation for readability
• Use a limited vocabulary, including standard terms used in the data
dictionary and specific words that describe the processing rules
38
Process Description Tools
• Structured English
– Might look familiar to programming students
because it resembles pseudo code
– The primary purpose of structured English is to
describe the underlying business logic
39
Process Description Tools
• Decision Tables
– Shows a logical structure, with all possible
combinations of conditions and resulting actions
– It is important to consider every possible outcome to
ensure that you have overlooked nothing
40
Process Description Tools
• Decision Tables
– The number of rules doubles each time you add a
condition
– Can have more than two possible outcomes
– Often are the best way to describe a complex set of
conditions
41
Process Description Tools
• Decision Trees
– Graphical representation of the conditions,
actions, and rules found in a decision table
42