Process Modeling zGraphically represent the processes that capture, manipulate, store, and distribute data between a system and its environment zModels yDFDs -- Process, Data & Externals yERDs -- Data Structure -- no Process yProcess Logic and Timing
Process Modeling Deliverables zContext DFD (Not in D/2000) zDFD of current physical system zDFD of current logical system zDFD of new logical system zAdequate descriptions of each DFD component (Oracle Repository)
DFD Mechanics
Context Level DFD Figure 8.4, p284
Level Zero (First Level) Diagram Figure 8.5, p285
DFD Rules -- Process A. No process can have only outputs B. No process can have only inputs Every Process has Input & Output C. (1) Use Verb phrase labels for the lowest level (Basic Function Module - a BFM has no explosion) (2) Use xxx Process for the others
DFD Rules -- Process A. B. IncorrectCorrect
DFD Rules -- Data Store D.Data cannot move directly from one data store to another data store E.Data cannot move directly from an outside source to a data store F.Data cannot move directly to an outside sink from a data store One end of a Data Flow must be a Process G.Use a Noun phrase label (Entity Name)
DFD Rules -- Source / Sink H.Data cannot move directly from a source to a sink. It must be moved by a process. I.Noun phrase label. (External) Contents are Entities - one Primary
DFD Rules -- Data Flow J.A data flow has only one direction of flow between symbols; a data flow may flow in both directions to and from a data store (usually two symbols) K.A fork in a data flow means that exactly the same data goes to two different processes or data stores. L.A join in a data flow means that exactly the same data comes from two different processes and data stores.
DFD Rules -- Data Flow IncorrectCorrect J. K. L.
DFD Rules -- Data Flow M.A data flow cannot go directly back to the same process it leaves N.A data flow to a data store means create, update or delete O.A data flow from a data store means retrieve or use P.Use a Noun phrase label. Contents are attributes of entities and data items
Other DFD Issues zDecomposition (Explosion) yExplode a single process into subprocesses zBalancing (the Great Circle Rule) yConserve all process inputs and outputs when decomposing a process
Decomposition of 4.0 Figure 8.8 and 8.7, p289
Decomposition of 4.3 Figure 8.9, p290
System Source 1 Sink 1 0 A B Balance - Context Level
Source 1 Sink 1 1 A B Source 2 C 2 Formatted A Formatted C Unbalanced DFD
DFD Rules -- Advanced Rules R. The inputs to a process must be sufficient to produce the outputs S. At the lowest level of DFDs, new data flows may be added to represent data that are transmitted under exceptional conditions (e.g., error messages). T. To avoid having data flow lines cross each other, you may repeat data stores or sources / sinks on a DFD.
DFD Guidelines zCompleteness zConsistency zTiming zIterative Development
Primitive DFDs -- BFM Level zSingle database operation - update, retrieve, create, delete zSingle other process function -- input or output data; calculate; decision zProcess for each option or choice zData flow split to each use set zUser and Analyst are satisfied zElement of Personal Choice