Day 4 – pre-class prep Process Modeling Data flow diagrams :
Have you ever modeled systems before
Modeling System Processes & Data DFD model: Graphically illustrates the movement of data between environmental entities, the processes, and data stores within a system. Scott Ambler, Agile Modeling web site
Data Flow Analysis & Design
Data Flow Symbols 1.Environmental entity or External entity - the originator of data or receiver of information outside automation boundary 2.Process bubble - a process step that transforms data 3.Data flow arrow - data and information passing between environmental entities, processes, and data stores 4.Data store - a place to keep data for later reference (can be a data file, file cabinet, note pad, etc.)
The 4 Symbols - illustrated Scott Ambler, Agile Modeling web site Data Store (D1) Data Stores (D2 & 3) Data Store (D4) Data flow arrows Process Bubbles Environmental Entity
Visio Software Design Shapes Exercise 4 & Group Project 1
DFD Stencil Sentence-by- sentence examples Resources page – Stencil package
Visio Window with Stencil & Help
Visio Software Sources 1.VISIO is on McCombs Lab PCs 2.You can download VISIO from Dreamspark– from Clint with logon info
Dreamspark– Visio and MS Project
Data Flow Diagramming Rules Basic rules that apply to all DFDs 1.Inputs to a process are always different than outputs. 2.Objects always have a unique name. To keep the diagram uncluttered, you may repeat EEs and data stores on a diagram “Forms” enter Process 1. “Validated Forms” flow to Process 2.0
Data Flow Process Rules Process No process can have only outputs A miracle No process can have only inputs A black hole Process label has verb-object name
Data Flow Data Storage Rules Data Storage 1.Data cannot be moved directly from one store to another 2.Data cannot move directly from an environmental entity to a data store 3.A data store has a noun phrase label x x
Data Flow Diagramming Rules 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
Example DFD 1.Employees provide the dept secretary with their time cards that contain the hours worked for the week. The secretary prepares a weekly time sheet that lists each employee, the total hours worked and the hourly rate. The cards are filed in the time card history file. 2.The departmental supervisor audits the time sheet. The approved time sheets for all the departments are sent in the mail to an accounting clerk. If the time sheets are incorrect, the time sheet is returned to the secretary to edit. 3.The clerk uses the acceptable time sheets to calculate payroll earnings, and puts this info on the sheet 4.Another clerk uses the time sheets to prepare the payroll checks and sends them to the employee. The sheets are filed in a time sheet history file.
EE1 Employee 1.0 Secretary Time card w/ hours worked Process weekly time sheet D1 Time card history file Processed time cards 2.0 Dept Spvr Audit time sheet Processed time cards 3.0 Acct Clerk Approved time sheets Update time sheets with earnings Incorrect time sheets 4.0 Acct Clerk Updated timesheets Prepare checks Updated timesheets D2 Time sheet history file EE1 Employee Paycheck
Context Diagram Special case of the dataflow diagram, in which a single circle represents the entire system The context diagram is composed of 3 elements: 1.Environmental entity … the originator of data or receiver of information outside automation boundary 2.System circle with label (single circle is entire system) 3.Data flow … data and information elements passing between environmental entities & system
Context Diagram Highest level DFD Has data flows, environmental entities, one process (system in focus) and no data stores. Shows the system boundary and interactions with environmental entities. Environmental entity - Student Process Name - Student Administration System Data Flows - Application Details, Confirmation/Rejection Details
Context Diagram Example Let’s create a context diagram for the payroll process portrayed in the DFD example.
Context Diagram Example
EE1 Employee Time card w/ hours worked Payroll System Paycheck
Orders Supplies Order Requisitions Order Confirmation Order Cancellations Shipment Date Changes Beer Thank You Letters Summary of Removals Critical Levels Report Order Log Report Inventory Log Report Inventory Discrepancy Report Celis Brewry ITS/IPS Suppliers Management Distributors Recipients Of Free Beer Celis Brewery: Context Diagram for the Proposed IPS & ITS Enhancements
Latinitas Context Diagram
Usually more complicated in a company
Next steps 1.Read the reading on DFD modeling 2.Complete Exercise 4 before class
Data Flow Diagramming Rules 1.Inputs to a process are always different than outputs 2.Processes must have both an input and an output 3.Objects always have a unique name In order to keep the diagram uncluttered, you can repeat external entities & data stores on a diagram 4.No more than seven processes on one diagram 5.A process has a verb phrase label 6.Data only flows in one direction at a time 7.Data flows are nouns 8.Data must be transformed by a process (cannot be moved directly from one store to another or from an external entity to a data store). 9.Data store has a noun phrase label
DFD Summary The first-level DFD (Figure 0) shows the major functional components of the system as processes, connected by data flows to external entities, data stores, and other processes As needed, successively more detailed levels are developed to promote complete understanding of the system As you drill down, figures are named by the Process, not the level.
Reality & DFD creation DFDs are usually created from messy notes. What you think initially might be the best organization of the process usually isn’t what will be the final version. So, assume you will start with a messy first draft and then clean up the process by leveling the DFDs: Figuring out what the major processes are for the Figure 0 DFD and then creating the lower level DFDs with the details TIP: DFD Summary and Rules on Resources pageDFD Summary and Rules