Learning Objectives Understand the logical modeling of processes through studying data flow diagrams How to draw data flow diagrams using rules and guidelines How to decompose data
Trang 1Information Systems System Analysis 421 Class Seven
Structuring System Requirements:
Process Modeling
Trang 2Learning Objectives
Understand the logical modeling of processes through studying data flow diagrams
How to draw data flow diagrams using rules and guidelines
How to decompose data flow diagrams into lower-level diagrams
Balancing of data flow diagrams
8.2
Trang 3Learning Objectives
Explain the differences among four types of DFDs:
current physical, current logical, new physical and new logical
Discuss the use of data flow diagrams as analysis tools
Compare and contrast data flow diagrams with Oracle’s process modeling tool and with functional hierarchy
diagrams
Discuss process modeling for Internet applications
8.3
Trang 4Data Modeling
Entity Relationship
Prototypes Data Flow
Diagram
Trang 5– Built to understand the existing system as a way to
document business requirements
– Data modeling is a technique for defining business
requirements
• Data is viewed as a resource to be shared by as many processes as possible, data must be organized in a way that is flexible and adaptable to unanticipated business requirements
Trang 6System Modeling
• Physical model shows not only what a system does but how the system is physically and technically implemented -
depicts technical design
• Logical models depict business requirements illustrates the essence of the system
– Move biases that are the results of the way the
current system is implemented
– Reduce the risk of missing requirements
– Allow us to communicate with end users
– Help analysts and users understand business
terminology and rules
Trang 7Process Modeling
• The simplest process model of a system is based
on inputs, outputs, and the system itself –
– Process is work performed on, or in response to,
incoming data flows or conditions
Trang 8Process Modeling
• Graphically represent the processes that capture,
manipulate, store and distribute data between a system and its environment and among system components
• Data flow diagrams (DFD)
– Graphically illustrate movement of data between
external entities and the processes and data stores within a system
• Modeling a system’s process
– Utilize information gathered during requirements
determination– Structure of the data is also modeled in addition to the processes
8.8
Trang 9Process Modeling
• Deliverables and Outcomes
– Set of coherent, interrelated data flow diagrams
– Context data flow diagram (DFD)
• Scope of system
– DFDs of current system
• Enables analysts to understand current system
– DFDs of new logical system
Trang 10Data Flow Diagrams
• Data modeling is done during the project definition stage and refined in physical design
• Similar to ERD Data model - DFD also helps the analyst
identify business vocabulary and uncover business
requirements
• Can be used on current system to understand requirements
• Can be fit on several sheets of paper
• The level of data flow diagram can be compared to a
highway and street maps that you might use - National => State => City
Trang 11Data Flow Diagrams
Tool that depicts the flow of data through a system and the work or processing performed by that system
Graphical tool used to describe and analyze the movement of data through a system manual or automated
Central tool in which other components are developed
A data flow diagram (DFD) is a tool that depicts the flow of data through a system and the work or processing performed by that system Synonyms include bubble chart, transformation
graph, and process model
Trang 12DFD Symbols
Trang 13• Named vector or arrow
– Called a data flow
– Portrays a data path
• Bubble
– Called a process
– Portrays transformation of data
• Narrow open rectangle
– Called a data store
– Portrays a file or data base
• Box
– Called a source or sink
– Portrays an internal or external agent
– Used to define a system’s boundaries
new order
3.2
Verify Credit
Verify Credit 3.2
Customer Master File
Customer
Trang 14DFD Symbols
• Data flow - data move in a specific direction
• Processes - people, procedures or device that transforms data - work to be done
• Source or destination - external source or destination of data which may be people, program, organization or other entities - The squares represent external agents – the
boundary of the system
• Data Store - where data is house
Sold 2.0
Trang 15Credit History
Accepted Orders
External
Entity
Data Store
Process Data Flow
Trang 16DFD Symbols
Trang 17Data Flow
• A data flow is data in motion
• The flow of data between a system and its environment, or between two processes inside a system an relationship
between a system and its environment, or between two
processes is communication
– A data flow represents an input of data to a process,
or the output of data (or information) from a process
A data flow is also used to represent the creation,
deletion, or update of data in a file or database (called
a data store on the DFD)
– A data flow is depicted as a solid-line with arrow
Trang 18Data Flow
3.1.2 Create a new member account
3.1.1 Generate an employee bank statement
3.1.3 Freeze member account number
Accounts Receivable Department
Frozen account notification
Employee address
Bank statement Membership
application
Trang 19Data Flow
• No data flow should ever go completely unnamed
• Data flow names should describe the data flow without describing how the flow is or could be implemented
• All data flows must begin or end at a process, because
data flows are the inputs and outputs of a process
• Naming Convention - Should be descriptive nouns and noun phrases that are singular, as opposed to plural
– Should be unique
• Use adjectives and adverbs to help to describe how processing has changed a data flow
Trang 20Data Flow
Orders
Process Order
Cencel Order
Change Order Address
Summarize Unfilled Orders
Order
Cancelled Order
Change of Address Summary of Orders
New Order Address
Unfilled Order l
New Order
Order
to be Deleted 2
1 2
2
Trang 21Data Flow Packet Concept
• Data is seen as a package of information
Telephone Service Provider
Pay phone bill
Itemized calls and invoice
Itemized calls Invoice
Correct use of the packet concept
Incorrect use of the packet concept
Trang 23Data Stores
• Most information systems capture data for later use
• The data is kept in a data store
– A data store is an ``inventory’’ of data Synonyms
include file and database (although those terms are too implementation-oriented for essential process
modeling)
– A data store is represented by the open-end box
• If data flows are data in motion, think of data stores as data at rest
• Data stores should describe ``things’’ about which the
business wants to store data
• It is permissible to duplicate data stores on a DFD to
avoid crossing data flow lines
Trang 24Data Stores
• Data cannot be moved from one data store to another data stored it must be moved by a process
• Data cannot be moved from an outside source to a data
store it must be moved by a process
• Data Stores should have noun phrase labels
• Data Stores can be labeled
• Data flow to a data store means new/update
• Data flow from a data store means retrieve
Good Sold File
A
Trang 25DFD Rules - Data Stores
Good Sold File
Inventory
Good Sold File
Manager
Produce Mgmt Reports
Trang 26DFD Rules - Data Stores
Good Sold File
Inventory
Good Sold File
Manager
Produce Mgmt Reports
Inventory Data Student Data
Sold data Sold data
Trang 27Process
• Process names should be descriptive
• Processes should have a single Action Verb and a Singular Object
• Process numbers strictly used for identification
• All Processes are connected to something
• All Processes have both Inputs and Outputs
• No Process has only outputs or only inputs
• Processes may connect to anything: other processes, data stores or entities
• Each Process has a unique name and number
• A Process number is used only once in a diagram set
Process Customer Food Order 1.0
Trang 281Process 1
Trang 29Process Example
Process Customer Food Order 1.0
Process Customer Food Order 1.0
Which ones are correct and incorrect?
Trang 30External Entities
Trang 31External Entities
• All information systems respond to events and conditions
in the environment
• The environment of an information system includes
external entities that form the boundary of the system, and define places where the system interfaces with its environment
• A external entity defines an a person, organization unit, other system, or other organization that lies outside of the scope of the project, but which interacts with the system being studied
• External agents provide the net inputs into a system, and receive net outputs from a system
• Common synonyms include external agents
Trang 32• External agents should be named with descriptive, singular nouns.
• As a general rule, external agents should be located on the perimeters of the page, consistent with their definition as
a system boundary
Trang 33Data Flow Diagramming Definitions
• Context Diagram
– A data flow diagram (DFD) of the scope of an organizational system that shows the system boundaries, external entities that interact with the system and the major information flows between the entities and the system
• Level-O Diagram
– A data flow diagram (DFD) that represents a system’s major processes, data flows and data stores at a high level of detail
8.33
Trang 34Fast Food Restaurant
• Context diagram an overview of an organization system that shows
– the system boundaries
– sources that interact with the system
– major information flow between the entities
Trang 35Fast Food Restaurant
• The Context Diagram
– The context diagram contains one and only one process.– External entities are drawn around the perimeter
– Data flows define the interactions of your system with the boundaries and with the external data stores
– Refer as Level Zero
• Let’s draw a context diagram
– What does a restaurant do - think McDonalds or
Hoosier
– What are the boundaries
– Who does it interact with
Trang 37Figure 8-4
Context diagram of Hoosier Burger’s food ordering system
8.37
Trang 38Figure 8-5
Level-0 DFD of Hoosier Burger’s food ordering system
8.38
Trang 39Data Flow Diagramming Rules
• Source/Sink
– Data cannot move directly from a source to
a sink – A source/sink has a noun phrase label
• Data Flow
– A data flow has only one direction of flow between symbols
– A fork means that exactly the same data goes from a common location to two or more processes, data stores
or sources/sinks
8.39
Trang 40Data Flow Diagramming Rules
• Data Flow (Continued)
– A join means that exactly the same data comes from any
two or more different processes, data stores or sources/sinks to a common location
– A data flow cannot go directly back to the same process it
leaves
– A data flow to a data store means update
– A data flow from a data store means retrieve or use
– A data flow has a noun phrase label
8.40
Trang 41Data Flow Example
Trang 42DFD Rules Data Flow
Trang 44What are the rules
violations?
Entity B
2
Process Green
2.1
Process BlueEntity A
Data Store 1 Dataflow 2
Trang 45• Level-N Diagrams
– A DFD that is the result of n nested decompositions of a series of subprocesses from a process on a level-0 diagram
8.46
Trang 46Relationship Among DFD levels
Trang 47Level 0 Diagram
• Shows all the processes that comprise the overall system
• Shows how information moves from and to each process
• Adds data stores
Trang 48Level 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
Trang 49Level 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
• The Data Flow Diagram (DFD) is an essential tool for creating formal descriptions of business processes and data flows.
• Use cases record the input, transformation, and output of business processes.
• Eliciting scenario descriptions and modeling business processes are critically important skills for the systems analyst to master.
Trang 50Balancing DFDs
• When decomposing a DFD, you must conserve inputs to and outputs from a process at the next level of decomposition
• This is called balancing
• Example: Hoosier Burgers
– In Figure 8-4, notice that there is one input to the system, the customer order
Trang 518.52
Trang 52Figure 8-4
Context diagram of Hoosier Burger’s food ordering system
8.53
Trang 53Figure 8-5
Level-0 DFD of Hoosier Burger’s food ordering system
8.54
Trang 54Balancing DFDs
• An unbalanced example
– Figure 8-10– In context diagram, we have one input to the system, A and one output, B
– Level-0 diagram has one additional data flow, C– These DFDs are not balanced
8.55
Trang 56DFD: Balancing and Leveling
• When Zooming In, Do Not forget the Parent!
– Parent Process
– Child Diagram
P1
P1.2 P1.1
Trang 57DFD: Exercise Problem Level 0
Trang 58DFD: Exercise Problem Level 1
Trang 59DFD: Exercise Problem Level 2
Trang 60Four Different Types of DFDS
• Current Physical
– Process label includes an identification of the technology (people or systems) used to process the data
– Data flows and data stores are labeled with the actual name of the physical media on which data flow or in which data are stored
8.61
Trang 61Four Different Types of DFDS
• New Physical
– Represents the physical implementation of the new system
8.62
Trang 62Guidelines for Drawing DFDs
• Completeness
– DFD must include all components necessary for system– Each component must be fully described in the project dictionary or CASE repository
• Consistency
– The extent to which information contained on one level
of a set of nested DFDs is also included on other levels
• Timing
– Time is not represented well on DFDs– Best to draw DFDs as if the system has never started and will never stop
8.63
Trang 63Guidelines for Drawing DFDs
• Rules for stopping decomposition
– When each process has been reduced to a single decision, calculation or database operation
– When each data store represents data about a single entity
– When the system user does not care to see any more detail
8.64
Trang 64Using DFDs as Analysis Tools
• Gap Analysis
– The process of discovering discrepancies between two
or more sets of data flow diagrams or discrepancies within a single DFD
• Inefficiencies in a system can often be
identified through DFDs
8.65
Trang 65Oracle’s Process Modeler and
Functional Hierarchy Diagrams
• Process Modeler
– Unique to Oracle – Similar to DFDS but outputs and methods differ in several ways.
– Table 8-4 illustrates differences
• Functional Hierarchy Diagrams
– Picture of various tasks performed in a business and how they are related
– Tasks are broken down into their various parts – Does not include data flows
8.66
Trang 66• Data flow diagrams (DFD)
– Symbols – Rules for creating – Decomposition – Balancing
• Four different kinds of DFDs
– Current Physical – Current Logical – New Logical – New Physical
8.67
Trang 67• DFDs for Analysis
• DFDs for Business Process Reengineering (BPR)
• Oracle’s Process Modeler
• Functional Hierarchy Diagrams
8.68