Việc viết use case là một phương pháp quan trọng trong phân tích và truyền đạt các yêu cầu phần mềm. Use case giúp mô tả và hiểu rõ hơn về các tương tác giữa người dùng và hệ thống để đạt được các mục tiêu cụ thể. Trong bài viết này, BAC sẽ hướng dẫn viết Use Case hiệu quả cho Business Analyst và cung cấp một số mẫu Use Case thông dụng.
1. Ý nghĩa của việc viết use case
Bạn đã bao giờ thắc mắc tại sao phải viết Use Case chưa? Việc viết use case đóng vai trò vô cùng lớn trong việc xác định rõ ràng những gì phần mềm cần thực hiện và hỗ trợ giao tiếp yêu cầu một cách hiệu quả. Use case giúp team business và bên technical có thể hiểu và cung cấp phản hồi một cách hiệu quả.
Với tư cách là nhà phân tích nghiệp vụ, use case giúp bạn giao tiếp các yêu cầu mang tính kỹ thuật với đội phát triển phần mềm. Còn đối với nhà kỹ thuật, use case giúp họ giao tiếp với các bên liên quan, xây dựng sự tham gia của các nhân tố kinh doanh. Như vậy, use case như một công cụ giao tiếp hay tiếng nói chung để thu hẹp khoảng cách và kết nối mọi người lại với nhau.
2. Use case là gì?
Use case mô tả về tương tác giữa người dùng và hệ thống để đạt được một mục tiêu cụ thể. Use case tập trung vào cách người dùng tương tác với hệ thống và một use case sẽ bao gồm một chuỗi các bước tương tác. Chúng được biểu diễn dưới dạng một luồng chính (basic flow) và có thể có các luồng thay thế (alternative flow) và luồng ngoại lệ (exception flow).
Ví dụ về một use case: "Mua khóa học"
- Tên use case: Mua khóa học.
- Mô tả ngắn gọn: Use case bắt đầu khi người dùng quan tâm đến một khóa học và kết thúc khi người dùng hoàn tất việc mua khóa học đó.
-
Nhân tố tham gia:
- Người dùng: Người muốn mua khóa học.
- Hệ thống: Hệ thống quản lý khóa học và thanh toán.
Nhìn chung, các use case thường thể hiện những điều cụ thể mà người dùng có thể thực hiện với hệ thống phần mềm và nó nắm bắt tất cả các cách mà người dùng và hệ thống đó có thể tương tác với nhau.
Chi tiết về use case bao gồm tất cả các trường hợp ngoại lệ và biến thể. Ví dụ như điều gì sẽ xảy ra nếu bạn mua một khóa học nhưng địa chỉ email không hợp lệ hoặc thông tin thẻ tín dụng không chính xác,... Tất cả những biến thể đó có thể xảy ra sai sót trong phạm vi hệ thống.
3. Hướng dẫn viết use case hiệu quả
- Đặt tên use case:
Tên use case nên phản ánh mục tiêu chính của tương tác, mô tả ngắn gọn hành động của người dùng. Ví dụ: "Mua khóa học".
- Viết mô tả ngắn gọn:
Mô tả ngắn gọn, súc tích giúp người đọc hiểu được mục tiêu và phạm vi của use case. Chẳng hạn như use case bắt đầu khi người dùng quan tâm đến một khóa học và kết thúc khi người dùng hoàn tất việc mua khóa học đó.
- Xác định tác nhân tham gia (actors):
Tác nhân tham gia là những đối tượng có vai trò liên quan đến use case. Trong ví dụ mua khoá học thì người dùng và hệ thống quản lý khóa học và thanh toán là các nhân tố tham gia.
- Xác định điều kiện tiên quyết:
Điều kiện tiên quyết chính là những điều cần phải thực hiện trước khi use case bắt đầu.
- Viết luồng chính (basic flow):
Viết một chuỗi các bước tương tác giữa người dùng và hệ thống để đạt được mục tiêu. Luồng chính mô tả tất cả những bước thông thường mà người dùng thực hiện để mua khóa học.
Ví dụ cụ thể: use case mua khoá học sẽ gồm những luồng chính sau:
- Người dùng xem danh sách các khóa học có sẵn.
- Người dùng chọn một khóa học cụ thể.
- Hệ thống hiển thị thông tin chi tiết về khóa học đó.
- Người dùng xem thông tin chi tiết và quyết định mua khóa học.
- Hệ thống yêu cầu người dùng cung cấp thông tin thanh toán.
- Người dùng cung cấp thông tin thanh toán.
- Hệ thống xác nhận thanh toán và cung cấp quyền truy cập vào khóa học.
- Use case kết thúc.
- Viết luồng thay thế (alternative flow):
Đôi khi, người dùng có thể thực hiện các tương tác khác, hoặc hệ thống có thể xuất hiện các tình huống đặc biệt cần xử lý. Do vậy, việc viết các luồng thay thế giúp mô tả chi tiết các tương tác và cách thức xử lý đối với các tình huống khác nhau. Ví dụ:
-
Người dùng không tìm thấy khóa học mong muốn:
- Người dùng thực hiện tìm kiếm lại.
- Người dùng quyết định không mua khóa học và thoát khỏi use case.
-
Người dùng không hoàn tất thanh toán:
- Người dùng hủy thanh toán.
- Hệ thống hủy việc mua khóa học.
- Viết luồng ngoại lệ (exception flow):
Đôi khi các tình huống ngoại lệ sẽ xảy ra trong quá trình tương tác. Viết các luồng ngoại lệ giúp mô tả có thể giúp xử lý các tình huống ngoại lệ một cách tối ưu nhất. Ví dụ:
-
Hệ thống gặp lỗi khi xử lý thanh toán
- Hệ thống hiển thị thông báo lỗi và yêu cầu người dùng thử lại hoặc liên hệ hỗ trợ.
Viết use case là một phương pháp quan trọng để mô tả và hiểu rõ hơn về tương tác giữa người dùng và hệ thống trong phân tích và giao tiếp yêu cầu phần mềm. Bằng cách tuân thủ các bước được BAC hướng dẫn, bạn có thể hoàn toàn viết những use case hiệu quả và dễ hiểu. Cuối cùng đừng quên tham khảo thêm những kiến thức thú vị về BA tại BAC's Blog bạn nhé!
Nguồn tham khảo:
https://www.bridging-the-gap.com/
Nhu cầu đào tạo doanh nghiệp
BAC là đơn vị đào tạo BA đầu tiên tại Việt Nam. Đối tác chính thức của IIBA quốc tế. Ngoài các khóa học public, BAC còn có các khóa học in house dành riêng cho từng doanh nghiệp. Chương trình được thiết kế riêng theo yêu cầu của doanh nghiệp, giúp doanh nghiệp giải quyết những khó khăn và tư vấn phát triển.
CÁC KHOÁ HỌC BUSINESS ANALYST BACs.VN DÀNH CHO BẠN
Khoá học Online:
Khoá học Offline:
Tại Tp.HCM:
Tại Hà Nội:
Tham khảo lịch khai giảng TẤT CẢ các khóa học mới nhất
Ban biên tập nội dung - BAC