Giống nhau: cả hai đều mô tả nhu cầu từ góc nhìn người dùng, đều gắn với một vai trò và một mục tiêu, và đều là đầu vào để đội phát triển triển khai.
Khác nhau:
| User story | Use case | |
|---|---|---|
| Độ dài | Một câu, chi tiết nằm ở AC | Đặc tả có cấu trúc, nhiều bước |
| Trọng tâm | Giá trị người dùng nhận được | Trình tự tương tác đầy đủ |
| Luồng ngoại lệ | Nằm trong acceptance criteria | Có mục riêng cho luồng thay thế và ngoại lệ |
| Vòng đời | Làm rõ dần, có thể viết lại | Viết đầy đủ trước khi triển khai |
| Hợp với | Dự án lặp, đội ngồi gần nhau | Quy trình dài, nhiều nhánh, cần ký duyệt |
Chọn theo bối cảnh:
- User story khi đội trao đổi trực tiếp được hằng ngày và yêu cầu còn thay đổi. Chi tiết bù bằng đối thoại.
- Use case khi luồng nghiệp vụ dài với nhiều điều kiện rẽ nhánh, khi đội phát triển ở xa hoặc khác múi giờ, hoặc khi hợp đồng đòi tài liệu nghiệm thu.
Trong thực tế hai thứ hay được dùng chung: use case để mô tả toàn bộ quy trình cho bên nghiệp vụ duyệt, rồi cắt thành các user story để đưa vào sprint. Nêu được cách kết hợp này thường được đánh giá cao hơn là chọn một bên và bác bên còn lại.