Mục đích của kế hoạch poker trong nước rút là gì?


15

Nhà phân tích kinh doanh và lãnh đạo dự án của chúng tôi cho chúng tôi biết yêu cầu của khách hàng là Câu chuyện. Mỗi kế hoạch Sprint, chúng tôi (nhà phát triển) được yêu cầu chơi bài lập kế hoạch.

Họ yêu cầu tất cả chúng tôi xem xét "Sự phức tạp" thay vì "Nỗ lực". Chúng tôi thực sự bối rối và chúng tôi đang lãng phí thời gian vào các cuộc họp của chúng tôi. Một nhà phát triển đưa ra một câu hỏi, 'Chúng ta thực sự muốn xem xét điều gì? Có phải về thay đổi mã / DDL mà chúng ta phải thực hiện trong yêu cầu này (ước tính thời gian) hay là về việc chúng ta có hiểu được yêu cầu hay không? '

Nhưng họ (nhà phân tích kinh doanh & lãnh đạo dự án) thực sự có ý nghĩa gì khi 'hiểu yêu cầu' và 'nâng cao thẻ'?

Thêm vào đó, chúng tôi có các cuộc họp cắt lát cho các nhóm scrum riêng lẻ, trong đó mỗi nhà phát triển đưa ra ước tính thời gian cho nhiệm vụ nhất định cho từng nhóm scrum. Vậy, họ thực sự đang nói về điều gì trong Planning Poker?

Bất cứ ai có thể giải thích điều này bằng cách sử dụng một ví dụ? Cố gắng phân biệt những gì họ thực sự nói về khi họ nói 'Sự phức tạp' & 'Nỗ lực'.


3
Tôi chỉ muốn nói thêm rằng có những phản biện và một số người thông minh coi việc lập kế hoạch chơi bài là lãng phí thời gian - vì vậy hãy trả lời bạn nhận được bằng một hạt muối.
Benjamin Gruenbaum

Điều này nghe có vẻ như scrum-of-scrums. Các đội scrum lớn đến mức nào và có phải tất cả các đội scrum đều tham gia, trong toàn bộ kế hoạch của họ không? Có hướng xác định hợp lý từ Chủ sở hữu sản phẩm trước các phiên này không? Nói chung, các nhóm phát triển bao gồm các vai trò ngang hàng, nhưng chắc chắn sẽ có một người cao cấp hơn có khả năng cung cấp các ước tính phức tạp đủ đầy đủ trong các sự kiện phối hợp này; chẳng hạn, một vai trò có thể so sánh với Trình quản lý dự án / chương trình kỹ thuật. Vì bạn không ước tính thời lượng nhiệm vụ, mọi người có thể không cần phải tham gia.
JoeBrockhaus

Trong các nhóm / dự án nhỏ hơn, lập kế hoạch chơi bài xì phé có lẽ ít được xác định là một buổi lễ riêng biệt, vì bản thân sản phẩm không đủ phức tạp để đảm bảo thêm chi phí cho việc ước tính các câu chuyện / sử thi cấp độ tương đối không rõ, không chi tiết hoặc cao cấp, bên ngoài quy hoạch nước rút tiêu chuẩn.
JoeBrockhaus

Một điều khác cần xem xét là nếu bạn có một câu chuyện / tăng đột biến để đóng gói một loạt dữ liệu thô (giả sử là một bảng excel). Độ phức tạp của nó rất thấp, (sao chép / dán), nhưng sẽ mất một khoảng thời gian đáng kể.
Zymus

1
Lập kế hoạch chơi bài là để có được ước tính từ mọi người mà không cần nghe người khác ước tính trước.
Thorbjørn Ravn Andersen

Câu trả lời:


20

Hãy xem xét quan điểm của Giám đốc dự án

Bằng cách yêu cầu sự phức tạp, họ muốn một số mà họ có thể so sánh với lần chạy nước rút tiếp theo của bạn để tìm vận tốc của bạn như một đội. Họ cũng có thể đang cố gắng sử dụng nó để cộng kết quả của bạn với các ước tính từ các đội khác để đưa ra ước tính trên tất cả các câu chuyện sẽ được thực hiện khi nào.

Người quản lý dự án đang tìm kiếm một ước tính khi nào dự án sẽ kết thúc, hoặc nếu chúng linh hoạt ở các mặt khác của tam giác chi phí thời gian, chức năng nào có thể được kéo để phù hợp với thời gian còn lại. Điều này không phải là không có lý. Quyết định kinh doanh sẽ cần phải được đưa ra dựa trên ước tính này. Vấn đề là rất khó để ước tính điều này cho phần mềm. Lập kế hoạch chơi bài là một trong những cách giúp giải quyết vấn đề này. Thay vì xem nó chỉ đơn giản là cộng tổng số điểm câu chuyện, thay vào đó hãy nghĩ về nó như một chức năng ước tính phức tạp hơn cũng như bạn có thể, thực hiện công việc, đo lường thời gian thực hiện, lặp đi lặp lại, và sau đó ngoại suy.

Cuộc thảo luận quan trọng hơn một con số

