Using the Use Case diagram is an effective method for describing and analyzing the functional requirements of a system. Employing the Use Case diagram brings numerous benefits to stakeholders involved in the development process of sales management systems. Let's explore the role of the Use Case diagram in sales management together with UpBase Blog!
The reasons for using the Use Case diagram
Why Use a Use Case Diagram? This is a useful tool for describing and analyzing the functional requirements of the system. Using a Use Case diagram brings several benefits:
The Use Case diagram is a useful tool for describing and analyzing the functional requirements of the system. Using the Use Case diagram brings several benefits:
1. Understanding the system better:
- The Use Case diagram helps stakeholders easily visualize how the system operates from a user perspective.
- Describing use cases helps identify necessary functionalities and interactions between users and the system.
2. Improving communication:
- The Use Case diagram provides a common language for stakeholders to discuss and agree on system requirements.
- Using visual images helps minimize ambiguity and misunderstandings in communication.
3. Analysis and requirement identification:
- The Use Case diagram helps identify necessary functionalities, constraints, and potential error scenarios.
- Analyzing use cases helps identify non-functional requirements such as performance, security, and usability.
4. System design and development:
- The Use Case diagram provides input for system design and development activities.
- Utilizing use cases helps ensure that the system is developed to meet user needs.
5. System testing:
- The Use Case diagram is used to create test cases to ensure that the system operates according to requirements.
- Testing based on use cases helps detect and fix errors early in the development process.
In addition, using the Use Case diagram also brings several other benefits such as:
- Improves system maintenance capabilities: The Use Case diagram helps identify system components related to each use case, making system maintenance easier.
- Reuse of use cases: Use cases can be reused for similar systems, saving time and effort in the development process.
Components of the Use Case diagram
1. Actor
- Actors are users of the system or external entities that interact with the system.
- Examples: customers, sales representatives, managers, payment systems, etc.
2. Use case
- Use Cases are a set of actions performed by the system to achieve a specific goal of the user.
- Examples: logging in, placing an order, making a payment, managing accounts, etc.
3. Relationship
- Association: Describes the relationship between an actor and a use case. This relationship indicates that the actor can utilize the use case.
Association is an important component in the Use Case diagram, helping to describe the relationship between Actors and Use Cases. Effectively using Association will enhance the quality of the Use Case diagram and improve the system's operational efficiency.
Example:
The actor "Customer" may be associated with the "Login" Use Case, the "Place Order" Use Case, and the "Payment" Use Case.
The "Login" Use Case may be associated with multiple Actors, including "Customer," "Administrator," and "Sales Representative."
- Include: Describes the relationship between one use case and another. This relationship indicates that one use case can utilize the functionality of another use case. Include helps clarify the structure of Use Cases and how they interact with each other, helping to avoid redundancy of functionality across different Use Cases and improve the system's maintainability and upgradability.
Characteristic:
Direction: Include is a one-way relationship from Use Case A to Use Case B.
Characteristic: Include is a mandatory relationship. Use Case A cannot be successfully executed without the functionality of Use Case B.
Diversity: A Use Case can include multiple other Use Cases, and vice versa.
Example:
The "Place Order" Use Case may include the "Payment" Use Case.
The "Register Account" Use Case may include the "Email Verification" Use Case.
- Extend: Describes the relationship between one use case and another. This relationship indicates that one use case can supplement functionality for another use case. Extend helps clarify special cases within the Use Case and how to handle these cases, reducing the complexity of the main Use Case by separating out auxiliary functionalities and improving the system's maintainability and upgradability.
Example:
The "Place Order" Use Case may be extended by the "Handle Error Orders" Use Case.
The "Login" Use Case may be extended by the "Forgot Password" Use Case.
How to build a use case diagram for sales management
- Step 1: Identify the actors including the following information:
Sales staff:
- Create order
- Manage orders
- Lookup customer information
- …
Customer:
- Search for products
- Place an order
- Payment
- …
Administrator:
- Employee management
- Product management
- Statistical reporting
- …
- Step 2: Identifying use cases
For sales staff:
- Create order:
- Nhập thông tin khách hàng
- Select products
- Confirm order
- Enter customer information
- Order management:
- Track order status
- Update order information
- Cancel order
- Look up customer information:
- Search for customers by name, phone number, email.
- View detailed information of the customer.
For customers:
- Search for products:
- Search by product name, category, price.
- View product details.
- Place an order:
- Select a product.
- Fill in delivery information.
- Make a payment.
- Payment:
- Make an online payment.
- Cash on delivery.
For administrators:
- Manage employees:
- Add new employee.
- Update employee information.
- Delete employee.
- Product management:
- Add new product.
- Update product information.
- Delete product.
- Statistical reports:
- Revenue report.
- Inventory report.
- …
- Step 3: Determine the relationships between Use Cases.
To determine the relationships between Use Cases in the Use Case Diagram, you can follow these steps:
- Identify Use Cases.
- Start by identifying all Use Cases in the system.
- Use techniques such as Business Analysis, Brainstorming, and User Interviews to identify the Use Cases.
- Analyze the Use Cases.
- Analyze each Use Case to determine its functions and objectives.
- Identify the Actors associated with each Use Case.
- Determine the relationships.
- Review the identified and analyzed Use Cases to determine the relationships between them.
- Include: Mandatory relationship between two Use Cases.
- Extend: Optional relationship between two Use Cases.
- Generalization: Inheritance relationship between two Use Cases.
- Utilize the following types of relationships:
- Representing the relationships.
- Use UML symbols to represent the relationships between Use Cases in the Use Case Diagram.
Below are some tips to identify relationships between Use Cases:
- Search for commonalities: Look for common functions or objectives among Use Cases.
- Use supporting tools: Utilize CASE (Computer-Aided Software Engineering) tools to aid in identifying and representing relationships between Use Cases.
- Review special cases: Identify special cases within Use Cases and determine which Use Case is used to handle these cases.
- Identify dependency relationships: Determine which Use Case depends on the functionality of another Use Case.
Determining relationships between Use Cases accurately will help:
- Enhance the quality of the Use Case Diagram.
- Gain a better understanding of how the system operates.
- Improve system maintenance and upgrade capabilities.
Step 4: Draw the Use Case Diagram
Looking at the diagram, we identify what functions the system needs and who uses them. However, we don't yet know how they operate, how they are used. To understand the system better, we need to specify the Use Cases.
There are 2 ways to specify a Use Case.
Way 1: Write specifications for Use Cases.
We can write Use Case specifications following the template below:
- Use Case name //Account Details
- Use Case Code //UCSEC35
- Brief description//Display detailed information of the Account.
- Steps to perform//List the steps to perform
- Exit conditions //When the user clicks the Close button
- Special requirementst//Specify if any
- Preconditions//Must be logged in
- Postconditions//Specify any applicable conditions after executing this Use Case.
Way 2: Use diagrams to specify.
We can use diagrams such as Activity Diagrams, Sequence Diagrams to specify Use Cases.