0% found this document useful (0 votes)
19 views17 pages

SUT 9.3 - High Level DFD

on jod skibidi

Uploaded by

roaringxd
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views17 pages

SUT 9.3 - High Level DFD

on jod skibidi

Uploaded by

roaringxd
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

SUT 9.

3:
Process Modelling
(High-Level DFD)
Reference: Chapter 9 - Whitten and
Bentley (7th Edition)

Sept 2024
Upcoming Assessment (Group assignment 2)

• Due date: Friday 06/09/2024 before 23:59

• Only one group member submits on behalf of the group

• Submit a PDF (If we can’t open your submission, the entire group gets zero)

• Hard deadline. No extension

• Emailed assignment will NOT be marked

• Use of AI tools is not permitted

• If any group member uses AI tool(s), the entire group gets zero
Linking Functional Decomposition Diagram to Use Cases (Recap)

0: System Name
1: Sub-System Name
1.1 Place Order
0
<<ERA>> System Name
<<PBA>> 1.2 Actor
……………………
Actor <<PSA>>
Actor 1.3
……………………

<<ESA>>
1 2
Actor Function
2: Sub-System Name Function

2.1 Create Customer

2.2 1.1 1.2 1.3


…………………… Activity Activity Activity

2.3
……………………

1.1.1 1.1.2 1.1.3


Task Task Task
Narrative
Typical course of events
Actor actions and system response
STEPs…….
Linking Decomposition Diagram to DFDs (Recap)
0
Context Diagram Level
System Name

1 2
Function
High Level DFD Level
Function

1.1 1.2 1.3


Activity Activity Activity Middle Level DFD

1.1.1 1.1.2 1.1.3


Task Task Task Primitive Level DFD
Process modeling approach
1. Draw a Functional Decomposition Diagram to partition
the system into logical subsystems
2. Draw a Context Diagram to establish initial project scope
3. Explode the processes on the Context Diagram to give a
more detailed picture of the system (High level DFD)
4. Draw the middle level DFDs
5. Draw detailed or primitive DFDs (lowest level of DFD’s)

5
Step 2: Draw the Context DFDs (Contd.)

▪ The system is ONE big process in the


middle (e.g., ‘Ordering System’)
▪ Show all external agents to the system
(Client, Financial Dept, and Manager)
▪ We may duplicate external agents to
have inflows left end outflows right (e.g.
the Client agent)
▪ Show all data flows into and out of the
system (order, order confirmation,
account status, and order report)

6
Step 2: Draw the Context DFDs (Contd.)

Tips to derive the data inflows and outflows


▪ Use your UC narrative…constructed for every use case diagram
▪ Every data inflow will match the steps on the “actor action” side of
the UC narrative
▪ Every outflow will be derived from the steps on the “system
response” side of the UC narrative
▪ Note: Not every step on the “system response” side of the narrative will
become a data outflow on your context diagram!

7
1.1 Withdraw
Money

Class Example
ATM
ATM Use Case
Use Case
Diagram
Example
ATM Functional Decomposition Diagram
0. ATM System

1. Account 2. Payment
Function Function

1.1 Withdraw 2.1 Buy Airtime


Money Activity Activity

1.2 Deposit 2.2 Pay


Money Activity Beneficiary
Activity

1.3 Verify Balance 2.3 Pay Fine


Activity Activity
9
Extract from Withdraw Money UC Narrative
TYPICAL Actor Action (PBA; ESA, if any) System Response
COURSE OF
Step 1: A customer enters bank card into Step 2: The system will read the bank card details from the Accounts Table
EVENTS:
the ATM card slot
Step 3: The system prompts the customer to enter his/her PIN

Step 4: The customer enters their PIN Step 5: The system will read the PIN from the Encrypted PINS Table to verify that it is
correct [ALT]
Step 6: The system prompts the customer to select the transaction type

Step 7: The customer selects Step 8: System will request the customer to enter the amount they want to withdraw
“Withdraw money” transaction option
Step 9: The customer enters the amount Step 10: The system will invoke UC 1.3 (Verify Balance) to check that after the withdrawal, at
they want to withdraw least R100 remains in the customer’s account [ALT]
Step 11: The system will dispense the withdrawal amount to the customer

Step 12: The system will prompt the customer to remove the cash and their bank card

Step 13: The system will update the Accounts Table with the customer’s account balance

Step 14: The system will notify the customer of successful completion of transaction

Step 15: The system will update the ATM Table with balance of money in the ATM
machine
ALTERNATE ALT-Step 5: The customer is informed that the PIN is incorrect. Go back to Step 3.
COURSES:
ALT-Step 10: The customer is informed that their account has insufficient amount to effect the withdrawal amount. Go back to
Step 8
10
Sample Context Diagram: “Withdraw Money” UC
1.1 Enter PIN request

1.1 Transaction type request


1.1 Insert bank card

Customer
1.1 Withdrawal amount request
1.1 PIN details
Customer

1.1 Prompt to remove cash

1.1 Withdrawal transaction option details


0. ATM System 1.1 Prompt to remove bank card

1.1 Success Transaction notification


1.1 Withdrawal amount details
1.1 [ALT] Incorrect PIN notification

1.1 [ALT] Insufficient Fund notification

11
Complete Context
Diagram Example

12
Drawing a High-Level DFD
▪ A High-Level DFD is an explosion of the Context Diagram
▪ Depicts the processes identified on the Functional Decomposition Diagram
into a more detailed picture, showing the interactions between the different
processes
▪ It shows how the system works from the inside (“white box” thinking)
▪ The data flows to and from data stores (i.e., the entities on ERD) are included
▪ Include data store(s) from which records must be “read”
▪ Data flow names from data stores should reflect the nature of the data that is “read” by
the process
▪ Include data store(s) in which records must be “created”, “updated” or “deleted”
▪ Data flow name to data stores should reflect the nature of the data that is “created”,
“updated” or “deleted” by the process

13
Balancing Data Flows
▪ All data flows must be balanced
▪ Balancing is matching of data flow diagrams at different levels of
detail to preserve consistency and completeness of the models
▪ Balancing means data flows into/out of the system on lower level
(e.g. Primitive level DFD) should match data flows into/out of the
system on a higher level (e.g. Middle-level DFD)
▪ The same data flows and data stores from a higher level DFD must
be reflected on the corresponding lower level DFD
▪ Balancing is a quality assurance technique

14
Drawing a High Level-DFD
High-Level DFD: “Withdraw Money” UC
Encrypted Pins 1.1 Verified PIN details 1.1 Enter PIN request

1.1 Transaction type request


1.1 Insert bank card

1.1 Withdrawal amount request

Customer
1.1 PIN details
Customer

1.1 Prompt to remove cash

1.1 Prompt to remove bank card


1.1 Withdrawal transaction option details 1. Account Function
1.1 Success Transaction notification

1.1 [ALT] Incorrect PIN notification


1.1 Withdrawal amount details
1.1 [ALT] Insufficient Fund notification

1.1 Update ATM. Bal


1.1 Update Acc. Bal Details
1.1 Read Bank Card ATM
Details

16 Accounts

You might also like