Tôi thấy phần quan trọng nhất của các cuộc họp chỉ câu chuyện là các cuộc thảo luận diễn ra. Nếu bất cứ ai trong nhóm không tự tin đề xuất một con số, thì có lẽ họ không hiểu hết câu chuyện và cần phải thảo luận thêm. Từ Tuyên ngôn Agile "Hợp tác của khách hàng trong đàm phán hợp đồng". Thay vì chỉ xác định một hợp đồng được viết dưới dạng câu chuyện của người dùng và nói rằng nhóm thất bại nếu họ không làm chính xác những gì bạn muốn, tốt hơn hết là nói về những gì khách hàng thực sự muốn cho đến khi bạn hiểu.

Sự phức tạp Vs Nỗ lực

Để giải quyết câu hỏi cụ thể của bạn về sự phức tạp và nỗ lực, mọi người dường như có một ý kiến ​​khác nhau về vấn đề này. Dê núi , những người tạo ra các lá bài xì phé có hình con dê trên lưng và chủ sở hữu Mike Cohn là người lớn trong thế giới Agile / Scrum, nói rằng đó phải là nỗ lực và không phức tạp.

Thông thường không được coi là thước đo thời gian (xem ví dụ bên dưới để biết ví dụ ngược) vì mọi người rất tệ trong việc ước tính thời gian, với các yếu tố khác ảnh hưởng đến số lượng họ đưa ra: ví dụ: áp lực để giữ số thấp để bạn có thể phù hợp với nhiều tính năng hơn trong, áp lực để đưa ra một số lượng cao hơn để cung cấp cho mình một số phòng nếu bạn gặp phải một vấn đề. Xây dựng phần mềm là khó. Khi bạn xây dựng ngôi nhà thứ 100 của mình, bạn có thể ước tính sẽ mất bao lâu vì bạn đã xây dựng 99 ngôi nhà trước đó. Nếu phần mềm bạn đang xây dựng giống như các chương trình trước đây bạn đã xây dựng thì bạn có thể sao chép và dán, bất kỳ giá trị nào trong khi dự án phần mềm khác nhau và do đó sẽ có những vấn đề mà bạn không thấy trước đó.

Như với ước tính thời gian có chứa áp lực ẩn, do đó, một biện pháp nỗ lực cũng có vấn đề. Nếu một nhà phát triển cơ sở ước tính độ phức tạp cao, họ có thể cảm thấy họ đang bỏ ngỏ để tấn công vì không đủ tốt từ những người khác, những người sẽ cho nó ước tính thấp hơn. Điều này không chỉ gây bất lợi cho ước tính của bạn mà còn cho những người trong nhóm.

Các số xì phé lập kế hoạch không phải là "số ngày" hoặc một số thước đo thời gian khác, chúng là thước đo tương đối để có thể so sánh hai câu chuyện của người dùng. Điều đầu tiên bạn cần làm trong một nhóm mới là thiết lập đường cơ sở. Chọn một câu chuyện người dùng ở giữa phạm vi phức tạp và đồng ý là một nhóm một số ở giữa phạm vi mà bạn muốn gán nó. Bây giờ tất cả các câu chuyện người dùng khác có thể được đánh số liên quan đến câu chuyện này. Tôi đã tìm thấy điều này làm cho nó dễ dàng hơn nhiều.

Những lý do bạn không thể đưa ra ước tính

Khi các nhà quản lý dự án hỏi bạn khi nào một dự án sẽ được thực hiện, họ cần hiểu sự phức tạp của câu hỏi họ đang hỏi. Các lập trình viên không phải là công nhân nhà máy, nơi năng suất của họ có thể được đo bằng cách nhân tốc độ họ gõ với thời gian họ làm việc. Họ đang tìm ra câu trả lời cho các vấn đề và đó là khó khăn. Bằng cách chơi lập kế hoạch chơi bài, trước tiên bạn xác định ai trong đội cảm thấy họ không thể trả lời câu hỏi nên gán số nào và sau đó bạn tìm hiểu lý do tại sao họ không thể trả lời câu hỏi đó. Tôi nghĩ có ít nhất bốn lý do:

  1. Câu chuyện quá lớn. Chia nó thành các câu chuyện người dùng nhỏ hơn, cụ thể hơn. Hãy nhớ rằng mỗi câu chuyện của người dùng sẽ được cung cấp một phần giá trị cho người dùng; đầu vào - quá trình - đầu ra = giá trị.
  2. Họ không hiểu rõ về miền vấn đề đủ để có thể nói họ sẽ mất bao lâu hoặc thậm chí hỏi tất cả các câu hỏi đúng cách. Nói chuyện với những người biết nhiều hơn về miền / chương trình của các bên liên quan, loại ứng dụng đó, bất cứ điều gì bạn chưa từng thấy trước đây. Nếu điều đó là không thể hoặc không thể đưa bạn đến đó thì bạn có thể sử dụng một thiết kế tăng đột biến. Đi và nguyên mẫu một giải pháp nhưng chỉ trong một khoảng thời gian giới hạnđược chỉ định . Xác định thời gian tạo mẫu sẽ diễn ra trong bao lâu, không quá lâu và sau đó gặp lại để chia sẻ hiểu biết mới của bạn.
  3. Các bên liên quan của bạn không đủ cụ thể. "Xây dựng cho tôi một đám mây" không phải là một câu chuyện người dùng chấp nhận được. "Xây dựng cho tôi một hệ thống để tôi có thể quay các máy ảo theo yêu cầu" sẽ tốt hơn vì nó bị phá vỡ hơn nữa nhưng vẫn chưa ở mức bạn có thể đưa ra ước tính chính xác về việc bạn sẽ mất bao lâu vì sẽ có một trăm ẩn các giả định trong tuyên bố đó rằng các bên liên quan của bạn có rằng bạn sẽ không tìm ra cho đến khi bạn chỉ cho họ một cái gì đó.
  4. Cuối cùng, ngay cả khi bạn có thể đưa ra ước tính, nó có thể sẽ sai ngay lần đầu tiên. Ước tính là một vấn đề khó khăn và cách tốt nhất tôi biết để giải quyết các vấn đề khó khăn là sử dụng phương pháp khoa học. Thu thập dữ liệu về số lượng mà mỗi thành viên trong nhóm ước tính, sau đó thu thập dữ liệu về thời gian họ thực sự mất bao lâu, hoặc mức độ "phức tạp" của nó, mặc dù điều đó khó hơn, và sau đó so sánh chúng theo thời gian. Cuối cùng, bạn sẽ có cảm giác ai đánh giá quá cao và ai đánh giá thấp và sau đó bạn nên chia sẻ điều này với nhóm. Mọi người có thể giúp nhau trở nên tốt hơn trong việc ước tính. Những con số này cũng có thể được đưa trở lại vào công cụ theo dõi của bạn để giúp dự đoán tốt hơn những câu chuyện sẽ kéo dài bao lâu.

