Use case là những mô tả về cách người dùng tương tác với hệ thống để hoàn thành nhiệm vụ hoặc đạt được mục tiêu. Việc lập bản đồ các tương tác này có thể cải thiện việc lập kế hoạch sớm và đảm bảo chu trình phát triển suôn sẻ. Bài viết dưới đây của Cole sẽ tiếp tục nói về loại document thứ 2 – Use cases.
Use Case là gì?
Use case giải thích cách users tương tác với sản phẩm hoặc hệ thống. Nó phác thảo luồng đầu vào của người dùng, thiết lập các paths thành công và thất bại để đạt được mục tiêu. Điều này cho phép developers hiểu rõ hơn về chức năng của hệ thống, cách thức hoạt động và lý do xảy ra lỗi. Bạn có thể viết ra hoặc lập sơ đồ use case model sử dụng cho visual thinkers.
Use cases có mức độ phức tạp khác nhau tùy thuộc vào đối tượng hoặc hệ thống của bạn. Nhưng nhìn chung, use cases của bạn phải xác định một số thành phần chính bao gồm:
- Actor: mọi thứ thể hiện hành vi tương tác với hệ thống, chẳng hạn như một user, một nhóm hoặc một phần mềm khác.
- System: sản phẩm hoặc dịch vụ có chức năng được xác định.
- Goal: mục đích hoặc mục tiêu mà người dùng tiếp cận với các tính năng của hệ thống.
Các actors, systems và goals xây dựng nền tảng cho một use case. Khi bạn bắt đầu theo dõi các tương tác của hệ thống, một số yếu tố mới sẽ xuất hiện:
- Stakeholder(s): người có cổ phần hoặc quan tâm đến hiệu suất của hệ thống
- Primary actor: tác nhân khởi tạo chức năng của hệ thống để đạt được mục tiêu
- Preconditions: các yếu tố cơ bản cần thiết để use case xảy ra
- Triggers: các sự kiện bắt đầu một use case
- Basic flows: use cases trong đó hệ thống hoạt động như dự định để đạt được mục tiêu
- Alternate flows: các kết quả khác nhau dựa trên thời điểm và cách thức hệ thống đi chệch hướng

Các loại use cases bạn cần biết
Use cases có hai dạng: business và system. System use case là cái nhìn chi tiết về cách người dùng tương tác với từng bộ phận của hệ thống. Nó nêu bật cách các đầu vào và bối cảnh độc đáo khiến hệ thống đạt được các kết quả khác nhau như thế nào. Mức độ chi tiết này nêu bật cách hoạt động của các chức năng riêng lẻ của hệ thống trong bất kỳ kịch bản nào.
Business use cases vẽ nên một bức tranh tổng quát hơn về cách người dùng có thể tương tác với doanh nghiệp của bạn để đạt được mục tiêu của họ. Thay vì tập trung vào chi tiết kỹ thuật, đây là bản mô tả nguyên nhân và kết quả của các đầu vào khác nhau. Ví dụ: nếu bạn chạy code debugging platform, business use case của bạn sẽ giải thích cách người dùng nhập code của họ và nhận thông báo lỗi.
Một số nhóm thích viết business use case để phác thảo các quy trình của hệ thống trước khi phát triển. Khi developer bắt đầu công việc, manager sẽ phác thảo thêm các technical system use cases để làm theo.
Ví dụ về use case
Giả sử bạn là product manager đang phát triển ứng dụng ngân hàng di động cho công ty của mình. Nền tảng của bạn cần hợp lý hóa việc đăng ký người dùng và thiết lập tài khoản. Sau đây là định dạng use case mẫu dựa trên ứng dụng này:
Background information:
- System: mobile banking app
- Primary actor: khách hàng muốn mở tài khoản
- Secondary actor: người bảo lãnh và các công cụ tự động tính toán lãi suất và số dư gốc tối đa
- Goals: tiết kiệm thời gian đăng ký tài khoản và làm quen
- Stakeholders: Giám đốc điều hành và product VP của công ty bạn
- Preconditions: người dùng tải xuống ứng dụng và đáp ứng các yêu cầu về tài khoản
- Triggers: người dùng chọn tạo tài khoản mới từ ứng dụng
Kịch bản:
- Basic flow: Người dùng tải xuống ứng dụng của bạn và chọn tạo tài khoản mới. Ứng dụng thu thập thông tin về các tài khoản và điểm tín dụng khác của người dùng. Từ đó, nó tự động chia sẻ các tài khoản mà họ đủ điều kiện và lãi suất của họ. Người dùng tìm thấy một tài khoản phù hợp với nhu cầu của họ và đăng ký.
- Alternate flow 1: Người dùng nhập thông tin tài chính của họ và ứng dụng sẽ nhanh chóng tạo các tùy chọn tài khoản. Tuy nhiên, mỗi tài khoản đều mặc định có mức lãi suất cao nhất mà nền tảng tài chính của họ cho phép. Vì vậy, người dùng từ bỏ ứng dụng để tìm mức giá thấp hơn.
- Alternate flow 2: Quy trình giới thiệu hoạt động như dự kiến, nhưng ứng dụng gặp phải các vấn đề về tuân thủ, chẳng hạn như Know Your Customer (KYC) requirements. Mặc dù ứng dụng có thể cung cấp các tùy chọn tài khoản nhưng các bước tuân thủ bổ sung sẽ làm chậm quá trình.
- Alternate flow 3: Vì ứng dụng chỉ xem xét các tài khoản và điểm tín dụng khác nên ứng dụng không thể cung cấp đầy đủ các tùy chọn tài khoản. Ví dụ: nó chỉ có thể cung cấp thẻ tín dụng và hạn mức tín dụng. Vì vậy, khách hàng đang tìm kiếm khoản thế chấp phải tìm kiếm lựa chọn khác.

