Use Case là gì? Làm thế nào để xây dựng Use Case hoàn hảo

Use Case là kỹ thuật giúp mô phỏng hóa yêu cầu chức năng phần mềm. Một mô hình Use Case có thể được mô tả theo dạng sơ đồ quan hệ hoặc văn bản. Vậy Use Case là gì? Làm thế nào để xây dựng một Use Case hoàn hảo nhất. Cùng tìm câu trả lời trong bài viết này bạn nhé!

1.Use Case là gì?

Use Case là thứ mà người dùng nhận được từ hệ thống hoặc phương pháp mà những hệ thống tương tác với nhau. Use Case chính là kỹ thuật để miêu tả sự tương tác đó giữa người dùng và hệ thống trong một môi trường hoặc một mục đích cụ thể nào đó.

Sự tương tác này sẽ nằm ở những môi trường cụ thể khác nhau, dạng như một bối cảnh hay chức năng cụ thể trong hệ thống hoặc phần mềm. Sự mô tả tương tác này có mục đích là diễn đạt theo yêu cầu, góc nhìn cụ thể từ phía người dùng.

Tên của một Use Case thường được đặt ngắn gọn và rõ ràng sao cho miêu tả đủ nghĩa cho đối tượng người dùng. Chúng ta có thể sử dụng Use Case đại diện cho những nghiệp vụ của hệ thống. Ví dụ như một “hệ thống bán vé tàu trực tuyến” thì chức năng đặt vé sẽ là một Use Case mà người dùng muốn nhận. 

Thiết kế Use Case mô tả sự tương tác giữa người dùng và hệ thống
Thiết kế Use Case mô tả sự tương tác giữa người dùng và hệ thống

2. Những thành phần của Use Case

Những thành phần của Use Case sẽ cấu thành lên chức năng của chúng. Các thành phần chính sẽ bao gồm:

2.1. Actor

Actor sử dụng chỉ người dùng hoặc đối tượng bên ngoài tương tác hệ thống. Để xác định một Actor bạn có thể dựa theo những câu hỏi sau:

  • Ai là người dùng chức năng chính của hệ thống?
  • Ai là admin của hệ thống?
  • Ai cần hỗ trợ của hệ thống để làm tác vụ hàng ngày?
  • Hệ thống này có cần tương tác với các hệ thống khác không?
  • Ai input dữ liệu vào hệ thống?
  • Ai sẽ quan tâm đến giá trị của hệ thống?

2.2. Use Case, Boundary of System

Use Case là chức năng mà Actor sử dụng thể hiện sự tương tác của người dùng và hệ thống. Bạn có thể tìm được Use Case sau khi trả lời những câu hỏi sau:

  • Actor cần các chức năng nào của hệ thống?
  • Actor có cần chỉnh sửa hay lưu trữ những thông tin nào của hệ thống?
  • Use Case tạo ra nhờ những sự kiện không?
  • Khó khăn và thiếu hụt của hệ thống hiện tại là gì?
  • Hệ thống cần những thông tin đầu vào và đầu ra như thế nào?

Communication Link đóng vai trò kết nối chỉ sự tương tác giữa người dùng và hệ thống. Boundary of System là phạm vi Use Case xảy ra. 

2.3. Relationship

Relationship gồm 3 loại là Extend, Include và Generalization. Include là định nghĩa quan hệ bắt buộc phải có, dạng như Use Case A sẽ có quan hệ với Use Case B. Extend là mối quan hệ mở rộng của các Use Case. Include thể hiện quan hệ bắt buộc còn Extend là mối quan hệ có thể có hoặc không.

Generalization có thể hiểu là mối quan hệ cha con giữa những Use Case. Điểm khác biệt là khả năng thể hiện quan hệ giữa những Actor với nhau. Nhìn chung, Generalization sẽ giúp người dùng hiểu rõ hơn về yêu cầu của những nhóm Use Case và có tính kế thừa.

3. Bí quyết xây dựng một Use Case hoàn chỉnh nhất

Để người dùng có thể xây dựng Use Case hoàn chỉnh sẽ cần trải qua các công đoạn sau:

3.1. Giai đoạn mô hình hóa

  • Thiết lập ngữ cảnh
  • Xác định Actor
  • Xác định những Use Case
  • Định nghĩa mối quan hệ giữa Use Case và Actor
  • Đánh giá những mối quan hệ

3.2. Giai đoạn cấu trúc

  • Đánh giá những Use Case quan hệ Include
  • Đánh giá Use Case quan hệ Extend
  • Đánh giá Use Case quan hệ Generalization

3.3. Giai đoạn review

  • Kiểm tra để bảo quản hệ thống đúng đặc tả
  • Thẩm định để đảm bảo hệ thống phát triển đúng thứ mà khách hàng cần

4. Các sai lầm khi lên ý tưởng thiết kế Use Case

Làm thế nào để thiết kế một Use Case hoàn hảo? Bạn sẽ cần lưu ý những vấn đề sau:

4.1. Chuyện đặt tên

Đặt tên Use Case tương đối quan trọng. Chúng ta dùng hình ảnh để hiểu thông tin và hàm lượng chữ tương đối ít. Vì vậy, những gì chúng ta ghi phải súc tích và có giá trị giúp người dùng hiểu được ngay lập tức khi xem lần đầu.

Các cách đặt tên Use Case sẽ tuân thủ những vấn đề sau:

  • Actor đặt tên bằng danh từ, không dùng mệnh đề quan hệ và động từ
  • Tên Use Case ghi rõ, rành mạch

Bản chất của việc vẽ Use Case là diễn tả yêu cầu cho người dùng hiểu nên bạn cần dùng những từ ngữ thông dụng, không dùng từ kỹ thuật hay đặt tên quá dài và hạn chế tối đa dùng kiểu bị động.

4.2. Use Case quá rối rắm

Vấn đề này thường do người làm ôm đồm quá nhiều vấn đề dẫn đến Use Case xuất hiện trong Diagram. Use Case thường sẽ vẽ sai ở những điểm sau:

  • Xác định sai Use Case
  • Đặt tên Use Case sai, dùng quá nhiều cụm danh từ
  • Use Case không có Extend, không ghi chú cụ thể điều kiện UC extend xảy ra
  • Không có Boundary of System để phân nhóm, giới hạn những Use Case

Cách tốt nhất khi thiết kế Use Case là bạn chỉ nên dùng dưới 10 Use Case trong đó. Các Use Case còn lại nên dùng Boundary of System để phân chia sao cho hợp lý nhất.

Bài viết trên là những chia sẻ về vấn đề Use Case là gì và những thông tin liên quan. Hy vọng các kiến thức trên sẽ giúp bạn thiết lập được một Use Case hoàn chỉnh.

Trả lời