Phần kết luận

Tôi tin rằng vấn đề thực sự nên là cuộc thảo luận, nhưng nếu bạn thực sự cần đưa cho ai đó một số thì hãy cố gắng làm cho nó thành một nhóm độc lập với thành viên trong nhóm làm việc với nó và theo thứ tự các câu chuyện được thực hiện. Vấn đề là để có được một bản ghi lại được ưu tiên, vì vậy bạn đang xử lý chúng theo đúng thứ tự và có kích thước, để Trình quản lý dự án có thể thấy khoảng bao nhiêu bạn có thể phù hợp trước thời hạn. Bạn sẽ có thể dừng lại ở cuối bất kỳ lần lặp và giao hàng nào với tất cả các tính năng đã hoàn thành đã được bắt đầu.

Cảnh báo

Bạn có thể ước tính thời gian để hoàn thành các nhiệm vụ trong nhóm của mình bao nhiêu tùy thích miễn là bạn giữ các con số cho chính mình. Khi bạn cho phép bất kỳ số nào thoát khỏi nhóm và bị người khác nhìn thấy, họ sẽ làm những việc với số đó mà bạn không có ý định. Họ sẽ cố gắng sử dụng nó như một số ngày để hoàn thành các nhiệm vụ. Họ sẽ cố gắng đưa bạn đến mức độ phức tạp tương đối và hỏi tại sao bạn mất nhiều thời gian hơn để hoàn thành một câu chuyện người dùng hơn một câu chuyện khác có cùng số điểm. Họ sẽ cộng các số của bạn lại với nhau và so sánh chúng với các số của nhóm khác và hỏi bạn tại sao nhóm kia lại 'làm nhiều việc hơn' khi họ hoàn thành nhiều điểm câu chuyện hơn trong một khoảng thời gian. Bạn có thể'

Qua một bên

Tập hợp các con số lập kế hoạch được phân phối bình thường sao cho khoảng cách giữa các số tiếp tục lớn hơn. Tôi tin rằng điều này có nghĩa là không khuyến khích mọi người tranh luận về việc câu chuyện của người dùng là 16 hay 17, nếu nó lớn hơn 13 thì hãy biến nó thành 20.

Thí dụ

Tôi biết ít nhất một đội chỉ sử dụng các số 1, 2, 3 và 4 để lập kế hoạch chơi bài. Họ, trái với quy ước và trái với các cuộc thảo luận ở trên, định nghĩa đây là những ngày lập trình (thực ra là ghép ngày lập trình, đó là mất bao nhiêu ngày để hai lập trình viên làm việc cùng một máy để hoàn thành câu chuyện của người dùng). Nếu nhóm nghĩ rằng sẽ mất hơn 4 ngày để hoàn thành câu chuyện của người dùng thì câu chuyện đó không được chỉ ra và chủ sở hữu sản phẩm được yêu cầu làm việc với nhóm để phân tích câu chuyện sâu hơn hoặc chỉ định chính xác hơn để có thể được đưa vào trong phạm vi này cho một cuộc họp lập kế hoạch trong tương lai. Nhưng đây là sự nhanh nhẹn tiên tiến và có lẽ chỉ nên được sử dụng bởi những người đã có kinh nghiệm sử dụng các kỹ thuật khác.


9

Tôi nghĩ rằng câu trả lời của Frank và Encaita bao gồm rất nhiều nhưng có một số điều cần xem xét thêm:

Tại sao sử dụng điểm câu chuyện

Mục đích của việc ước tính với các điểm câu chuyện là đưa ra sự phức tạp tương đối của việc phát triển các tính năng cho ứng dụng của bạn. Một cách đơn giản để suy nghĩ về nó là lấy một câu chuyện bạn có trong lần chạy nước rút sắp tới, ví dụ như thay đổi url. Bạn biết điều này đơn giản về độ phức tạp và đã xác định rõ các tiêu chí chấp nhận để cả nhóm đồng ý rằng ngay cả khi thử nghiệm nó là 1 (sử dụng thang đo Fibo).

