Agipedia

Product Backlog

Product Backlog là nơi lưu trữ danh sách các tính năng mong muốn của sản phẩm. Danh sách này được sắp xếp dựa trên độ ưu tiên của từng hạng mục. Các hạng mục có độ ưu tiên cao hơn nằm ở phía trên của danh sách và sẽ được Nhóm Phát triển lựa chọn để đưa vào sản xuất sớm, các hạng mục có độ ưu tiên thấp hơn sẽ nằm ở phía cuối của danh sách và được phát triển muộn hơn.

Product Owner là người chịu trách nhiệm quản lý và bảo trì Product Backlog. Việc này bao gồm xác định nội dung (các hạng mục cần phát triển), đánh giá độ ưu tiên và sắp xếp các hạng mục, làm mịn các hạng mục, làm rõ và giải thích tất cả mọi thắc mắc liên quan đến sản phẩm.

Product Backlog có thể chứa các hạng mục thuộc các loại như:

  • Tính năng sản phẩm
  • Lỗi
  • Công việc liên quan đến kỹ thuật
  • Công việc nghiên cứu

Các hạng mục Product Backlog có thể được mô tả bằng nhiều hình thức khác nhau. Một cách làm phổ biến đó là sử dụng User Story (một User Story là một đoạn mô tả ngắn về tính năng mong muốn của sản phẩm dưới góc nhìn của người dùng, nó có dạng: Là ….. tôi muốn …. để…… Ví dụ: Là khách hàng tôi muốn xem danh sách sản phẩm để chọn mua). Nhưng đây không phải là cách làm duy nhất, mỗi nhóm có thể lựa chọn cho mình hình thức phù hợp, chẳng hạn sử dụng User Case, User Scenario, v.v.. Cho dù nhóm lựa chọn hình thức nào thì cũng cần đảm bảo tính ngắn gọn, súc tích và rõ ràng của từng hạng mục.

Một Product Backlog tốt cần thỏa mãn tiêu chí DEEP, bao gồm:

  • Detailed Appropriately (Đủ chi tiết Hợp lý): Có nghĩa là các hạng mục cần có đủ chi tiết để hiểu đúng, nhưng không có nghĩa là tất cả các hạng mục đều có một mức độ chi tiết như nhau mà chúng được giữ ở mức chi tiết phù hợp. Có nghĩa là, những hạng mục ở trên cùng (sẽ được đưa vào sản xuất sớm) cần có đầy đủ chi tiết ở mức cao nhất, những hạng mục ở phía dưới (sẽ được đưa vào sản xuất muộn hơn) thì chỉ cần giữ ở mức chi tiết cơ bản.
  • Estimated (Được ước tính): Tất cả các hạng mục đều phải được ước tính, bao gồm cả giá trị thương mại và kích thước (lượng nỗ lực cần thiết để xây dựng).
  • Emergent (Tiến hóa): Product Backlog không phải là một danh sách cố định. Nó liên tục được cập nhật và duy trì trong suốt quá trình phát triển dựa theo những hiểu biết học được.
  • Prioritized (Sắp xếp theo độ ưu tiên): Các hạng mục trong Product Backlog cần được sắp xếp theo độ ưu tiên để tối ưu hóa giá trị của công việc phát triển.

Product Backlog là duy nhất, kể cả trong trường hợp có một hay nhiều Nhóm Scrum cùng làm tham gia phát triển sản phẩm.

Product Owner

Product Owner là người chịu trách nhiệm mọi mặt về sản phẩm, kể cả trường hợp sản phẩm thương mại hay sản phẩm nội bộ. Nhiệm vụ của Product Owner là tối ưu hóa lợi nhuận trên đầu tư (ROI – Return On Investment) thông qua việc quyết định các tính năng của sản phẩm, đánh giá độ ưu tiên của từng hạng mục nhằm sắp xếp chúng theo một trật tự ưu tiên, những hạng mục có độ ưu tiên cao thì sẽ được đưa vào phát triển trước, những hạng mục có độ ưu tiên thấp hơn thì sẽ được phát triển sau.

