Use Case Diagram for LinkedIn
Learn how to define use cases and create the corresponding use case diagram for the LinkedIn problem.
Let’s build LinkedIn’s use case diagram and understand the relationship between its different components. First, we’ll define the different elements of our LinkedIn system, followed by the complete use case diagram.
System
Our system is LinkedIn.
Actors
Now, we’ll define the main actors of LinkedIn.
Primary actors
User: This actor can create a profile including their professional information. They can create posts, apply for jobs, follow pages, and join groups. They can also interact with other users by sending them connection invitations and messages, commenting on their posts, etc.
Secondary actors
System: This sends notifications for new connection requests, messages, comments, posts, recommendations, etc.
Use cases
In this section, we’ll define LinkedIn’s use cases. We have listed them according to their respective interactions with a particular actor.
Note: Some use cases will occur multiple times because they are shared among different actors in the system.
User
Add/update profile: To add information like education, experience, skills, and achievements to update an existing profile
Search: To find and view other users, company pages, or groups
Send connection request: To send a connection request to another user
Cancel connection request: To withdraw a previously sent connection request
Accept/ignore connection request: To accept or ignore a received connection request
Follow/unfollow users: To follow or unfollow other users without connecting
View analytics: To see the number of connections, profile views, post impressions, and search appearances
Request recommendation: To send a recommendation request to another user
Give recommendation: To write and give a recommendation to another user
Create post: To publish a new post on their profile or feed
React/share/comment on the post: To engage with a post by reacting, sharing, or commenting
React/comment on comment: To react to or comment on an existing comment
Send/receive messages: To exchange private messages with other users
Receive notifications: To be notified about messages, connection requests, or comments on posts
Create company page: To create a company page on behalf of an organization
Follow the company page: To follow a company page to receive updates
Create group: To start a new group for a community or professional interest
Join a group: To become a member of an existing group
Apply to the job: To apply for a job listed on a company page
List job openings in the company page: To list the new jobs on a company page
System
Send notifications: To inform users about new messages, connection requests, or comments on their posts
Add recommendation: To add a recommendation to the user’s profile
Relationships
This section describes the relationships between and among actors and their use cases.
Generalization
The user can add or update their profile by adding or updating their education, experience, skill, or achievement. This shows that the Add/update profile use case has a generalization relationship with Add/update education, Add/update experience, Add/update skill, and Add/update achievement use cases.
The user can view their analytics by viewing their profile views, post impressions, search appearances, or connection count. This shows that the View analytics use case has a generalization relationship with View profile views, View post impressions, View search appearances, and View connections count use cases.
Associations
The table below shows the association relationship between actors and their use cases.