Câu chuyện tiếp theo được ước tính là tổng hợp một tập hợp dữ liệu người dùng và trực quan hóa nó ở mặt trước. Bây giờ là một nhà phát triển, bạn biết ngay điều này phức tạp hơn nhiều so với việc thay đổi một url. Bạn thảo luận về câu chuyện và các tiêu chí chấp nhận và bạn có rất nhiều câu hỏi và có thể thấy một số giải pháp tiềm năng để làm điều này. Các nhà phát triển và QA khác cũng đồng ý rằng nó rất phức tạp. Vì vậy, tất cả các bạn đồng ý rằng đó là một câu chuyện 34 điểm. Điều đáng chú ý là thang đo Fibo cũng cho phép bạn chỉ ra mức độ tin cậy của bạn đối với thực tế - khoảng cách giữa các con số càng lớn cho thấy mức độ tin cậy của bạn trong ước tính càng ít

Tại thời điểm này, chủ Scrum của bạn nên nhảy và nói rằng đây là một câu chuyện quá lớn và cần được chia thành các câu chuyện nhỏ ít phức tạp hơn. Bạn có thể tiếp cận điều này bằng cách thực hiện cái được gọi là SPIKES - đây chỉ là một thời gian dành để điều tra một cái gì đó. Vì vậy, với ví dụ này, bạn và các nhà phát triển khác đồng ý rằng bạn muốn 4 giờ để thảo luận và điều tra các giải pháp kỹ thuật có thể.

Để cắt ngắn một câu chuyện dài, bạn chia câu chuyện lớn đó thành bốn câu chuyện khác gồm 5, 8, 8 và 13 điểm. Không nhớ rằng các ước tính này đều liên quan đến độ phức tạp tương đối - chúng không phải thêm vào ước tính ban đầu cộng với bạn có thêm thông tin ngay bây giờ để ước tính chính xác hơn.

Sau đó, bạn đồng ý với tư cách là một nhóm cho lần chạy nước rút này, bạn sẽ nhắm đến việc hoàn thành câu chuyện 13 điểm, một câu chuyện 8 điểm cộng với thay đổi url 1 điểm mà bạn đã xác định. Vậy tổng cộng có 22 điểm. Lần chạy nước rút tiếp theo bạn nhận được 27 điểm, lần chạy nước rút sau bạn có được 18 điểm. Sau 3 lần chạy nước rút, bạn có thể bắt đầu có được sự tự tin về vận tốc của mình (vận tốc là khối lượng công việc mà nhóm của bạn có thể hoàn thành trong một lần chạy nước rút). Để có được vận tốc lấy trung bình của các lần chạy nước rút trước đó. Vì vậy, trong ví dụ này, trung bình là (22 + 27 + 18) / 3 = 22.3, làm tròn nó đến gần nhất trên thang Fibo là 21.

Bây giờ cho lần chạy nước rút tiếp theo chỉ nhằm mục đích đạt được 21 điểm.

Đừng gác máy khi ước tính điểm câu chuyện của bạn chính xác - đó không phải là một khoa học chính xác. Bạn biết một thay đổi url ít phức tạp hơn nhiều so với tổng hợp dữ liệu vì vậy chỉ cần chấm điểm cho phù hợp.

Cộng với việc thảo luận về những điều này như là một đội là tốt. Nhìn lại các ước tính của bạn trong quá trình xem xét nước rút và thảo luận xem bạn có hài lòng với chúng hay không và sau đó đưa thông tin này vào phiên lập kế hoạch nước rút tiếp theo.

Ước tính toàn đội

Toàn đội phải thống nhất một ước tính duy nhất cho mỗi câu chuyện. Một tính năng không được thực hiện cho đến khi nó sẵn sàng sản xuất. Chỉ cần nhận được mã được viết là không có nghĩa là được thực hiện. Theo kinh nghiệm của tôi, các nhóm Scrum đã hiệu quả hơn rất nhiều khi làm việc theo nhóm. Lấy một ví dụ về đội ngũ tôi đang làm việc với ngay bây giờ. Khi tôi tham gia, họ đã thực hiện tất cả các cuộc họp chạy nước rút và lập kế hoạch chơi bài nhưng trong quá trình chạy nước rút, quy trình là 1. BA / Chủ sở hữu sản phẩm xác định các yêu cầu là câu chuyện với tiêu chí chấp nhận và kiểm tra chấp nhận 2. Họ trao các yêu cầu này cho nhà phát triển sau đó viết mã 3. Nhà phát triển có mã được sáp nhập vào nhánh phát triển để QA kiểm tra 4. Kiểm tra QA sau đó họ bắt đầu đặt câu hỏi và kiểm tra không thành công để nó quay trở lại phát triển.

Cái gì còn thiếu ở đây? Không có đủ thảo luận trước và mỗi thành viên trong nhóm chỉ nhìn thấy nhiệm vụ của riêng họ. Bây giờ BA / PO, nhà phát triển và QA gặp nhau trước khi viết bất kỳ mã nào để thảo luận chi tiết các yêu cầu và đặt câu hỏi trước, sau đó tiếp tục thảo luận trong suốt giai đoạn nước rút. Điều này là hiệu quả hơn nhiều và dẫn đến các giải pháp chất lượng tốt hơn.

