Title: Structuring system requirements: process modeling
1 Structuring system requirements process
modeling
Chapter 8
2Three views for structuring data requirements
- Process view
- the sequence of data movement and handling
operations within the system (chapter 8) ?
process modelling - Logic and timing view
- the rules by which data are transformed and
manipulated and an indication of what triggers
data transformation (chapter 9 12)? Logic
modelling - Data view
- the inherent structure of data independent of how
or where it is processed (chapter 10)? Data
modelling
3Key Definitions
- A process model is a formal way of representing
how a business operates - Data flow diagramming shows business processes
and the data that flows between them - Logical process models describe processes without
suggesting how they are conducted - Physical models include information about how the
processes are implemented
4Objectives
- Understand the logical of processes modeling
through studying examples such as data flow
diagrams (DFD) - Learn basic mechanisms of drawing and revising
data flow diagram (DFD) - Use flow diagrams as tools to support the
analysis of information
5Modelling for three main reasons
- Facilitate understanding a system
- Process modelling involves graphical
representation of function and processes which
capture, manipulate, store and distribute data
between a system and its environment, and between
component within a system - It supports communication with a systems
analysts, end-users, and other roles
6Reading a DFD
7DFD Elements
8DFD Shapes from Visio
Visio 2000
Visio 5.x
9DFD Practical Example
Launched Dec. 11, 1998, the Climate Orbiter
plunged too steeply into the Martian atmosphere
Sept. 23, 1999, and either burned up or crashed.
In an initial failure report released Oct. 15,
2000 the review board blamed the navigation error
on a communications foul-up between NASA's Jet
Propulsion Laboratory and prime contractor
Lockheed Martin.
10Data Flow Diagram (DFD)
- DFD is one of several notations that are called
structured analysis technique - It is a graphical tool that allows analyst-users
to depict the flow of data in an IS - It concentrates on the movement of data between
processes - DFD evolves four symbols for process modelling
- Data flows
- Data stores
- Process
- Source / sink
11Data flows
- They are groups of data that move and flow
through a system from one place to another. - Include names of all individual elements of data
moving - Data flow is represented by arrow
- E.g. results of grading mark
Current score
Final score
Final grades
12Data stores
- They refer to data at rest that may represent one
or many physical locations. - Each data store has a label and number (number of
files location) - Data store is represented by a rectangle
- E.g. data about students (paper-based or floppy
disk)
13Processes
- They are the action performed on data so that
they are transformed (manual or automatic),
stored or distributed - E.g. calculate class mark
- Each process includes a name process number
- It is represented by rectangle with rounded
corners
14Sources / sinks
- They are the origin (sources) and/or destinations
(sink) of the data, i.e. that supplies or receive
data - They refer to external entities (or outside) to a
system boundaries of the system boundaries - Each source/ sink has a name that states what the
external agent is, e.g. students - A source (sink) is represented by square
Teacher
15Example of Data Flow Diagram
16Items not considered in DFD
- Interaction between source (sink)
- Actions of source (sink) are black box
- How to redesign or control the source (sink)
- How to provide source (sink) direct access to
data,
17Clarification of the concept source (sink)
- Any organisation unit or other organisation which
send or receive data (information) from the
system you are analysing (e.g. supplier) - A person inside or outside the business supported
by the system (e.g. customer) - Another system with which the system, you are
analysing, exchanges data (information)
18Context diagram of DFD
Final grades
Student
Registers office
Test scores
Final grades
Current score
Final score
Teacher
Context diagram is an overview of an
organisational system that show the system
boundaries, external entities that interact with
the system, and the major information flows
between the entities and the system
19Level-0 diagram
- DFD could have many levels diagrams level-0,
level-1, etc. - Level-0 diagram is a data flow diagram that
represents a systems major processes, data
flows, and data stores at a high level of detail. - Level-n A DFD that is the result of n nested
decomposition of a series of sub processes from a
process on a level 0 diagram - Example of level-0 diagram
20Context diagram of MacDonald food ordering system
Customer
Kitchen
Restaurant manager
21Level-0 diagram
- Exercise in the classroom
- Generate the level-0 diagram by detailing the
main process - Food ordering system (process 0) could be split
into three sub processes - Receive and transform customer food order
- Update good sold file
- Update inventory file
- Produce management report
22Rules of DFD / decomposition of process 4.0
- Functional decomposition is an iterative
processes of breaking the description of a system
down into finer and finer details which creates a
set of charts in which one process in a given
chart is explained in greater details on another
chart
23Rules of DFD / balancing
- Balancing is the conservation of inputs and
outputs to a DFD process when that process is
decomposed to lower levels
24Which of the two diagrams is balanced or
unbalanced?
A
B
25A DFD Fragment Example
26A Second DFD Fragment Example
27Four types of DFD used in system development
- Current physical
- Processes label include the name of people and
technology used to process data - Data flow and data store include the name of
actual physical media in which data flow or in
which data are stored (file location, PCs, etc.) - Current logical
- Physical model is reduced to only essential part,
i.e. reduced to data processes that transform
them (what and how) - New logical
- Models is the same as current logical model if
users were happy about current functionality of
the system (there were errors during
implementation) - Others, new logical models include new functions
according to users wishes - New physical
- Reflect decisions about which functions to
automate or to leave manually
28Output/deliverable of process modeling
29 Using DFD in the analysis process guideline
- Correctness
- Completeness
- Inconsistency
- Timing
- Primitive DFD
30Correctness and Completeness
- Correctness it refers to drawing a correct DFD
(see rules e.g. balancing, functional
decomposition) - Completeness it refers to whether you have
included in your DFDs all the components
necessary for the system you are modeling. - Examples of completeness
- There are entities that are not connected to any
thing else - There is a process with only input and without
output
31Example of completeness where is the error?
32Consistency
- Consistency it refers to whether or not the
depiction of the system shown in at one level of
a nested set of DFD is compatible with the
depiction of the system shown in at other level - Example of inconsistencies
- Existing of a level-1 diagram with no high level
-0 diagram - Existing of a data flow at level-0 diagram but
not at level-1 diagram
33Example of inconsistencies where is the error?
(already seen)
34Other guidelines
- DFD does not show timing, draw diagrams as if the
system has never started and will never stop - Iterative development DFD recognize that system
requirement determination structuring are
interacting - Primitive DFD it refers to the lowest level of
DFD decomposition. When does a DFD decomposing
stop? - Very important idea there is no good or bad
modelling!!! - Drawing DFD is facilitated by CASE upper tools
(generating processes and diagrams) - DFD can be used as an analysing tool to check
correctness, inconsistencies and completeness - DFD can be used as a tool to support Business
Process Re-engineering (BPR) - Example of CASE tool, developed in SIMNET, used
to generate processes (different from DFD) - It consists to generate processes manually and
the system converts the process into a coding
system
35Context Diagram
- Shows the context into which the business process
fits - Shows the overall business process as just one
process - Shows all the outside entities that receive
information from or contribute information to the
system
36Relationship Among DFD levels
37Decomposition Diagram
38Level 0 Diagram
- Shows all the processes that comprise the overall
system - Shows how information moves from and to each
process - Adds data stores
39Level 1 Diagrams
- Shows all the processes that comprise a single
process on the level 0 diagram - Shows how information moves from and to each of
these processes - Shows in more detail the content of higher level
process - Level 1 diagrams may not be needed for all level
0 processes
40Level 2 Diagrams
- Shows all processes that comprise a single
process on the level 1 diagram - Shows how information moves from and to each of
these processes - Level 2 diagrams may not be needed for all level
1 processes - Correctly numbering each process helps the user
understand where the process fits into the
overall system
41Data Flow Splits and Joins
- A data flow split shows where a flow is broken
into its component parts for use in separate
processes - Data flow splits need not be mutually exclusive
nor use all the data from the parent flow - As we move to lower levels we become more precise
about the data flows - A data flow join shows where components are
merged to describe a more comprehensive flow
42Alternative Data Flows
- Where a process can produce different data given
different conditions - We show both data flows and use the process
description to explain why they are alternatives - Tip -- alternative data flows often accompany
processes with IF statements
43Your Turn
- At this point in the process it is easy to lose
track of the big picture. - Describe the difference between data flows, data
stores, and processes. - Describe in your own words the relationship
between the DFD and the ultimate new application
being developed.