Product Owner là người có tầm nhìn về sản phẩm, cả ngắn hạn và dài hạn. Product Owner thực hiện việc này thông qua tìm hiểu trường, khách hàng, nghiệp vụ, … Và trong thực tế thì Product Owner là người am hiểu về sản phẩm nhất, có tiếng nói cuối cùng khi đưa ra các quyết định về tính năng của sản phẩm.

Trong một số trường hợp, Product Owner cũng chính là khách hàng của sản phẩm. Điều này thường xảy ra với các ứng dụng nội bộ. Khi đó, các tính năng của sản phẩm sẽ được định hình trực tiếp bởi Product Owner. Product Owner là người am hiểu những nhu cầu cấp thiết của sản phẩm, từ đó đưa ra các yêu cầu về tính năng mà sản phẩm phải có.

Trong một số trường hợp khác, khách hàng của sản phẩm là hàng triệu người khác nhau, với những nhu cầu khác nhau. Lúc đó, vai trò của Product Owner là tương tự như vai trò của Product Manager hoặc Product Marketing Manager. Product Owner tìm hiểu và quyết định các tính năng của sản phẩm với vai trò là đại diện của khách hàng, người dùng, và các bên liên quan khác. Điểm khác biệt lớn nhất giữa Product Owner so với vai trò Product Manager truyền thống đó là Product Owner tham gia tích cực vào quá trình phát triển sản phẩm, thay vì chỉ quản lý và ủy quyền cho những người khác thực hiện các quyết định liên quan đến sản phẩm.

Product Owner không có quyền chỉ định các công việc mà Nhóm Phát triển triển khai trong một Sprint. Nhưng Product Owner có thể hoàn toàn yên tâm về cam kết của Nhóm Phát triển về mục tiêu cố định của Sprint cũng như họ luôn luôn chọn những hạng mục ở phía trên của Product Backlog, tức là những hạng mục mà Product Owner đánh giá là có độ ưu tiên cao nhất.

Nhiệm vụ của Product Owner là tối ưu hóa lợi nhuận trên vốn đầu tư, trong khi đó, khả năng sản xuất của Nhóm phát triển thì có một giới hạn nhất định, do đó Product Owner luôn phải tìm cách để sử dụng khả năng này một cách tốt nhất. Vì vậy, ngoài việc sắp xếp các hạng mục trong Product Backlog thì Product Owner cũng cần phải biết nói “KHÔNG” để loại bỏ những hạng mục không cần thiết.

Để trở thành một Product Owner tốt thì:

  • Product Owner cần được trao quyền quyết định. Product Owner phải thể hiện là “ông chủ” thực sự của sản phẩm chứ không phải là một “người trung gian” đại diện cho một hoặc một vài người khác và không trực tiếp đưa ra các quyết định cũng như không chịu trách nhiệm về các quyết định đó.
  • Product Owner phải có hiểu biết về lĩnh vực sản phẩm đang xây dựng. Hiểu biết này là cần thiết để giữ đúng hướng đi trong quá trình phát triển, đưa ra các quyết định, lựa chọn, thêm hay loại bỏ các tính năng nhằm giữ cho Nhóm phát triển luôn làm việc trên những hạng mục cần thiết nhất và sản phẩm luôn mang lại giá trị cao nhất.
  • Product Owner phải có đủ thời gian cho công việc của mình. Tốt nhất vẫn là làm việc toàn thời gian cho một sản phẩm duy nhất. Nếu Product Owner phải làm việc trên nhiều sản phẩm thì sẽ dẫn đến tình trạng mất tập trung, gây ra suy giảm đáng kể hiệu quả công việc.
  • Product Owner phải có kỹ năng giao tiếp và thương lượng tốt. Quá trình phát triển sản phẩm đòi hỏi Product Owner trao đổi và cộng tác thường xuyên với Nhóm phát triển và các bên liên quan, cùng với đó là việc phải thương lượng để đưa ra các quyết định ảnh hưởng đến sản xuất và sản phẩm. Do đó, các kỹ năng này là rất quan trọng để đảm bảo công việc của Product Owner có thể kết quả cao nhất.