Lập kế hoạch poker giúp quá trình này bởi vì nó buộc nhóm phải thảo luận về tính năng và đồng ý, với tư cách là một nhóm, việc phân phối tính năng đó phức tạp như thế nào. Trong phát triển phần mềm truyền thống, Project Manager chịu trách nhiệm phân phối dự án nhưng bất kỳ ai có kinh nghiệm về cách tiếp cận đó đều biết rằng nó không hoạt động bởi vì thường thì mọi người không chịu trách nhiệm trong việc phân phối ứng dụng. Trong Agile, bạn không cần người quản lý dự án vì nhóm chịu trách nhiệm toàn bộ việc phân phối ứng dụng.

Dự toán thời gian

Quan điểm của tôi đã làm việc với các nhóm ước tính thời gian cho các nhiệm vụ và các nhóm chỉ thực hiện các điểm bắt đầu câu chuyện là KHÔNG ĐƯỢC THỰC HIỆN THỜI GIAN! Họ thực sự chỉ là một sự lãng phí thời gian. Chúng không chính xác như các điểm câu chuyện vì chúng dành riêng cho các cá nhân không phải là nhóm và mỗi cá nhân sẽ có một ý tưởng khác nhau về ước tính thời gian (đưa vào ngọn lửa).

Điểm câu chuyện chấp nhận rằng mọi thứ tức là yêu cầu, thay đổi mọi lúc nên bạn thực sự cần một chỉ số về những gì nhóm có thể hoàn thành trong một lần chạy nước rút.

Khi bạn đã hiểu về vận tốc, bạn có thể đo thời gian giao hàng của mình vì bạn biết những gì bạn có thể hoàn thành trong mỗi lần chạy nước rút, ví dụ cứ sau hai tuần bạn biết những tính năng nào có thể được cung cấp. Chủ sở hữu sản phẩm và chủ sở hữu sản phẩm của bạn sẽ có các phiên ước tính để xem trước các lần chạy nước rút trong tương lai sau đó bạn có thể nhận được một chỉ số về số lượng công việc bạn sẽ hoàn thành trong vài tháng tới. Điều này cho phép chủ sở hữu sản phẩm đưa ra quyết định ưu tiên về những tính năng cần có trong ứng dụng cuối cùng.

Tôi đã có các nhà phát triển yêu cầu chúng tôi ước tính thời gian cho các nhiệm vụ để lập kế hoạch nhưng tôi thực sự không đồng ý với cách tiếp cận này (thực tế tôi không đồng ý với cách tiếp cận này) bởi vì nó không chính xác, ví dụ như điều này sẽ khiến tôi mất 4 giờ thực sự có ý nghĩa gì: một nhà phát triển có thể chỉ bao gồm thời gian cho nhiệm vụ, người khác có thể thêm thời gian để pha trà!

Ước tính thời gian luôn được trao cho người khác cho mục đích báo cáo và nó cũng nhấn mạnh đến các yếu tố riêng lẻ trong việc cung cấp một tính năng so với toàn bộ nỗ lực của nhóm.

Ước tính không phải là vấn đề lớn nhất

Bên cạnh đó, việc tìm ra ước tính không phải là vấn đề lớn nhất mà tôi nghĩ các đội phải giải quyết. Điều quan trọng nhất là làm việc cùng nhau như một đội để hoàn thành công việc trong suốt giai đoạn nước rút, để bạn không bàn giao mọi thứ để thử nghiệm vào ngày cuối cùng. Bạn muốn thấy một loạt các tính năng ổn định trong suốt 2 tuần nước rút. Đội ngũ năng động tôi đã giải thích ở trên là một phần lớn của điều này. Ước tính điểm câu chuyện sẽ giúp bạn lập kế hoạch cho việc này vì bạn sẽ thấy những câu chuyện lớn cần chia thành những câu chuyện nhỏ hơn có thể được đưa vào thử nghiệm thường xuyên.


Nghe có vẻ phức tạp là một phép đo tương đối sẽ đưa ra ý tưởng chúng ta nên bỏ ra bao nhiêu nỗ lực. Phải không?
Jude Niroshan

Đó là một biện pháp tương đối, và vâng, nó chỉ đưa ra một ý tưởng hoặc chỉ dẫn sơ bộ. Sự phức tạp không hoàn toàn giống như nỗ lực nhưng chúng có thể được đánh đồng. Một cái gì đó có thể rất phức tạp hoặc rất đơn giản. Điều đó có nghĩa là nó rất nhiều nỗ lực hoặc rất ít. Hai khái niệm chắc chắn có thể được đánh đồng nhưng chúng hơi khác nhau.
br3w5

Đừng lo lắng về điều đó quá nhiều chỉ cần đưa ra ước tính mà bạn cho là phù hợp nhất. Bạn sẽ cần phải giải thích suy nghĩ của mình nhưng một khi bạn đã thực hiện nó một vài lần với nhóm, bạn sẽ hiểu rõ. Không có kỹ thuật ước tính nào là hoàn hảo nhưng tôi nghĩ ước tính điểm câu chuyện tốt hơn ước tính thời gian.
br3w5

