Structuring system requirements: process modeling Chapter 8.

43
Structuring system requirements: process modeling Chapter 8

Transcript of Structuring system requirements: process modeling Chapter 8.

Page 1: Structuring system requirements: process modeling Chapter 8.

Structuring system requirements:

process modeling

Chapter 8

Page 2: Structuring system requirements: process modeling Chapter 8.

Three 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

Page 3: Structuring system requirements: process modeling Chapter 8.

Key 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

Page 4: Structuring system requirements: process modeling Chapter 8.

Objectives

• 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

Page 5: Structuring system requirements: process modeling Chapter 8.

Modelling for three main reasons

1. Facilitate understanding a system

2. 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

3. It supports communication with a systems analysts, end-users, and other roles

Page 6: Structuring system requirements: process modeling Chapter 8.

Reading a DFD

Page 7: Structuring system requirements: process modeling Chapter 8.

DFD Elements

Page 8: Structuring system requirements: process modeling Chapter 8.

DFD Shapes from Visio

From Flow Chart /Data Flow Diagram

Process

Data Store

External Entity

From Softw are Diagram /Gane-Sarson DFD

Process

ID #

ID#

ExternalEntity

Data Store1

External Entity

Data Store

Process

From Flow Chart /Data Flow Diagram

Visio 5.x Visio 2000

Page 9: Structuring system requirements: process modeling Chapter 8.

DFD – 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.

Collect,analyze,

generate flightcontrol data

JPL-1

J1 JPL store

Convert datafrom Metric to

English

?

LM1 LM store

Controlspaceflight

LM-1

English data

Transfer of Flight Control DataThis processwas missing

Metric data

Transfer data

?

Who wasresponsible

for this task?

Page 10: Structuring system requirements: process modeling Chapter 8.

Data 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

Page 11: Structuring system requirements: process modeling Chapter 8.

Data 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

Page 12: Structuring system requirements: process modeling Chapter 8.

Data 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)

Class/ grad file

D1

Page 13: Structuring system requirements: process modeling Chapter 8.

Processes

– 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

CalculateClass Grad

1.0

Page 14: Structuring system requirements: process modeling Chapter 8.

Sources / 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

Page 15: Structuring system requirements: process modeling Chapter 8.

Example of Data Flow Diagram

Process

Source / sink

Data stores (files)

Data flow

Current grade

Final grades

Test scores

Current score

Final score Final grades

Student

CalculateClass Grad

CalculateUniversity Grad

Class/ grad file

Studentfiles

1.0 2.0

D1D2

Register’soffice

Teacher

Save Open Save Open

Page 16: Structuring system requirements: process modeling Chapter 8.

Items 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,

Page 17: Structuring system requirements: process modeling Chapter 8.

Clarification 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)

Page 18: Structuring system requirements: process modeling Chapter 8.

Context diagram of DFDFinal grades

Test scores

Current scoreFinal score

Final grades

Student

Grading system

Register’soffice

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

Page 19: Structuring system requirements: process modeling Chapter 8.

Level-0 diagram• DFD could have many levels diagrams: level-0, level-1, etc.

• Level-0 diagram is a data flow diagram that represents a system’s 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

Current grade

Final grades

Test scores

Current score

Final score Final grades

Student

CalculateClass Grad

CalculateUniversity Grad

Class/ grad file

Studentfiles

1.0 2.0

D1D2

Register’soffice

Teacher

Save Open Save Open

Page 20: Structuring system requirements: process modeling Chapter 8.

Context diagram of MacDonald food ordering system

Customer Kitchen

Restaurant manager

Customer order

Receipt Food order

Management report

Food ordering system

0

Page 21: Structuring system requirements: process modeling Chapter 8.

Level-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

Page 22: Structuring system requirements: process modeling Chapter 8.

Rules 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

Produce management

report

4.0

Daily inventory amount

Daily Good sold amounts

Management report

Access good sold & inventory

data

4.1Inventory

dataDaily

Goods Sold

amounts

Prepare management

report

4.3

Aggregate good sold &

inventory data

4.2

Good sold data

Aggregate data

Management report

Daily inventory amount

Page 23: Structuring system requirements: process modeling Chapter 8.

Rules of DFD / balancing

• Balancing is the conservation of inputs and outputs to a DFD process when that process is decomposed to lower levels

Page 24: Structuring system requirements: process modeling Chapter 8.

Which of the two diagrams is balanced or unbalanced?

Produce report

4.0

Daily inventory amount

Daily Good sold amounts

Management report

Access data

4.1Inventory

dataDaily

Goods Sold

amounts

Prepare report

4.3

Aggregate data

4.2

Good sold data

Aggregate data

Management report

Produce report

4.0

Daily inventory amount

Daily Good sold amounts

Management report

Access data

4.1Inventory

dataDailyGoods

Soldamounts

Prepare report4.3

Aggregate data

4.2

Good sold data

Aggregate data

Management report

Daily inventory amount

A

B

Page 25: Structuring system requirements: process modeling Chapter 8.

A DFD Fragment Example

Page 26: Structuring system requirements: process modeling Chapter 8.

A Second DFD Fragment Example

Page 27: Structuring system requirements: process modeling Chapter 8.

Four 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

Page 28: Structuring system requirements: process modeling Chapter 8.

Output/deliverable of process modeling

ProcessModeling

InputInformation gathered from: interview, questionnaire, JAD sessions, etc.

Output (DFDs)Context Data Flow Diagram

DFD of current physical system

DFD of current Logical system (technology impendent)

DFD of new logical system

Description of each DFD components

Page 29: Structuring system requirements: process modeling Chapter 8.

Using DFD in the analysis process & guideline

• Correctness

• Completeness

• Inconsistency

• Timing

• Primitive DFD

Page 30: Structuring system requirements: process modeling Chapter 8.

Correctness 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

Page 31: Structuring system requirements: process modeling Chapter 8.

Example of completeness: where is the error?

Update inventory file

Update good sold file

Produce management

report

Customer Kitchen

Good sold file Inventory file

Receive & transform customer food order

1.0

2.0 3.0

4.0

Good sold

Inventory sold

Format data

Format data

Daily good sold amount

Daily inventory amount

Page 32: Structuring system requirements: process modeling Chapter 8.

Consistency

• 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

Page 33: Structuring system requirements: process modeling Chapter 8.

Example of inconsistencies: where is the error? (already seen)

Produce report

4.0

Daily inventory amount

Daily Good sold amounts

Management report

Level-0 diagram

Aggregate data

Access data

4.1Inventory

dataDaily

Goods Sold

amounts

Prepare report

4.3

Aggregate data

4.2

Good sold data

Management report

Level-1 diagram

Daily inventory amount

Page 34: Structuring system requirements: process modeling Chapter 8.

Other 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

Page 35: Structuring system requirements: process modeling Chapter 8.

Context 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

Page 36: Structuring system requirements: process modeling Chapter 8.

Relationship Among DFD levels

Page 37: Structuring system requirements: process modeling Chapter 8.

Decomposition Diagram

Page 38: Structuring system requirements: process modeling Chapter 8.

Level 0 Diagram

• Shows all the processes that comprise the overall system

• Shows how information moves from and to each process

• Adds data stores

Page 39: Structuring system requirements: process modeling Chapter 8.

Level 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

Page 40: Structuring system requirements: process modeling Chapter 8.

Level 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

Page 41: Structuring system requirements: process modeling Chapter 8.

Data 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

Page 42: Structuring system requirements: process modeling Chapter 8.

Alternative 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

Page 43: Structuring system requirements: process modeling Chapter 8.

Your 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.