Sơ đồ Use Case
Bài viết này mình cùng các bạn tìm hiểu về sơ đồ Use Case.
Use Case là gì
Theo định nghĩa của wikipedia:
Use case là một kỹ thuật được dùng trong kỹ thuật phần mềm và hệ thống để nắm bắt yêu cầu chức năng của hệ thống. Use case mô tả sự tương tác đặc trưng giữa người dùng bên ngoài (actor) và hệ thống. Nó thể hiện ứng xử của hệ thống đối với bên ngoài, trong một hoàn cảnh nhất định, xét từ quan điểm của người sử dụng. Nó mô tả các yêu cầu đối với hệ thống, có nghĩa là những gì hệ thống phải làm chứ không phải mô tả hệ thống làm như thế nào. Tập hợp tất cả Use case của hệ thống sẽ mô tả tất cả các trường hợp mà hệ thống có thể được sử dụng. .
Hiểu nôm na Use case được sử dụng để mô tả sự tương tác giữa người dùng bên ngoài (actor) với hệ thống.
Ví dụ: Khi một người dùng (actor) muốn đăng nhập vào một hệ thống website bán hàng. Đó được gọi là một Use Case.
Một trong những cách biểu diễn trực quan phổ biến hiện nay là lược đồ use case của UML.
Các thành phần của sơ đồ Use Case
Có tất cả 4 thành phần: Actor, Use Case, System Boundary, Relationship.
Actor
Actor được dùng để chỉ người sử dụng hoặc một đối tượng nào đó bên ngoài tương tác với hệ thống.
Use Case
Use Case là các chức năng mà actor sử dụng.
System Boundary
System Boundary dùng để phân biệt bên trong và bên ngoài hệ thống.
Relationship
Trong sơ đồ Use Case có 4 loại relationship:
Association
Quan hệ association được dùng để biểu diễn mối quan hệ giữa actor và use case.
Generalization
Quan hệ generalization được dùng để biểu diễn thừa kế của hai use case.
Include
Quan hệ include được dùng để biểu diễn trường hợp một use case xảy ra thì bắt buộc có một use case khác phải xảy ra trước đó.
Ví dụ: Bạn muốn thanh toán thì trước tiên bạn phải đăng nhập.
Extend
Quan hệ extend được dùng để biểu diễn trường hợp khi một use case xảy ra thì có thể xảy ra tiếp một use case khác (không bắt buộc xảy ra).
Ví dụ: Bạn xem sản phẩm thì có khả năng bạn sẽ thêm sản phẩm vào giỏ hàng.
Cách xây dựng sơ đồ Use Case
Chúng ta sẽ có thứ tự các bước như sau:
- Tìm các actor của hệ thống.
- Tìm các use case của actor đó.
- Xác định relationship giữa các use case.