Định nghĩa về Xong Xẻng trong trường hợp một số Nhóm phát triển làm việc trên cùng một sản phẩm


12

Một trong những bài kiểm tra scrum chứa câu hỏi về định nghĩa mô tả đúng nhất "Xong" khi nhiều nhóm phát triển thực hiện một công việc trên cùng một sản phẩm.

Một câu trả lời thích hợp nói rằng các nhóm phát triển đó phải có định nghĩa "Hoàn thành" như vậy có thể làm cho công việc kết hợp của họ có khả năng giải phóng được.

Điều không rõ ràng đối với tôi từ câu trả lời thích hợp cho bài kiểm tra này là:

  • các đội có thể có định nghĩa khác nhau về "Xong" không? Ở mức độ nào?
agile  scrum 

Hãy nghĩ về một nhóm phát hành trực tiếp một sản phẩm cũng như cùng một công việc đang được các nhóm khác sử dụng.
Ian

Hoặc ví dụ, phiên bản tiếng Anh của phần mềm có thể xuất xưởng trước khi được dịch sang tiếng Pháp ,.
Ian

Loại nhầm lẫn này là lý do tại sao tôi không bao giờ nói bất cứ điều gì được thực hiện. Thay vào đó tôi luôn nói chính xác những gì chúng tôi đã làm. Quyết định nếu một cái gì đó được thực hiện là một cuộc đàm phán. Không phải là một tuyên bố. Bất kể định nghĩa bạn làm theo.
candied_orange

Câu trả lời:


16

Khi tất cả các nhóm xác định "Xong" theo cách tính đến công việc được hoàn thành bởi các nhóm khác, thì bạn đang đảm bảo chức năng được hoàn thành.

Nếu mỗi nhóm định nghĩa "thực hiện" khác nhau và chỉ mong các nhóm khác biết về định nghĩa đó, bạn sẽ gặp phải một số vấn đề:

  • Khi một vấn đề tích hợp phát sinh, sẽ không có nhóm nào muốn chịu trách nhiệm sửa chữa nó. Rốt cuộc, nó đã được "thực hiện" khi họ bắt đầu tích hợp mọi thứ, vì vậy nó phải là thứ gì đó với công việc của nhóm khác.

  • Khi bạn có nhiều hơn một nhóm, việc nhớ "định nghĩa hoàn thành" của mọi người trở nên khó khăn - đặc biệt là khi có sự khác biệt giữa các đội.

  • Định nghĩa thực hiện không được đảm bảo bao gồm rằng công việc tích hợp đang hoạt động đúng.

Câu trả lời được chấp nhận nêu rõ rằng mọi thứ không được thực hiện cho đến khi công việc từ tất cả các nhóm được tích hợp và hoạt động đúng. Nó phải đáng tin cậy và do đó có khả năng được người dùng cuối chấp nhận toàn bộ.


Chỉnh sửa để phản hồi các bình luận: Điều này không có nghĩa là mọi đội đều có cùng định nghĩa về việc thực hiện. Điều đó có nghĩa là một phần trong định nghĩa hoàn thành của mỗi nhóm là hệ thống lớn hơn và các thành phần tích hợp khác không bị phá vỡ.


Tôi xin lỗi, nhưng dường như với tôi rằng câu trả lời đúng không nói gì về việc có định nghĩa duy nhất là "Xong". Hơn nữa, tôi không chắc chắn rằng đặc thù tích hợp phải được bao gồm trong nó. Nói nếu hai nhóm cùng làm việc trên một triển khai hoàn toàn khác nhau của cùng một API dành riêng cho các khách hàng khác nhau? Tuy nhiên, chính thức họ vẫn đang làm việc trên cùng một sản phẩm.

2
@Andremoniy, câu trả lời đúng thực sự không nói gì về một DoD duy nhất , nhưng điều đó có nghĩa là các DoD của tất cả các đội nên có một yếu tố chung là toàn bộ sản phẩm vẫn hoạt động. Ví dụ của bạn về các nhóm khác nhau làm việc trên các triển khai API khác nhau không thuyết phục tôi rằng đó có thể được gọi là một sản phẩm.
Bart van Ingen Schenau 4/12/18

2
@Andremoniy, ngay khi một nhóm phụ thuộc vào công việc của nhóm khác, các vấn đề tích hợp có thể (sẽ) xảy ra, ngay cả khi các bộ phận được triển khai đến các vị trí khác nhau. Đây cũng là một vấn đề tích hợp, ví dụ, khi một dịch vụ vi mô sử dụng một dịch vụ vi mô khác theo cách không mong muốn, có thể không chính xác.
Bart van Ingen Schenau 4/12/18

2
@Andremoniy: Bạn đúng rằng hai đội đó không nên sử dụng cùng một DoD, nhưng họ có thể chia sẻ quy tắc rằng mọi thay đổi không được ảnh hưởng tiêu cực đến nhóm khác (điều này chủ yếu sẽ kích hoạt nếu công việc liên quan đến thay đổi giao diện với mặt sau máy chủ -end).
Bart van Ingen Schenau 4/12/18

1
@Andremoniy: Cảm ơn ý kiến ​​của bạn. Tôi đã cập nhật câu trả lời của mình để giải quyết một số vấn đề bạn đưa ra.
Greg Burghardt

6

Tôi có thể tưởng tượng một tình huống, trong đó một nhóm định nghĩa "Xong" là "Phát triển xong" (nghĩa là mã được hợp nhất để repo) trong khi nhóm khác định nghĩa nó là "Thử nghiệm xong" (tức là mã được phát hành cho Q / A và được kiểm tra).

Điều này vốn đã dẫn đến các vấn đề nghiêm trọng bởi vì trạng thái sản phẩm tổng thể phần lớn sẽ không được xác định và do đó thật khó để biết liệu chúng ta có thực sự có thể phát hành nó hay không.


Bạn có xem câu trả lời thích hợp như một người nói rằng tất cả các đội nên chia sẻ cùng một định nghĩa không?

Vâng, tôi đồng ý rằng cần có một định nghĩa chung vì một lý do đơn giản - Một dự án phức tạp có thể được coi là một cấu trúc cây trong đó các tiểu dự án (ví dụ như microservice) xây dựng sản phẩm tổng thể (ví dụ MyCool ERP). Vì vậy, trong một thời điểm nhất định, bạn muốn biết liệu một phiên bản mới của sản phẩm có thể được phát hành hay không. Nhưng nếu bạn có DoD khác nhau cho các thành phần con cụ thể, thì thông tin này trở nên cực kỳ khó để suy luận.
Pawel Gorczynski
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.