A use case diagram is a diagrammatic representation of user’s interaction with the system and simplistic in nature which can be used for communicating the same with the stakeholders.
The interactions we represent in the use case diagram depends on the relationships within and if the relations are represented incorrectly, the output may deviate from the actual requirements.The types of relationships we use in use case diagram are stated below
- Association between actor and use case.
- Generalization of an actor.
- Extend between two use cases.
- Include between two use cases.
- Generalization of a use case.
Association between Actor and Use Case
The relationship between an Actor and a Use Case represents the interactions between specific Actor and Use Case.
Generalization of an Actor
Generalization of an Actor is inculcating the inheritance property among the Actors, In which the child actor indirectly holds the interactions the parent Actor does..
For example, consider an actor called a bank customer . A bank customer can be of VIP customer and a NON-VIP customer. So here, these two actors are generalized to the parent actor called Customer because these two VIP & Non VIP actors inherits the properties of bank Customer Actor.
Extend between two use cases
Extend is a direct relationship between Use Cases.
The concept of Extend arises when there exists an relation between Use Cases such that the function of an specific child class is optional. We can use the extend relationship when Parent class exists even without Child class.
Include between two use cases
Include is a direct relationship between Use Cases.
The concept of Include arises when there exists an relation between Use Cases such that the function of an specific child class is included.. We can use the include relationship when Parent class exist with Child class.
Generalization of a use case
Use Case generalization is a relationship which is basically represented between two generic behavioral Use Cases and the child class is a Kind Off Parent class. Generalization of use case can be used when Parent class doesn’t exist without child class.
For Example : When a customer is making a payment then he/she has options like cash or card or online. Here , the payment is parent class and cash or card is child class ,which inherits the behavior of parent class.So, Use case generalization came in to picture.