Đây sẽ là một chiếc post nho nhỏ để chia sẻ với mọi người về cách mà mình đang viết ticket cho dự án của Fortna nhé ạ. Có thể sẽ đem lại phần nào gợi ý cho các BA khác về hướng viết ticket và cũng sẽ để collect feedback từ mọi người xem em nên update những phần nào để có thể đạt chất lượng cao hơn nè. Chúng ta bắt đầu nhé!
Hiện tại em đang chia các User Story mà em viết ra thành các phần như sau:
- Description
- Design
- Acceptance Criteria
- Note
Phần I: Description
Đây sẽ là mở đầu trong 1 User Story mà mình viết này, sẽ mô tả chi tiết xem US này chúng ta cần làm gì. Có thể sẽ bao gồm cụ thể các step mà US yêu cầu, và không thể thiếu là note luôn các phần in scope hoặc out scope của US nữa nhé. Và phần này cũng không nên quá dài, vì chúng ta sẽ mô tả chi tiết hơn ở các trường hợp cụ thể trong phần số 3 rồi.
Phần II: Design
Tiếp phần số 2 nào, đây sẽ là phần chúng ta capture lại các screen có trong scope của US để mô tả các step cần có để hoàn thiện được yêu cầu của US. Càng cụ thể screen cho từng step càng tốt nhé.
Cái này sẽ khá là cần thiết để mọi người có thể dễ hình dung hơn về yêu cầu của ticket, nhận thấy được điểm khác biệt trước và sau mỗi hành động và cũng sẽ khá quan trọng cho giai đoạn testing sau này nữa.
Phần III: Acceptance Criteria
Đây có lẽ là phần quan trọng nhất rồi này. Acceptance Criteria là một trong những phần không thể thiếu của mỗi US, nó sẽ giúp làm rõ từng trường hợp xảy ra trong flow và yêu cầu của US này cần xử lý như nào với mỗi trường hợp ấy.
Cách viết hiện tại của mình sẽ thể dạng bảng cho phần này với 4 cột, Given – When – Then – Design với từng mục đích như sau:
Given | When | Then | Design |
đây sẽ là tiền điều kiện của AC (cụ thể context cho trường hợp này) | đây là hành động của user tác động vào hệ thống hoặc là hành động của hệ thống chạy gây ra những thay đổi sau đó | kết quả của hành động xảy ra ở When | màn hình thể hiện cho Given – Then để nhận thấy được sự thay đổi trước và sau khi hành động When xảy ra |
Mình sẽ dựa vào yêu cầu của US, sau đó xác định ra các step mà user sẽ thực hiện và mô tả lại nó theo kết quả của từng hành động để hiển thị ra được kết quả như ticket mong muốn.
Phần IV: Note
Phần này để note lại các lưu ý cho ticket, hoặc có thể sử dụng để các dev note lại technical somution cần thực hiện để hoàn thành yêu cầu này. Nó sẽ là optional thôi, tùy từng ticket và tính chất phức tạp của logic để ghi lại hoặc bỏ qua nhé.
Trên đây là tóm tắt lại format của 1 User Story mình đang follow tại dự án Fortna. Với mỗi dự án, mỗi team, mỗi BA chúng ta sẽ có những cách thức thể hiện User Story khác nhau. Cùng tham khảo và góp ý nếu có điểm gì chưa hợp lý hoặc chưa thực sự thể hiện được hết các phần nội dung nhé.
Bài viết này không được tham khảo từ nguồn nào cả, tự viết thôi ạ. Mọi người có thể đọc thêm các bài post khác của mình ở đây nhé: