Làm thế nào để ước tính điểm câu chuyện cho dự án của bạn?

Spread the love

Khi làm việc trong một dự án Agile, nhóm lập kế hoạch công việc cho các lần chạy nước rút sắp tới bằng cách tạo ra các câu chuyện. Một câu chuyện xác định một hoạt động đóng gói chức năng duy nhất với các tiêu chí mô tả và chấp nhận.

Sprints thường kéo dài từ hai đến bốn tuần. Trong thời gian đó, nhóm cần hiểu họ có thể tiếp nhận bao nhiêu nội dung trong một lần chạy nước rút để họ vẫn có thể hoàn thành nội dung đó trong thời gian chạy nước rút nhất định.

Trong một dự án không linh hoạt, bạn sẽ ước tính công việc thường tính bằng ngày công. Điều đó có nghĩa là bạn cần bao nhiêu nhân viên toàn thời gian để hoàn thành hoạt động này? Trong trường hợp đó, bạn luôn nghĩ đến ngày và số lượng người khi tạo ước tính.

Trên một dự án nhanh, mọi thứ sẽ khác. Bạn không còn đếm ngày hoặc người để tính toán ước tính cuối cùng. Trên thực tế, chúng tôi thậm chí sẽ cấm tính toán nỗ lực trong những thứ như ngày công. Thay vào đó, bạn để nhóm chuyển đổi thành một giá trị được chấp nhận chung cho câu chuyện sẽ đại diện cho ước tính tổng thể.

Bây giờ đối với giá trị chính xác là gì, điều này không thực sự quan trọng. Đúng, đại diện phổ biến nhất của ước tính câu chuyện là Điểm câu chuyện. Về cơ bản, đó là các số Fibonacci bắt đầu từ 0, 1, 2, 3, 5, 8, 13, 21, v.v. Giá trị tiếp theo là tổng của hai số trước đó. Điều này sẽ giúp phân biệt mức độ phức tạp tổng thể của câu chuyện, vì mỗi con số cao hơn tiếp theo đều cao hơn đáng kể so với con số trước đó.

Nhưng bạn không cần phải bám vào các điểm câu chuyện. Nó có thể là ước tính kích thước áo phông (XXS, XS, S, M, L, XL, XXL). Nếu bạn muốn thực sự sáng tạo, bạn có thể giới thiệu động vật ZOO và sử dụng chúng để ước tính kích thước.

Dù bằng cách nào, bây giờ điều quan trọng hơn là cảm nhận của cả nhóm về con số (hoặc con vật) nào thể hiện tốt nhất mức độ phức tạp tổng thể của câu chuyện cụ thể này. Nó chắc chắn không phải là về đại diện thời gian. Cuối cùng, nhóm nên hoàn thành từng câu chuyện được đưa vào nước rút trong nước rút đó. Vì vậy, thời gian đã được đưa ra ngay từ đầu và là một số không đổi.

Các thành phần của ước tính điểm câu chuyện

Ước tính điểm câu chuyện hoàn toàn không chỉ về mức độ phức tạp/khó khăn của một câu chuyện cụ thể. Khi ước tính một câu chuyện, nhóm nên xem xét một số khía cạnh và phản ánh chúng trong giá trị ước tính cuối cùng.

Ước tính cuối cùng sau đó là một giá trị đại diện cho sự kết hợp của tất cả các khía cạnh được tạo thành một số duy nhất. Đây là những gì một ước tính như vậy sẽ bao gồm.

#1. độ khó kỹ thuật

Giả sử chúng ta đang ước tính các câu chuyện cho một nhóm phát triển, độ khó kỹ thuật của câu chuyện sẽ là một trong những lĩnh vực đầu tiên mà nhóm sẽ tập trung vào theo mặc định.

Và đây là, bằng mọi cách, cách tiếp cận đúng đắn. Nhóm có đầy đủ các chuyên gia kỹ thuật nên biết cách tốt nhất để đánh giá một khu vực như vậy của một câu chuyện. Tại đây, nhóm có thể xem xét các cách tiếp cận hoặc gợi ý khác nhau, chẳng hạn như:

  • Làm thế nào câu chuyện này so với những câu chuyện khác đã được phân phối từ quan điểm phức tạp về kỹ thuật?
  • Nhóm sẽ phải tạo/cập nhật bao nhiêu tệp mã để hoàn thành câu chuyện?
  • Câu chuyện này sẽ tạo ra bao nhiêu thay đổi mã bổ sung cho các quy trình hệ thống xung quanh?
  • Thuật toán hoặc logic xử lý sẽ phức tạp đến mức nào để thực hiện?
  Sửa lỗi Forza Horizon 4 Ứng dụng này không thể mở

#2. Phụ thuộc bên ngoài và rủi ro