Tôi nghĩ rằng câu trả lời này minh họa sự kìm kẹp của tôi với các điểm câu chuyện: chúng kết hợp sự phức tạp với thời gian. Thời gian và sự phức tạp thường tương quan, nhưng theo tôi không có nguyên nhân ở đó. Tôi đã làm việc với một số yêu cầu cực kỳ phức tạp mất một giờ, và tôi đã làm việc với những yêu cầu tẻ nhạt trong một tuần nhưng đơn giản. Sprint poker không phân biệt. Tôi có ví dụ 8 ngày trong một lần chạy nước rút. Tôi cần biết một yêu cầu mất bao nhiêu thời gian để biết liệu tôi có thể nhồi nhét nó vào giai đoạn nước rút đó hay không. Biết sự phức tạp là tốt, nhưng điều đó không cho tôi biết những gì tôi cần biết.

Nó cho bạn biết rằng một khi bạn đã nhận ra mức độ phức tạp của bạn có thể phù hợp trong 2 tuần - điều này chắc chắn có thể thay đổi nhưng nếu bạn cần một chỉ số và tôi nghĩ nó chính xác hơn so với ước tính thời gian
br3w5

8

Wikipedia giải thích lập kế hoạch poker khá tốt. Hãy để tôi tóm tắt lại một số trạng thái ở đó tập trung vào trường hợp của bạn:

Tại sao phải lập kế hoạch chơi bài?

Trước hết, tất cả bạn nên ở trên tàu về lý do tại sao bạn đang thực hiện một kế hoạch chơi bài thay vì ước tính "bình thường". Lý do thực sự khá đơn giản: tất cả chúng ta đều mất thời gian lớn khi ước tính thời gian cho một nhiệm vụ. Khá nhiều nghiên cứu đã tiết lộ, bộ não con người chỉ đơn giản là không có khả năng ước tính nhiệm vụ mà mất bất kỳ khoảng thời gian hợp lý nào. (Cũng là một lý do, tại sao vé vượt quá 2-3 ngày trong ước tính của họ lại khá vô giá trị về mặt ước tính của họ.)

Tại sao phức tạp hơn là nỗ lực?

Điều này đi đôi với việc ở trên. Nỗ lực thường có nghĩa là thời gian , và chúng ta mút vào đó. Sự phức tạp thay vì khó định lượng một cách khách quan, đó là một điều tốt trong trường hợp này. Đó là ruột của bạn cho bạn biết câu chuyện này sẽ phức tạp. Đối với người khác, nó có thể ít phức tạp hơn. Nhưng bạn không cần định lượng chính xác mức độ phức tạp của nó. Bạn không cần phải có được số lượng Xphức tạp này - trái ngược với nỗ lực đúng lúc, nơi cuối cùng bạn phải đồng ý rằng phải mất nhiều Xngày hoặc một số như vậy.

Tại sao phải giấu thẻ?

Các thẻ với sự thân mật phức tạp của bạn được chơi ẩn và sau đó tiết lộ tất cả cùng một lúc. Điều này được thực hiện để đảm bảo bạn không bị ảnh hưởng bởi ý kiến ​​của người khác trước khi đưa ra ước tính ban đầu của riêng bạn. Nếu mọi người đều có cùng cảm giác về sự phức tạp, thì bạn đã hoàn thành. Nếu có những con số cực kỳ khác nhau xảy ra, bạn sẽ biết có điều gì đó sẽ được thảo luận ở đó. Bằng cách này, bạn có thể xử lý rất nhanh những câu chuyện mà mọi người đều có cùng ý tưởng về sự phức tạp / nỗ lực cần có.

Tại sao số Fibonacci?

Các số trên thẻ của bạn thường là số Fibonacci hoặc một số loại chuỗi khác có nhiều khoảng trống trong các số. Điều này là để buộc bạn phải hoàn toàn tin tưởng vào cảm giác ruột của mình. Nếu bạn phải chọn từ 8 đến 13, thì đó là một tuyên bố nhiều hơn so với việc đi 9 hoặc 10. Ngoài ra, như đã đề cập ở trên, sự khác biệt lớn là vấn đề tiềm ẩn, do đó, mở rộng các khoảng trống, bạn tăng cơ hội phát hiện những vấn đề này tốt hơn.

Tại sao điều này làm việc cả?

Thật thú vị, vài lần đầu tiên bạn thực hiện một kế hoạch chơi bài, nó sẽ không hoạt động. Nó đơn giản như vậy. "3" hoặc "5" thậm chí có nghĩa là gì? Không có định nghĩa cho mỗi số có nghĩa là gì (về mục đích!) Và tùy thuộc vào toàn bộ nhóm của bạn để khám phá ý nghĩa thực sự đằng sau mỗi số này. Chỉ sau khi bạn đã chấp nhận ước tính câu chuyện của mình theo những con số này - và sau khi bạn đã nhận ra một vài trong số đó - bạn mới có ý tưởng tốt hơn về việc khi nào bạn nên tăng 5 và khi nào là 8.

Khi bạn kết hợp điều này với khái niệm vận tốc và đo lường tiến trình chạy nước rút của bạn thông qua các điểm câu chuyện này, bạn có một thang đo hiệu quả hoàn toàn mới, ít nhiều độc lập với ước tính thời gian truyền thống.

