Use Case models in Software Development
This is most important in software development where a detailed documentation of a users’ activities within a systems is central towards understanding the system’s needs as well as ensuring that the end product serves the Users’ needs best. This can be done with help of a use case model which displays how a user will use the system. This blog post will be focusing on what use case models are, their constituents and why they are important in the SDLC.
What Is a Use Case Model?
A use case model is a high-level graphical view of how the actors and the system perform their activities. It specifies the functional requirement of the system by extending various scenarios, explaining how the actors realize their objective. In use case models, the understanding of the requirements arrived at from the users are used in ensuring the effectiveness of the software.Components of a Use Case Model
Actors:
Actors portray the roles of users and other systems which can interface with the system. They are active actors for a given interaction, primary actors, or passive actors who support the primary actor, or the secondary actor. Users and actors are mainly depicted in use case diagrams as stick figures.
Use Cases:
Use cases detail specific scenarios, or the roles of an actor that occur within the system to accomplish an objective. Use cases must have a meaningful name and a short description for each use case. Requirements for use cases are illustrated by ovals in the picture.
Relationships:
Found contain the detail of how an actor and use case relates with one another. Common types of relationships include:
- Association: Some representations are just a line drawn from an actor to a use case to show an interaction.
- Include: A dotted arrow that signifies that the use case in which it is connected contains the features of the other use case to which it is connected.
- Extend: A dashed arrow signifying that a use case can be sterile to additional functionality when under some condition.
System Boundary:
The boundary delineates the extent of a system and is depicted by a rectangle that enshrouds all use-case diagrams. It enables one to categorize what is system related and what is not.
User-Centric Focus: Using actors and goals, use case models achieve the focus on the user’s side and engage the software development process primarily for the user’s benefit.
Clear Requirements Definition: The use case models assist in identifying and defining the functional requirements used for discussions with the stakeholders and developers.
Facilitates Communication: For communication purpose with developer, clients and new users, the use case models endeavor to act as a key point facility for discussion when in practice.
Foundation for Testing: It is possible to derive test cases from use cases so that the system properly implements a specific use case and operates as required in a give environment.
Example of a Use Case Model
Let’s consider an example of a use case model for a library management system:
Actors:
- Librarian
- Member
- Guest
Use Cases:
- Search Catalog
- Borrow Book
- Return Book
- Register Member
The use case model would then show how these actors and use cases are related to each other. For example:
- A Member action can include Search Catalog, Borrow Book and Return Book.
- A Librarian can do the members ASP plus Register Member.
- A guest may only use the search catalog use case only.
Comments
Post a Comment