![]() |
VOOZH | about |
Before we start working on any project, it is very important that we are very clear on what we want to do and how do we want to do. In my last Blog, I discussed on how to write a good SRS for your project and what is the advantage we get out of that. In this Blog, I’ll discuss Use Cases and their advantage in our projects.
What are Use Cases?
In software and systems engineering, a use case is a list of actions or event steps, typically defining the interactions between a role (known in the Unified Modeling Language as an actor) and a system, to achieve a goal. The actor can be a human, an external system, or time. In systems engineering, use cases are used at a higher level than within software engineering, often representing missions or stakeholder goals. Another way to look at it is a use case describes a way in which a real-world actor interacts with the system. In a system use case you include high-level implementation decisions. System use cases can be written in both an informal manner and a formal manner. (Wiki)
What is the importance of Use Cases?
Use cases have been used extensively over the past few decades. The advantages of Use cases includes:
How to plan use case?
Following example will illustrate on how to plan use cases:
Use Case: What is the main objective of this use case. For eg. Adding a software component, adding certain functionality etc.
Primary Actor: Who will have the access to this use case. In the above examples, administrators will have the access.
Scope: Scope of the use case
Level: At what level the implementation of the use case be.
Flow: What will be the flow of the functionality that needs to be there. More precisely, the work flow of the use case.
Some other things that can be included in the use cases are:
Use Case Diagram
Below is a sample use case diagram which I have prepared for reference purpose for a sample project (much like Facebook). It would help us to understand the role of various actors in our project. Various actors in the below use case diagram are: User and System.
The main use cases are in the system and the diagram illustrates on how the actors interact with the use cases.For eg. During Sign Up, only users need to interact with the use case and not the system whereas when it comes to categorizing posts, only system would be required.
👁 ucCreately is a wonderful tool that helps us to easily create Use case diagrams. I again emphasize the importance of SRS and use cases for your project as it helps us to organize and plan out things. It also helps us to mitigate the risks that are there and early risk identification.
About the Author:
Anurag Mishra, currently in 3rd year is an avid software follower and a full stack web developer. His keen interest lies in web development, NLP and networking.
If you also wish to showcase your blog here, please see GBlog for guest blog writing on GeeksforGeeks.