Tuy nhiên, đối với cá nhân tôi, điểm có lợi nhất của việc lập kế hoạch chơi bài là bằng cách sử dụng các số của MySpace thay vì ước tính thời gian, bạn có thời gian dễ dàng hơn để phát hiện sự không chắc chắn. Với ước tính thời gian cổ điển, bạn không bị buộc phải đưa ra các quyết định "cực đoan" (do khoảng cách số) như vậy, do đó, các ước tính có thể khá gần nhau và nhóm có thể tin sai rằng họ hiểu rõ câu chuyện.

Thí dụ

Một ví dụ đơn giản về những gì thường xảy ra là một câu chuyện được trình bày, và sau đó người A đưa ra một sự phản đối. Đó là một cái gì đó dọc theo dòng "xin đừng quên rằng tính năng này ảnh hưởng đến X và điều này có thể có nghĩa là nó tốn kém hơn những gì chúng ta nghĩ cho đến nay". Vấn đề chính là luôn có người A này ở bàn. Luôn có điều gì đó khiến ai đó lo lắng. Nếu bạn có một cuộc thảo luận trực tiếp, bạn sẽ không biết X thực sự lo lắng đến mức nào.

Nếu bạn thực hiện các ước tính ẩn dựa trên thời gian, thì nó sẽ tốt hơn một chút. Tuy nhiên, một người A với sự phản đối hợp lệ có thể không phải là một ngoại lệ rõ ràng trong ước tính của cô ấy. Mặt khác, với việc lập kế hoạch chơi bài, người A phải suy nghĩ nhiều hơn về vấn đề X thực sự là bao nhiêu. Đối với hai vấn đề khác nhau, bạn không thể phân biệt chính xác tầm quan trọng của chúng bằng "văn bản phản đối" nói trên. Ngay cả với ước tính thời gian, thật khó để xem đó là vấn đề gì hơn. Hy vọng của việc sử dụng poker lập kế hoạch ở đây là bạn kết thúc với một phản đối chỉ khác 2-3 điểm so với ước tính của những người khác, nhưng sự phản đối khác kết thúc cách trung bình 5 hoặc 8 điểm có thể là sự không chắc chắn quan trọng nhất kế hoạch chạy nước rút của bạn.


1
Thưa ông, đây có phải là tất cả về ước tính thời gian? Nhưng chúng tôi có các cuộc họp cắt lát vừa phải cho mỗi nhóm scrum để đưa ra các ước tính thời gian riêng cho nhóm nhiệm vụ nhất định cho nhóm scrum cụ thể đó. Vì vậy, tôi tin rằng người lập kế hoạch này không trực tiếp nói về ước tính thời gian. Phải không?
Jude Niroshan

1
Aye .. đọc nó một lần nữa chặt chẽ. Lập kế hoạch poker là KHÔNG ước tính thời gian.
Frank

3

Sau hàng chục lần lặp lại trong nhóm của tôi, chúng tôi đã tìm ra rằng các điểm câu chuyện chủ yếu là về chỉ đạo dự án trung hạn. Họ cho phép chủ sở hữu sản phẩm tự dự án 2 hoặc 3 lần chạy nước rút trước và về cơ bản đưa ra quyết định kinh doanh và phạm vi về một bản phát hành, dựa trên vận tốc trung bình.

Chúng tôi đã phát hiện ra rằng các điểm câu chuyện không hữu ích lắm ở cấp độ nước rút, bởi vì không có 2 lần chạy nước rút nào giống nhau và dự đoán sẽ có bao nhiêu công việc sẽ được thực hiện. Do đó, chúng tôi quyết định chúng ta không nên bị ám ảnh bởi phần ước tính và chỉ lấy kế hoạch các phiên poker làm tiền đề cho cuộc trò chuyện về các tính năng.

Điều này đồng tình với một điểm được thực hiện bởi Mike Cohn ở đây .

Như một lưu ý phụ, điều này đúng với một đội nhất định, nhưng không có quy tắc nào về việc điểm câu chuyện sẽ giúp bạn như thế nào. Tôi khuyên bạn nên dính vào thủ phương pháp này nhưng hãy cố gắng nhanh chóng tự mình tìm hiểu xem chúng hữu ích như thế nào. Hồi tưởng sẽ giúp bạn suy nghĩ về điều đó.


3

Vấn đề cơ bản ở đây là nó bị hỏng. Thủ tướng muốn sử dụng kế hoạch đánh bài để có ý tưởng về sự phức tạp của từng câu chuyện, với ý định biết đại khái có bao nhiêu câu chuyện có thể được lắp vào một cuộc đua nước rút (vận tốc của đội).

Kết quả là, "không dựa trên thời gian" mà là "dựa trên thời gian". Không có gì lạ khi mọi người đều bối rối.

Có nhiều cách để làm việc này cho bạn. Đầu tiên hãy quên đi nỗ lực và tập trung vào sự phức tạp. Quên tất cả về thời gian có thể phát triển và tập trung thay vào các lĩnh vực mà mỗi câu chuyện ảnh hưởng. Nếu bạn có một câu chuyện cập nhật DB, mã máy chủ, mã máy khách và tài liệu máy khách, thì bạn có thể nói đó là câu chuyện 4 điểm. Nếu nó chỉ là một thay đổi cho DB sql, thì đó là câu chuyện 1 điểm. Điều này cung cấp cho bạn một cách dễ hiểu hơn để tìm ra sự phức tạp tương đối giữa các câu chuyện. (Bạn sẽ phải đưa ra một số số liệu phù hợp với hoàn cảnh của mình, có thể kiểm tra các yêu cầu bảo hiểm hoặc độ phức tạp của giao diện người dùng)

