Story map là gì
User story là gì?User story là một câu chuyện có người dùng, hành động và kết quả. Nó thường được mô tả theo cấu trúc sau: Show
Trong bài viết này, tôi sẽ sử dụng những ví dụ về một công ty tưởng tượng có tên là Enable Quiz. Công ty này đang xây dựng một ứng dụng giúp cho các quản lý nhân sự tìm kiếm các ứng viên dựa trên những kỹ năng cụ thể tương ứng với một bản mô tả công việc. Ví dụ cho user story: Là một quản lý nhân sự, tôi muốn ghép các kỹ năng của một vị trí cần tuyển với những chủ đề quiz, để tôi có thể tạo được các quiz lọc ứng viên Các story thường được tổ chức theo mô hình top-down (từ trên xuống dưới). Sẽ có một epic story mô tả một câu chuyện tổng quát. Epic story này sẽ bao gồm nhiều user story, mỗi user story sẽ thực hiện một chức năng riêng biệt. Mỗi user story sẽ có nhiều test case để kiểm tra chúng Tổ chức của các user storyVí dụ cho epic story: Là một quản lý nhân sự, tôi muốn tạo ra các quiz để tôi có thể dùng khi phỏng vấn ứng viên Những thứ cần có để xây dựng user storyNgười dùng là ai?Nếu bạn không xác định rõ người dùng sản phẩm là ai thì sẽ rất khó để xây dựng user story. Và có thể bạn sẽ gặp phải lỗi the twin anti-poles of design failure:
Để tránh lỗi thiết kế the twin anti-poles , hãy đặt mình vào vị trí người sử dụng (persona): đặt một cái tên cụ thể cho người dùng (ví dụ như chị quản lý nhân sự Helen) và đưa ra ý tưởng về mối liên quan giữa cô ấy và phần mềm của bạn:
Nếu thật sự hiểu người dùng nghĩ - nhìn thấy - cảm nhận - làm những gì, bạn sẽ tìm ra được nhiều user story. Người dùng muốn gì?Hãy xây dựng một tình huống để mô tả cái mà người dùng muốn làm. Nó phải tương đối tổng quát để có thể tương đương với nhiều tình huống khác. Ví dụ
Để thiết kế những user story tốt hơnUser story nên có mức độ chi tiết như thế nào là đủ?Các user story nên chi tiết, mô tả hành động cụ thể, có thể test được và gắn liền với các tình huống Ví dụ
Để tìm kiếm được hết các user story của một epic story, bạn nên sử dụng các storyboard. Đây là một công cụ bao gồm những hình ảnh với người dùng, hành động và bối cảnh. Nó mô tả epic story theo cách của một câu truyện tranh Ví dụ với epic story Là một quản lý nhân sự, tôi muốn tạo ra các quiz để tôi có thể dùng khi phỏng vấn ứng viên Kết quả có những gì?Kết quả phải có thể test được, và là những gì người dùng muốn nhận được khi họ thực hiện hành động. Ví dụ với user story ở trên Là một người quản lý nhân sự, tôi muốn tìm kiếm các ứng viên kỹ thuật thì kết quả biết được những kỹ năng của các ứng viên có thể test được, nhưng nó không phải là kết quả mong muốn của Helen. Không phải ngẫu nhiên mà Helen tìm kiếm các ứng viên kỹ thuật, mà thường đó là do yêu cầu từ các phòng ban khác. Vì vậy mà kết quả có thể sử dụng thông tin các ứng viên khi phỏng vấn họ mới là cái mà Helen cần. Test các User StoryCần phải test những gì?Việc test các user story không phải là kiểm tra với hành động của người dùng, họ có thu được kết quả đúng như trong user story hay không. Mà việc test các user story là kiểm tra xem họ có muốn thực hiện hành động trong user story hay không? Vì thế mà bạn nên sử dụng công cụ BJ Fogg’s curve để mô tả nó: Như vậy để có thể test được thì cần phải
Test như thế nào?Việc test các story nên được chia thành các giai đoạn (phase), mỗi giai đoạn bao gồm nhiều vòng lặp thiết kế (design)- xây dựng nguyên mẫu (prototype) - kiểm thử (test). Giai đoạn khám phá (exploratory) có mục đích là tìm ra một hướng tiếp cận phù hợp cho việc test. Giai đoạn đánh giá (assessment) có mục đích là đánh giá chức năng đã hoàn thành chưa. Giai đoạn xác thực (validation) có mục đích là xác nhận xem chức năng đã sẵn sàng để triển khai cho người dùng hay chưa. Khi nào story kết thúc?Để trả lời câu hỏi này, cần phải hiểu rằng bạn không thể dự đoán được cái gì là có giá trị với người dùng. Do đó, bạn cần phải có những ý tưởng mà có thể test được và kiểm chứng nó bằng những thử nghiệm. Trong trường hợp lý tưởng, story của bạn bắt đầu bằng việc quan sát người dùng và những vấn đề họ gặp phải. Sau đó bạn đưa ra 1 mô hình để đo lường được tính hữu ích của giải pháp của bạn. Ví dụ điển hình của Lean UX là tạo 1 button giả trên ứng dụng. Khi người dùng click vào button đó, họ sẽ nhận được một thông báo "comming soon". Như vậy bạn có thể đo lường xem có bao nhiêu người dùng click vào button đó. Nếu như có đủ nhiều người muốn dùng chức năng đó thì hãy bắt đầu xây dựng các user story. Sau đó khi bạn release chức năng, bạn sẽ thu được những số đo về động cơ người dùng và tính khả dụng của chức năng. Lúc đó bạn sẽ biết khi nào story sẽ kết thúc (khi mà động cơ người dùng và tính khả dụng của chức năng rơi vào phần trên của BJ Fogg’s curve) Phát triển ứng dụng với user story và story mapAi viết các user story?Vì user story là một khái niệm của Agile, nên người viết các user story tất nhiên sẽ là PO (Product Owner). Nhưng bạn hãy chú ý vài vấn đề sau:
Sử dụng story trong nội bộ team như thế nào?Chúng ta nên sử dụng story map, một công cụ giúp kết nối các story trong một epic với nhau và làm cho chúng trở nên trực quan với team phát triển. Story mapDải đầu tiên (stripe 0) là trục x của story map, mô tả các hành động của người dùng theo thời gian trong một epic story. Nó nên được mô tả bằng các hình ảnh lấy từ storyboard. Trục y mô tả thứ tự ưu tiên của các user story, như trong hình vẽ thì các user story trong dải 1(stripe 1) có độ ưu tiên thực hiện cao hơn dải 2 (stripe 2). Sử dụng story hàng ngày như thế nào?Để user story trở nên thân thiện dễ dùng, thì nó nên tuân theo quy tắc INVEST: Độc lập (Independent), Có thể trao đổi(Negotiable), Hữu ích (Valuable), Có thể ước lượng (Estimable), Nhỏ (Small), và Có thể kiểm chứng được (Testable).
|