Lợi ích của việc sử dụng use case
Trong giai đoạn lập kế hoạch, use cases sẽ xác định phạm vi, yêu cầu và lộ trình dự án của bạn. Các nhóm cũng có thể thảo luận về kết quả tốt nhất cho người dùng và thiết kế đường dẫn đến kết quả đó. Với alternate flows, bạn cũng có thể lường trước rủi ro trước khi chúng ảnh hưởng đến trải nghiệm của người dùng. Dưới đây sẽ là một số lợi ích của việc sử dụng use case bạn nên biết:
- Explains value: Các use case giải thích các tính năng của hệ thống một cách dễ hiểu. Vì vậy, khi trình bày kế hoạch của bạn với các bên liên quan, use case sẽ giúp hệ thống của bạn dễ hiểu hơn.
- Predicts costs: Một use case phác thảo sự phức tạp của một hệ thống. Sự phức tạp hơn có thể đi kèm với các tính năng hoặc biện pháp bảo vệ bổ sung. Bằng cách tìm hiểu mức độ phức tạp của hệ thống của bạn, bạn có thể ước tính chi phí phát triển.
- Cải thiện kế hoạch: Không có use case, designers và developers tập trung vào những gì một hệ thống làm, chứ không phải nó làm như thế nào. Tuy nhiên, các use case giúp các team xem xét tất cả các cách để thực hiện các tính năng và bảo vệ.
- Shares alternative uses: Không phải tất cả alternative flows trong hệ thống đều dẫn đến kết quả thất bại. Việc vạch ra các tình huống khác nhau sẽ tìm ra giải pháp mới cho các vấn đề cũ hoặc mở rộng hiểu biết của bạn về những gì hệ thống có thể hoàn thành.

Theo dõi Cole và khóa học về data analysis để đón đọc các nội dung tiếp theo trong series User Story, Use Case, Functional Specification (p2)
Đừng bỏ lỡ khóa học ba online để có thêm kinh nghiệm về ngành bạn chọn nhé
>> Xem thêm: User Story, Use Case, Functional Specification (P1)

Thảo luận
Đăng nhập để bình luậnAnh có thể đặt câu hỏi, góp ý hoặc lưu lại insight quan trọng sau khi đọc bài.