Use Case Diagram for Online Banking System
The Use Case Diagram is a UML Diagram where the each use-case specifies the behaviour expected from software from the perspective of end-user and relation as well as provides brief overview for different components concerning interaction between use-case, actors and systems . The Use-Case Diagram is used to prepare, present and understand functional requirements of the system. Use-Case Diagram specifies exact context of the software being developed. It does not specifies order in which actions must be performed. Each use-case represents function of system which is either process-automated or manual.
Difference between <<include>> and <<extend>> in Use Case Diagram :
- <<include>> extends Base Use Case and it specifies that an Included Use Case must run successfully to complete Base Use Case. The Base Use Case is incomplete in the absence of an Included Use Case. The Included Use Case can be Base Use Case itself or it might be shared by a number of distinct Base Use Cases.
- <<extend>> on the other end , is used to add an Extended Use Case which extends the Base Use Case. Base Use Case can run successfully even without invoking/calling extended use case called Optional Use Case. The Base Use Case is complete in itself but under certain conditions it would require to refer to extension condition.
The representation of <<include>> and <<extend>> is as below :-
A user must provide appropriate details to securely Login. Software must check and verify the details at every attempt to Login. Here LOGIN is the Base Use Case and AUTHENTICATE is the Included Use Case.
If a user enters appropriate details , user is allowed to Login. However if the details entered by the user are incorrect, software must be able to catch and display problem to the user and allow the user to re-enter details. LOGIN is hence a complete use case. However under certain situations it might use action corresponding to INVALID PASSWORD. Here LOGIN is the Base Use Case and INVALID PASSWORD is Extended Use Case.
The Use- Case Diagram for an Online Banking System is as follows :
Here, we will try to understand the design of a use case diagram for the Online Banking System. Some possible scenarios of the system are explained as follows :
- A Customer is required to create an account to avail services offered by Bank. Bank verifies detail and creates new account for each new customer. Each customer is an actor for the Use-Case Diagram and the functionality offered by Online Banking System to Add Account is Use-Case.
- Each customer can check the balance in bank account and initiate request to transfer an account across distinct branches of Bank. Cashier is an employee at bank who supports service to the customer.
- A customer can execute cash transactions where the customer must either add cash value to bank account or withdraw cash from account. Either of two or both that is credit as well as debit cash, might be executed to successfully execute one or multiple transactions.
- After each successful transaction customer might or might not want to get details for action. Manager can check interest value for each account corresponding to transaction to ensure and authenticate details.
- A customer can also request loan from bank where customer must add request for loan with the appropriate details.
- The type of loan in accordance with purpose or the need for loan and term or duration to pay back the loan must be provided by customer.
- The manager of each branch of bank has choice to either accept or approve loan to initiate process further or just reject request for loan based on terms and conditions.
- The record for each employee of bank is maintained by bank and bank manages all employees of each branch of bank. The manager of each branch has choice to offer bonus to employees. Note here that each employee is paid as part of management of staff but promotion or bonus might or might not be offered certainly to each employee.
This is the complete design and description for Use-Case of an Online Banking System specifying the use of <<include>> and <<extend>> for certain specific Use-Cases.