Use Case Diagram
What is use case Diagram ?
- Use Case Diagrams (UCD) is a high level diagram.
- It can be used to describe the functionality of the System and represents only the positive flow.
- It describes how the external interfaces will interact with the proposed IT system.
- Use case diagrams are drawn from the end user perspective.
- Use case is shown with an ellipse symbol.
UCD’s have four major component:
The Actors, The System , The Use Cases and The relationships
Actors: They interact with the System to perform the task. Actors should be placed on outside the system boundary. Actors are living or non living thing.
Actors are of two types:
Primary Actors:
Initiates the system to work and System depends on the Secondary Actors for information. They are placed on the left side of the system boundary.
Secondary Actors:
They provide the information required to the system for the completion of task. They should be placed on the right side of the System boundary .Parent Database cannot be modeled as a secondary actor.
Use Cases :
This is used for the different business functions. It comes inside the System Boundary and is represented by eclipse.
System :
It represents the system as a whole and all the use cases drawn inside the System. It is shown by Rectangular Box.
Relationships :
This is used to represent various relationships that exist between the actors and use cases.
There are three types of relationships in a use case diagram:
- Generalization
- Include
- Extend
Generalization:
- It is a ‘has a’ relationship.
- Direction of arrow is towards the parent class
Generalization is of two types:
1.Actor Generalization:
It is a relationship between the actors.
Example: If we generalized Customer into Customer and VIP Customer then it is the example of Actor Generalization.
2.Use Case Generalization:
It is relationship between the use cases.
Example: We can do the Payment either by Cash or by Card or by Coupons . Here Parent class doesn’t exist without its Child class means we have to opt one mode to do the payment. .
Include:
- It is a compulsory relationship between the elements.
- Parent class is not complete without its child class.
- The arrow is always towards the dependant class.
Example: To Login a portal , it is compulsory to enter the user name and password.
Extend:
- It is an optional relationship between the elements.
- Parent class exist without child class.
- The arrow is always towards the dependant class.
Example: To Withdraw cash from ATM it depends upon the customer to take print out of receipt or not. So we can say that it is optional relationship between Withdraw Cash from ATM and Print Receipt.
Steps to draw a use case diagram:
- Identify actions against information.
- Identify actors.
- Identify which actor is doing what actions.