Constructing Data Flow Diagrams: ATM Machine To start an ATM Withdrawal: • A card is inserted in the slot by the user, and the PIN (personal identification number) is entered. • The ATM reads information from the card, in particular, the card number and the expiry date, and accepts the PIN from the keyboard input. • The card is verified for expiry date, and then if valid, the card number and the PIN are sent to the bank for card validation by communication circuit. • The bank either sends confirmation or refusal. If confirmation is received, the user is invited to enter a transaction type. • Assuming that the transaction is a withdrawal of cash, one more validation is performed by the bank to check that the amount nominated is below or equal to the daily limit for withdrawals of 1000 AED, that the user’s weekly withdrawals do not exceed the weekly limit of 5000 AED, and that the account balance is in credit to cover the withdrawal. • If all these are OK the card is returned, the money is dispensed, and the withdrawal receipt is printed, with the date, account number, withdrawal amount and account balance. • The bank’s account records are updated to reflect the transaction. Based on the previous scenario, create the following: a) Create a Context diagram b) Create level zero DFD diagram c) Select one process from level zero and develop it into level 1 diagram.
The correct answer and explanation is :
Constructing Data Flow Diagrams (DFDs) for an ATM cash withdrawal process involves creating visual representations that depict how data moves through the system. This process typically includes a Context Diagram, a Level 0 DFD, and a more detailed Level 1 DFD for specific processes.
a) Context Diagram
A Context Diagram offers a high-level overview of the ATM system, illustrating its interaction with external entities. In this scenario, the primary external entities are the User and the Bank. The ATM system serves as the central process, facilitating data exchanges between these entities. The User provides inputs such as the ATM card, Personal Identification Number (PIN), and withdrawal amount. The ATM communicates with the Bank to verify card details, PIN, and account balance. Upon successful verification, the ATM dispenses cash and provides a receipt to the User. This diagram encapsulates the system’s scope without delving into internal processes.
b) Level 0 DFD
The Level 0 DFD, also known as the top-level DFD, breaks down the ATM system’s major processes and data flows:
- Card and PIN Validation: The User inserts the ATM card and enters the PIN. The ATM reads the card information and verifies the PIN.
- Transaction Selection: Upon successful validation, the User selects the transaction type, in this case, a cash withdrawal.
- Withdrawal Processing: The User specifies the withdrawal amount. The ATM sends this request to the Bank for validation against daily and weekly limits and checks if the account balance is sufficient.
- Cash Dispensation and Receipt Printing: If the Bank approves the transaction, the ATM dispenses the requested cash amount, prints a receipt detailing the transaction, and updates the Bank’s account records accordingly.
c) Level 1 DFD for “Withdrawal Processing”
Focusing on the “Withdrawal Processing” component from the Level 0 DFD, the Level 1 DFD provides a more detailed view:
- Input Validation: The ATM receives the withdrawal amount entered by the User.
- Bank Communication: The ATM sends the withdrawal request, including the amount and user credentials, to the Bank’s system.
- Limit Verification: The Bank checks if the requested amount is within the User’s daily and weekly withdrawal limits.
- Balance Verification: The Bank verifies if the account balance is sufficient to cover the requested withdrawal amount.
- Approval or Denial: Based on the verifications, the Bank sends an approval or denial response to the ATM.
- Transaction Execution: If approved, the ATM dispenses the cash, prints the receipt, and the Bank updates the account balance to reflect the transaction.
These diagrams collectively provide a comprehensive understanding of the ATM cash withdrawal process, from user initiation to transaction completion, highlighting the flow and validation of data at each stage.
For a visual representation, you can refer to the following resources:
- Context Diagram: An example of an ATM (Cash Withdrawal) Context DFD can be found on Creately. citeturn0search1
- Level 0 DFD: A detailed Level 0 DFD for an ATM system is available on GeeksforGeeks. citeturn0search0
- Level 1 DFD for Withdrawal Processing: A specific Level 1 DFD illustrating the cash withdrawal process in an ATM system can be viewed on Creately. citeturn0search2
These resources provide visual aids that complement the textual explanation of the ATM withdrawal process through various levels of DFDs.