Người ta sẽ ngạc nhiên, nhưng thường thì sự thành công của các câu chuyện trong giai đoạn nước rút của nhóm phụ thuộc vào sự đóng góp từ các nhóm khác hoặc những người bên ngoài nhóm.

Những câu chuyện trong đó mọi thứ mà nhóm có thể tự hoàn thành là dễ ước tính nhất. Mọi thứ trở nên phức tạp nếu nhóm cần trợ giúp bên ngoài cho câu chuyện của họ. Đối với những người bên ngoài nhóm, hoạt động này sẽ không được ưu tiên, một cách tự nhiên. Nhóm chỉ cần dựa vào yếu tố đó và xem xét nó trong ước tính.

Yếu tố này sẽ làm tăng bao nhiêu tổng ước tính sẽ phụ thuộc chủ yếu vào kinh nghiệm trước đây của nhóm và “mức độ ngoại tác”. Thông thường, trong một số lần chạy nước rút, nhóm sẽ thiết lập một số cảm giác thống nhất tự nhiên về mức độ phụ thuộc vào những người bên ngoài này có thể làm phức tạp hóa việc hoàn thành câu chuyện thành công như thế nào.

#3. Yếu tố tái sử dụng

Lĩnh vực tiếp theo cần xem xét là nhóm có thể tái sử dụng bao nhiêu nội dung hiện có để hoàn thành câu chuyện. Rõ ràng, nếu một số bộ phận đã có sẵn theo cách này hay cách khác, thì không cần thiết phải xây dựng nó từ đầu. Thay vào đó, nhóm có thể sử dụng lại giải pháp đã tạo một lần để xây dựng giải pháp mới nhanh hơn nhiều.

Theo cách như vậy, kiến ​​thức này có thể làm giảm tổng ước tính, ngay cả khi thông thường (không có khả năng tái sử dụng này), câu chuyện sẽ phức tạp hơn dựa trên nội dung đã xác định.

#4. Hiểu biết về đội ngũ của chính mình

Một yếu tố đáng chú ý mà không ước tính dựa trên ngày công nào có thể xem xét là sự tự hiểu biết về thâm niên và năng lực của nhóm.

Khi nhóm làm việc cùng nhau và thực hiện một số lần chạy nước rút, mọi người trong nhóm sẽ hiểu nhau hơn. Họ sẽ bắt đầu hiểu ai biết điều gì và cô ấy/anh ấy giỏi việc đó như thế nào. Và một khi mọi người biết phần còn lại của nhóm, họ cùng với tư cách là một nhóm có thể xem xét điều này trong quá trình ước tính.

Nếu câu chuyện nặng về một số kỹ năng kỹ thuật cụ thể và kỹ năng đó thể hiện rất rõ ràng trong nhóm, thì việc nhận thức rõ ràng về câu chuyện sẽ không quá rắc rối. Hoặc ngược lại, nếu cả nhóm thiếu kỹ năng cần thiết, thì nhóm sẽ cần nhiều thời gian hơn đáng kể để bắt tay vào chủ đề và họ sẽ phản ánh điều đó trong ước tính.

Ước tính câu chuyện

Mỗi ước tính câu chuyện nên là một nỗ lực của nhóm. Không một giọng nói nào nên xác định trước sự phức tạp của câu chuyện. Mục tiêu cuối cùng là để nhóm thảo luận về ước tính cho đến khi tất cả các thành viên đồng ý về một giá trị duy nhất sẽ đại diện cho ước tính cuối cùng.

Nhóm có thể thực hiện ước tính trực tiếp trong cuộc thảo luận sàng lọc nước rút (một cuộc họp nơi các câu chuyện được thảo luận và làm rõ giữa nhóm) hoặc cách khác, họ có thể dành thời gian riêng để làm việc đó.

