8 kỹ thuật hỗ trợ chia nhỏ User Stories (Phần 2)

Thực tế rất nhiều trường hợp chỉ một user story chứa đựng một lượng lớn các chức năng. User story này có tên gọi là Epic. Vì một epic thường quá to và nhiều dữ liệu để một agile team có thể hoàn thành đúng tiến độ do đó nó sẽ được phân chia nhỏ thành các user stories con. Ở bài đăng phần 1, chúng ta đã được tìm hiểu sơ qua về 4 kỹ thuật vô cùng hữu ích rồi, bài viết này cùng BAC điểm qua các phương pháp còn lại nhé.
1. Chia User Stories theo dữ liệu
Đôi khi, sự phức tạp trong user story là do có quá nhiều loại dữ liệu liên quan.
Ví dụ: chúng tôi đang làm việc với một khách hàng để phát triển một ứng dụng mới với chức năng giúp các chuyên gia trên sân golf đánh giá trò chơi. Ứng dụng cần hỗ trợ nhiều loại hình thi đấu khác nhau như: đấu cá nhân, đấu đồng đội, đối kháng,…mỗi loại hình sẽ có bộ quy tắc riêng để tính điểm. 
chia_theo_du_lieu
Đây là một ví dụ tuyệt vời về việc chúng ta phải chia nhỏ các kiểu dữ liệu thành các user story riêng biệt để cung cấp các tính năng ban đầu và nâng cao chúng trong tương lai.
Nếu không có cấu trúc này, sự phức tạp sẽ trở nên quá tải đối với nhóm làm việc vì có quá nhiều loại dữ liệu cần xem xét cùng một lúc. Trong trường hợp này, chúng ta có thể cung cấp một vài tính năng với số lượng nhỏ để có thể thu thập phản hồi từ người dùng trong mỗi chu kỳ cho đến khi họ chấp nhận.
2. Chia User Stories theo quy tắc nghiệp vụ
Chia nhỏ story người dùng theo các quy tắc nghiệp vụ là một cách tuyệt vời để thay đổi kích thước story. Quy tắc nghiệp vụ là một quy định cho biết cách điều hành một doanh nghiệp; hướng dẫn các phương pháp kinh doanh. Vì vậy nếu có quá nhiều quy tắc, chúng có thể triển khai chúng dưới dạng những story riêng biệt.
Nhưng hãy cẩn thận! Chỉ có một số quy tắc nghiệp vụ có thể được thực hiện độc lập, trong khi những quy tắc khác thì không. Nếu một quy tắc không độc lập, bạn sẽ phải tìm hiểu xem liệu nó có thể được thực hiện một cách độc lập hay không hay nó phụ thuộc vào một quy tắc khác để hoạt động chính xác. 
3. Chia User Story theo các bước dòng công việc (Workflow) hoặc các sự kiện
Ý tưởng chia User Story hoặc Epic theo các bước của quy trình làm việc (workflow) rất đơn giản:
  • Tìm số bước tối thiểu cần thiết của workflow để mang lại giá trị kinh doanh cho người dùng cuối 
  • Tạo một story nhỏ tương ứng các bước này
  • Di chuyển các bước còn lại của dòng công việc sang phiên bản tương lai.

workflow