Tuy nhiên, ý kiến ​​của tôi nói chung là việc lãng phí thời gian vô nghĩa chỉ đơn giản là khuyến khích lập kế hoạch nước rút như thể chúng là các dự án thác nước nhỏ. Ai thực sự quan tâm bạn có thể phù hợp với bao nhiêu điểm câu chuyện? Nếu bạn có những câu chuyện còn sót lại ở cuối giai đoạn nước rút, bạn chỉ cần thực hiện chúng trong phần tiếp theo. Cho rằng, bạn cũng có thể làm cho hồ sơ tồn đọng của bạn có kích thước của mọi câu chuyện nổi bật mà bạn có và dần dần giảm bớt chúng theo thời gian. Việc giao hàng mất nhiều thời gian (nhưng sẽ nhanh hơn nếu bạn không lãng phí 20% thời gian của mình trong các cuộc họp lập kế hoạch tồn đọng và chạy nước rút). Vào cuối dự án, không ai quan tâm có bao nhiêu điểm câu chuyện đã được chuyển giao. Điều mọi người quan tâm là dự án được giao.


2
Thứ tự phát triển không liên quan gì đến kế hoạch chạy nước rút, đó là lập kế hoạch tồn đọng ... và đơn giản là tốt hơn để ưu tiên toàn bộ hồ sơ tồn đọng và bảo các nhà phát triển thực hiện theo cách đó (đại khái) theo thứ tự Và vì vậy không vấn đề gì nhiều bạn sẽ hoàn thành trong một lần chạy nước rút và bao nhiêu lần tràn vào lần chạy nước rút tiếp theo. Khách hàng nhận được những gì anh ta nhận được khi tổng thời gian / ngân sách hết hoặc cho đến khi hoàn thành tồn đọng. Kế hoạch tất cả sẽ không thay đổi bất kỳ điều đó.
gbjbaanb

1
Theo kinh nghiệm của tôi, các cuộc họp lập kế hoạch nước rút diễn ra trong một thời gian, và trong khi thảo luận về những câu chuyện là một điều tốt, đó là điều không cần phải thực hiện trước, nó sẽ được thực hiện liên tục.
gbjbaanb

1
À, nhưng đó là toàn bộ quan điểm của Agile - nếu bạn muốn thời hạn cố định, hãy đi thác nước. Nếu bạn muốn phát triển lặp lại, nơi bạn thường xuyên vận chuyển / tiến trình demo cho khách hàng của mình và họ tiếp tục cập nhật các yêu cầu của họ thì hãy truy cập Agile. Không bao giờ kết hợp cả hai!
gbjbaanb

2
WRT: "nếu ai đó muốn sửa thời hạn và / hoặc ngân sách ..." Vấn đề ở đây là phạm vi hy sinh là không thể chấp nhận được đối với người dùng cuối, bởi vì họ cần tất cả vào một ngày cụ thể và vì họ đã rút ra một tùy ý (thường là một trường hợp kinh doanh) trong cát x-ra, họ cảm thấy nó hoàn toàn hợp lý và bạn không có kế hoạch đúng, bởi vì họ đã được tin rằng nhanh nhẹn giải quyết vấn đề đó cho họ, một cách kỳ diệu. Inane qua lại này là đục nhất trong Sprint Zero, hoặc một vài lần đầu tiên. Trong hầu hết các trường hợp, các đội được đẩy lùi khi họ hủy phạm vi; và điều này diễn ra trên nauseam quảng cáo.
JoeBrockhaus

1
Tôi có thể cho bạn biết lý do tại sao nó không vô nghĩa ... nhưng bạn sẽ không thích câu trả lời. Lý do để lập kế hoạch chơi bài và lập kế hoạch chạy nước rút là để mọi người "cam kết" thực hiện một tập truyện nhất định. Theo cách đó, khi họ "cam kết" với quá nhiều câu chuyện và không thể hoàn thành tất cả, nó trở thành một thất bại về đạo đức ("Nhưng bạn đã cam kết!") Thay vì chỉ là một thất bại của quá trình, lập kế hoạch, v.v. Điều này cho phép các nhà quản lý thúc đẩy mọi người làm việc nhiều giờ không hợp lý để đáp ứng "cam kết" của họ. Đây là một trong nhiều lý do Scrum không nên được phân loại là phương thức Agile. Đó là chống lập trình viên.
Kyralessa

0

Ngoài ra, việc chỉ ra câu chuyện của người dùng sẽ giúp doanh nghiệp tăng cường nếu có bất cứ điều gì cần đàm phán lại. nếu bạn có một tháng để hoàn thành một số công việc bạn đạt được là 100 thì bạn có thể gặp rắc rối. nó cũng cho bạn cơ hội để chia một câu chuyện sử thi thành một cái gì đó nhỏ hơn mà vẫn có giá trị và có thể được hoàn thành trong một lần chạy nước rút.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.