Ví dụ về quy trình ước tính

  • Chọn một công cụ ước tính để nhóm sử dụng, chẳng hạn như Planning Poker, Miro board hoặc tương tự.
  • Đặt một câu chuyện lên bảng. Để nhóm thảo luận về những suy nghĩ hoặc câu hỏi cuối cùng về câu chuyện. Hãy đảm bảo rằng cả nhóm đều nhận thức đầy đủ về câu chuyện và họ đã sẵn sàng để ước tính.
  • Bắt đầu ước tính. Mỗi thành viên trong nhóm được yêu cầu chọn một số từ thang Fibonacci.
  • Khi tất cả đã được ước tính, hãy cùng nhau xem kết quả. Bắt đầu cuộc thảo luận. Thông thường, đội sẽ tách biệt từ hai đến ba số. Hãy để những người ở cấp dưới đưa ra lý do tại sao ước tính lại thấp như vậy. Sau đó, hãy để những người ở đầu dây bên kia giải thích lý do tại sao ước tính cuối cùng lại cao như vậy. Mục tiêu là đưa ra tất cả các lập luận, cân nhắc và sự thật để cả nhóm có cùng quan điểm trong việc hiểu câu chuyện này bao gồm những gì.
  • Sau khi thảo luận xong, hãy để nhóm ước tính lại. Hầu hết thời gian, nhóm sẽ chuyển đổi thành một hoặc hai số riêng biệt. Lặp lại cuộc thảo luận một lần nữa. Tùy thuộc vào trường hợp cụ thể, nhóm sẽ đồng ý về con số cuối cùng từ hai phương án hoặc bạn sẽ quyết định về một vòng ước tính khác.
  • Ước tính chỉ kết thúc nếu tất cả các thành viên trong nhóm hoàn toàn ổn với ước tính cuối cùng. Đó phải là sự đồng thuận của cả tập thể chứ không phải của riêng một vài cá nhân. Có khả năng, mọi câu chuyện sau đó có thể được chỉ định cho bất kỳ ai trong nhóm. Đó là lý do tại sao điều quan trọng là mọi người phải đồng ý về mức độ phức tạp của câu chuyện.
  •   Khắc phục Mã lỗi Cửa hàng Google Play 403

    Cam kết Kế hoạch Sprint

    Nhóm hiện có một hồ sơ tồn đọng với các câu chuyện đã trải qua các phiên ước tính. Lý tưởng nhất là các câu chuyện đã được chỉ định (ngoài giá trị ước tính cuối cùng) cũng là một ưu tiên để nhóm biết những câu chuyện nào sẽ xuất hiện tiếp theo trong lần chạy nước rút tiếp theo.

    Đây là phiên lập kế hoạch, nơi nhóm sẽ chọn một số câu chuyện cho lần chạy nước rút tiếp theo. Quyết định chọn câu chuyện nào nên dựa trên những điều sau:

    ✅ Những câu chuyện có mức độ ưu tiên cao nhất được nhóm xem xét trước.

    ✅ Kinh nghiệm của nhóm về số lượng điểm câu chuyện mà họ có thể hoàn thành trong một lần chạy nước rút. Kiến thức này chỉ đi kèm với thời gian và kinh nghiệm của nhóm. Bạn cần vài lần chạy nước rút để tinh chỉnh và hiểu đúng về khả năng này.

    ✅ Bạn không nên chỉ xem xét tổng số điểm câu chuyện và mức độ ưu tiên. Một cân nhắc khác là cách các kỹ năng trong nhóm sẽ trải rộng trên các câu chuyện được chọn. Ví dụ: nếu nhóm chỉ có hai nhà phát triển giao diện người dùng, họ có thể không chọn những câu chuyện chỉ bao gồm phát triển giao diện người dùng. Điều đó sẽ dẫn đến việc tận dụng quá mức hai anh chàng trong khi những người còn lại trong đội không được nhiều. Vì vậy, kiến ​​​​thức của nhóm đi đôi với hiệu quả của việc tạo nội dung chạy nước rút.

    Yếu tố vận tốc

    Trên hết là vận tốc của đội (cho chặng nước rút sắp tới). Con số này không liên quan đến tổng số điểm câu chuyện theo bất kỳ cách nào. Tuy nhiên, nó cho biết nhóm sẽ sẵn sàng làm việc bao nhiêu cho Sprint sắp tới.

    Để có thể lên kế hoạch chính xác nội dung cho một lần chạy nước rút, chúng tôi đặt cả hai khía cạnh lại với nhau:

  • Vận tốc nhóm – Được đo bằng ngày. Một thành viên của nhóm có mặt trong một ngày bằng một tốc độ của nhóm. Ví dụ: một nhóm gồm 10 người hoàn toàn sẵn sàng cho một lần chạy nước rút kéo dài 2 tuần tương đương với sức chứa của nhóm là 100 người.
  • Số lượng điểm câu chuyện thông thường đã hoàn thành trong một lần chạy nước rút – Được đo bằng điểm câu chuyện. Con số này đến từ kinh nghiệm trước đó và có liên quan mật thiết đến tốc độ của đội.
  • Phải mất thời gian và thực hành để tìm ra điểm ngọt ngào.

    Lợi ích và sai lầm phổ biến

    Thật đáng ngạc nhiên khi các nhóm sẵn sàng phức tạp hóa quá trình cho chính họ trên con đường chuyển đổi thành một nhóm nhanh nhẹn. Có vẻ như bạn cần phải “hiểu được nó” trước khi có thể bắt đầu làm việc ở chế độ đó.

      Cách cài đặt CuteFishOS

    Thật không may, bước đầu tiên này cũng là bước khó khăn nhất. Trong một số trường hợp, thậm chí phải mất nhiều năm, đặc biệt là trong môi trường doanh nghiệp bảo thủ nghiêm ngặt, nơi mà thời gian bị mắc kẹt trong thời gian.

    Dù sao đi nữa, đây là điều sẽ xảy ra khi nhóm “hiểu được”:

    • Bạn không còn cần phải tính toán số người hoặc số ngày để biết khi nào có thể hoàn thành một việc gì đó.
    • Nhóm sẽ học cách tạo ra những câu chuyện chỉ phức tạp đến mức chúng phù hợp với một cuộc chạy nước rút. Nếu một câu chuyện phức tạp hơn, nó sẽ tự động được chia thành nhiều câu chuyện hơn.
    • Nhóm có ước tính tốt về từng phần công việc và khi họ lên kế hoạch cho một lần chạy nước rút, bạn sẽ biết chính xác khi nào đến hạn.
    • Nó sẽ làm tăng độ tin cậy và khả năng dự đoán của nhóm.
    • Tất cả mọi người trong nhóm sẽ “có cùng tần số”. Họ sẽ nhìn vào một câu chuyện và sẽ hiểu những điều tương tự. Có thể sau một thời gian, họ thậm chí không buồn ước tính. Họ nhìn thấy con số trong đầu và vì tất cả họ đều nhìn thấy cùng một con số nên họ có thể cam kết thực hiện các câu chuyện trong một lần chạy nước rút ngay cả khi không có ước tính rõ ràng này.

    Và đây là điều thường xảy ra nếu nhóm vẫn không thể hiểu được quy trình hoặc cách thức làm việc:

    • Bằng cách nào đó, họ vẫn tuân theo các ước tính thời trang cũ. Họ chuyển đổi mọi thứ thành ngày hoặc những người liên quan. Điểm câu chuyện hoặc số Fibonacci có nghĩa là số ngày, trực tiếp hoặc gián tiếp, thông qua các phép biến đổi khác nhau.
    • Ban lãnh đạo so sánh các nhóm dựa trên số điểm câu chuyện được giao trong mỗi lần chạy nước rút. Điều này là nhiều sai như nó có thể nhận được. Một sự thật quan trọng sau đó không được hiểu: Mỗi đội ước tính các điểm câu chuyện khác nhau. Hoàn toàn không có lý do gì để cố gắng đồng bộ hóa hai đội để đánh giá câu chuyện của họ theo “cùng một cách”.
      • Trong khi điểm câu chuyện của một đội có nghĩa là vẽ một vòng tròn, thì đối với một đội khác, điều đó có thể có nghĩa là vẽ một ngôi nhà có mái bằng, bốn cửa sổ và hai cửa ra vào. Và nó hoàn toàn ổn.
    • Đôi khi các đội có xu hướng ước tính hầu hết mọi thứ từ hai đến bốn con số khác nhau. Có thể vì sợ tin có số 123 sẽ bị người khác cho là có liên quan gì đến số ngày. Nhưng thực tế là thang Fibonacci có vô số con số. Chúng ta không cần giới hạn bản thân chỉ với ước tính 3, 5 hoặc 8. Chúng ta chắc chắn có thể (và có thể chúng ta tạo ra những câu chuyện đã có sẵn với mục đích trở nên phức tạp như vậy, trong trường hợp đó thì điều này là ổn), nhưng chúng ta chắc chắn là không cần.
    • Việc ước tính được thúc đẩy bởi những người cấp cao, những người sẽ xác định trước kỳ vọng của cả nhóm. Chúng ta không bao giờ nên cho phép một thành viên trong nhóm ảnh hưởng đến ước tính. Mọi người đều có quyền bình đẳng bày tỏ quan điểm của mình và được lắng nghe.

    Từ cuối cùng

    Việc chuyển sang ước tính linh hoạt từ các phương pháp tiếp cận truyền thống hơn không phải lúc nào cũng dễ dàng và cần phải phù hợp—cho cả nhóm cũng như cấp lãnh đạo ở trên. Để làm cho nó hoạt động, cả hai bên phải hiểu quy trình. Nếu một trong số họ không hiểu, giai đoạn chuyển tiếp là một con đường khó khăn với đầy những kỳ vọng trái ngược nhau.

    Nhưng một khi tất cả biến đổi, một số điều kỳ diệu sẽ bắt đầu xảy ra. Các nhóm sẽ có thể ước tính và lập kế hoạch công việc tốt hơn, đồng thời ban lãnh đạo sẽ có nhiều bản phát hành và lộ trình dễ dự đoán hơn để dựa vào.

    Tiếp theo, hãy kiểm tra các quy trình không lành mạnh có thể làm hỏng nước rút của bạn.

    x