Tuy nhiên, nếu bạn đã từng cố gắng tách một Feature, Story hoặc Epic thông qua các bước của workflow, thì hẳn bạn đã biết nó khó khăn như thế nào.
Đối với quy trình làm việc đơn giản, chúng tôi khuyên bạn nên sử dụng một kỹ thuật gọi là chuỗi sự kiện. Nó hoạt động như sau: Bạn yêu cầu người dùng cuối của mình lướt qua các sự kiện xảy ra (các bước của quy trình công việc) trong đầu của họ và viết chúng ra một tờ giấy. Nói với họ đừng quá lo lắng về việc các bước có liên tục hay không.
Ví dụ: đối với một sản phẩm cần tổ chức sự kiện, chúng ta có Epic cần chia tách nhỏ như sau: 
“Với tư cách là Người quản lý sự kiện, tôi có thể sắp xếp tất cả các cơ sở trực tuyến để hỗ trợ sự kiện một cách tối ưu nhất.”
Sau khi nói chuyện với SME, chúng tôi đã ghi lại các sự kiện kinh doanh như sau:
  • Liên hệ nghệ sĩ (Artist)
  • Nắm bắt các yêu cầu về địa điểm của nghệ sĩ
  • Nghiên cứu các địa điểm tiềm năng
  • So sánh tính khả dụng, chi phí và đặc điểm của địa điểm 
  • Chọn địa điểm phù hợp nhất
  • Sắp xếp các sự kiện với địa điểm và người biểu diễn
  • Thêm sự kiện vào EventBrite
  • Theo dõi doanh số bán vé
Một cách để phân chia story này là tạo user story cho từng sự kiện, sau đó quyết định xem story kết quả có mang lại đủ giá trị để hoạt động độc lập hay không. 
Sau khi đánh giá, có thể nhận thấy rằng chỉ riêng mục “Liên hệ với người biểu diễn (nghệ sĩ)” sẽ không mang lại đủ giá trị nghiệp vụ, vì vậy chúng tôi đã kết hợp mục này với mục “Nắm bắt các yêu cầu về địa điểm”. Điều này dẫn đến user story: 
“Với tư cách là người quản lý sự kiện, tôi có thể nhận các yêu cầu về địa điểm từ các nghệ sĩ biểu diễn để đảm bảo rằng các cơ sở mà tôi đặt phù hợp với họ.”
Story này chắc chắn có giá trị đối với các nhà quản lý sự kiện. Chúng ta đã chuyển các user story còn lại sang các lần lặp lại trong tương lai.
Phương pháp này hoạt động với workflow đơn giản và bạn có thể dự đoán những gì có thể xảy ra tiếp theo. Tuy nhiên, nếu bạn có các quy trình phức tạp với nhiều ngoại lệ và các hành vi không thể đoán trước khác, bạn có thể cần phải thực hiện nhiều phân tích hơn. 
Đó là khi kinh nghiệm mô hình hóa quy trình trở nên hữu ích! Nếu bạn biết cách tạo Activity hoặc Swimlane Diagrams, Data Flow Diagrams hoặc một số dạng mô hình quy trình khác, bạn có thể phân tích và xác định bộ quy trình hoặc tính năng nào cung cấp giá trị cho người dùng cuối.
4. Chia User Story theo Use Case Paths

use-case-path

Nếu bạn đã quen thuộc với use cases thì có thể ứng dụng một kỹ thuật khác để chia nhỏ User Story đó là dựa trên Use Case Paths. Mỗi Path thông qua Use Case sẽ tạo nên một story con tuyệt vời.
Ngay cả khi bạn hiện không có use case nào nhưng cần chia nhỏ Epic hay một user story quá phức tạp thì việc phát triển một use case có thể là lựa chọn tốt nhất.
Việc bạn cần làm là viết User Story cho Standard Path và một hoặc nhiều User Story cho Alternative Path và Exception Path. Nếu các luồng quá lớn cho lần lặp tiếp theo và cần phân tách thêm, hãy sử dụng phân tích workflow mà BAC đã mô tả bên trên. Khi user story của bạn có kích thước phù hợp và sẵn sàng để lập trình, bước tiếp theo là viết Acceptance Criteria.
Như vậy,  việc chia nhỏ user stories không hề dễ dàng nhưng nếu được áp dụng đúng cách bạn sẽ có thể đưa ra dự đoán chính xác và lập kế hoạch tối ưu hơn. Cuối cùng, xin cảm ơn bạn đã đọc bài viết này. Hy vọng BAC đã đem đến cho bạn những kiến thức bổ ích. Đừng quên thường xuyên truy cập và ủng hộ BAC’s Blog bạn nhé!

Nguồn tham khảo:
https://www.businessanalysisexperts.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

 

Previous Post
Next Post