Process Modeling DFD 2
-
Upload
yasir-zahoor -
Category
Documents
-
view
130 -
download
1
Transcript of Process Modeling DFD 2
![Page 1: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/1.jpg)
1
Process Modeling
N. L. SardaI.I.T. Bombay
![Page 2: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/2.jpg)
2
Outline
•Process decomposition diagrams•Data flow diagram (DFD)
![Page 3: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/3.jpg)
3
Process Model•A process is a business activity which when executed produces certain outputs from given inputs
•The function(s) performed by a process may be complex, with multiple inputs, outputs and users
•The entire application itself is a process
•We use successive decomposition into sub processes to reveal greater details of the processing
![Page 4: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/4.jpg)
4
Function Decomposition•Decomposition splits wok of a task into subtasks; subtasks together make-up the parent task; not like ‘calling’ a module
•Balanced decomposition: sub-tasks are roughly equal in complexity
![Page 5: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/5.jpg)
5
Function Decomposition …•Top-down decomposition gives hierarchical structure
•Decompose into 2 or more; not more than 5
•A high cohesion (high independence) and minimum coupling (minimum interdependence) are fundamental criteria
•Continue decomposition until elementary processes are identified
![Page 6: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/6.jpg)
6
Function Decomposition•Elementary process is a smallest unit of activity meaningful to end user (it sees and leaves data in consistent state)
•Process decomposition diagram– A tree structure– Elementary processes are leaf nodes– Data are not shown
![Page 7: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/7.jpg)
7
FD Diagrams: Examples
![Page 8: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/8.jpg)
8
FD Diagrams: Examples
![Page 9: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/9.jpg)
9
•Exercise: prepare FDDs for– Railway reservation system– Hospital patient management– Employee payroll
![Page 10: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/10.jpg)
10
Function Decomposition …•Use proper naming of processes•Business functions named as nouns (marketing, Inventory control, …)
•Process name consists of an active verb and an object (accept order, calculate interest, …)
![Page 11: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/11.jpg)
11
Naming …•Avoid long names (sentences containing and, if, then, etc. indicate non-cohesive complex tasks)
•Real world is a good reference for selecting proper names; organizational units are organized functionally and each unit has a well-defined task
![Page 12: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/12.jpg)
12
Data Flow Diagram (DFD)•Very popular tool for describing functions of a system in terms of processes and data used by them– FDD may be done before DFD or we may
prepare DFDs directly– Have more contents than FDDs– Flow of data is shown, not flow of control
•DFDs are simple pictorial representations; easily understood by users and management.
![Page 13: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/13.jpg)
13
Data Flow Diagrams (DFD) …•DFDs are unambiguous and concise•They can describe processing at physical as well as logical levels
•DFDs facilitate top-down development
•They permit outlining of preferences and scope
![Page 14: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/14.jpg)
14
DFD Notation•Data Flow : labeled arrow
•Sources and sinks of information/data (also called external entity)
•Processn
or
(n : number for referencing•Available data (data store)
nor
or
n
![Page 15: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/15.jpg)
15
Example: Air line reservation
![Page 16: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/16.jpg)
16
Context Diagram•Shows the entire application as a single process
•Identifies its external interfaces•This is the starting point; also called Fundamental System Model, Level 0 DFD
![Page 17: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/17.jpg)
17
Context Diagram …
![Page 18: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/18.jpg)
18
Process Refinement•Decompose a process into sub processes
– May reveal more data stores, external interfaces
– Use decimal numbering system: process 1 is decomposed into 1.1, 1.2, etc.
•At each level, understand all data flows and processing; label processes, data stores and data flows (arrows) meaningfully.
•Continue decomposition and stop when control flow (conditional branches, loops) surfaces. Refine until processes are well understood.
![Page 19: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/19.jpg)
19
Refinement …
•DFDs do not show control flow•DFDs do not show initializations (such as initial file creation), but show processes running in a steady state
•DFDs only show exceptions/errors having specific business rules to deal with them; handling of routine errors generally not shown
![Page 20: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/20.jpg)
20
Refinement …•Processes must be independent of each other (cohesion, coupling principles apply); work of a process depends only on its inputs and not on state of another process
•Only needed data should be input, and outputs should be based on data entering the process
![Page 21: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/21.jpg)
21
Refinement …•Ensure consistency among levels: inputs
and outputs at previous level should be present at next level
![Page 22: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/22.jpg)
22
Physical DFD•Shows implementation details
– Names and locations of places/people– Ways of storing data (like card indexes)– Tasks as performed today: e.g., 2
persons handling UG, PG students separately.
•Useful for describing existing system to validate it with users
•Needs to be converted into logical DFD after validation from users
![Page 23: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/23.jpg)
23
Showing Boundaries
![Page 24: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/24.jpg)
24
DFD Example 1: Payroll
![Page 25: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/25.jpg)
25
DFD Example 2: Old Car Mart•Buys and sells old cars; has large number in stock: different models, make, year,colors,…
•Does some repairs for adding value; records kept; has own garage
•Advertise in news papers•Salesmen hired on commission basis to handle customers, negotiate, etc.
•Needs to take stocks; prepare summary of sales, profits, etc; pay salesmen
Prepare DFD and ER diagrams
![Page 26: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/26.jpg)
26
Car Mart …
![Page 27: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/27.jpg)
27
Car Mart …•Define data stores and flow clearly to understand the DFD
•We can further refine some of the processes
•For process 5: Making a sale– Take buyer requirements and his/her
other details– List cars that match requirements– Show repair history, car history– Register sale and negotiated price– Compute commission
![Page 28: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/28.jpg)
28
E-R Diagram
Add importantattributes, givecardinalities
![Page 29: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/29.jpg)
29
Example 3: Book Supplier•Supplies books to customers; no stocks maintained; books sourced directly from publishers
•Prepare context diagrams
(all inputs/output not shown, such as invoices,…..
![Page 30: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/30.jpg)
30
Book-Supplier : Refinement 1
![Page 31: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/31.jpg)
31
Book Supplier: Exploding Process 2
![Page 32: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/32.jpg)
32
Book Supplier : homework•Refinement 1 needs to be extended for handling payments
•Extend for : Payments from customers– Create ‘a/c receivable’ for books sent– Update receivable when payments received– Credit rating will need to be adjusted
periodically
•Extend for : Payments to publishers– Create ‘a/c payable’ when invoices received– Check invoices with books actually received– Make payments periodically as per
payment terms (within fixed days; incentives for early payment, etc.)
![Page 33: Process Modeling DFD 2](https://reader036.fdocuments.in/reader036/viewer/2022081413/546e4473b4af9f39378b45d1/html5/thumbnails/33.jpg)
33
Summary•Process modeling by process decomposition
•DFD shows data flows, stores and processes, but not control flows
•Proper naming of stores, processes and indicating data flowing among them very important for DFDs to be independently readable