Khi Agile gặp sự cố [đóng]


23

Tôi đang viết một khóa học Agile cho một số người mới mà chúng tôi đang ở trên tàu gần đây và tôi muốn thêm một câu chuyện cảnh báo để họ hiểu rằng Agile không có nghĩa cho tất cả các dự án.

Vấn đề của tôi là, vì bản chất của các dự án tôi làm việc với Agile đã hoạt động khá tốt cho đến nay, tôi không thể chỉ ra một cách trung thực những gì có thể sai và tại sao khi bạn sử dụng sai loại dự án.

Những điều cần chú ý khi một dự án Agile gặp trục trặc là gì?


18
Hầu hết những câu chuyện kinh dị mà tôi đã nghe về nhanh nhẹn là về những người liên quan hơn là loại dự án mà họ đang thực hiện.
Matthieu

1
Tôi thấy một số câu hỏi chỉ ra những cạm bẫy của Agile trong phần "Liên quan" ở bên phải ------------------->
CFL_Jeff

1
Tôi đã sửa đổi câu hỏi để không mời thời gian câu chuyện và thay vào đó hỏi về các sự kiện cụ thể cá nhân về nơi Agile sai.
maple_shaft

3
@Oded Cách tiếp cận nào hoạt động tốt khi có "thời hạn cứng mà không cung cấp cho chức năng"?
phi lý John

6
@irrationalJohn - Dĩ nhiên là cuộc diễu hành tử thần;)
Oded

Câu trả lời:


46

Thất bại lớn nhất với các đội "Agile" là kết quả của thứ được gọi là Vận chuyển hàng hóa . Về cơ bản, các đội muốn có hiệu ứng của các đội nhanh nhẹn thành công để họ bắt chước các hành động trực quan

  • Standups hàng ngày (chạy trong một giờ hoặc lâu hơn)
  • Phá vỡ công việc thành nước rút
  • Câu chuyện của người dùng (thường ít hơn một câu nhưng ước tính được dự kiến)

Đó là ba thứ mà bạn sẽ thấy "được áp dụng" một cách nhất quán trong các môi trường này nhưng rất ít cam kết thực sự nhanh nhẹn. Trong thực tế, bạn sẽ nghe quản lý nói rằng chúng tôi "làm việc nhanh nhẹn". (Chạy đi với hai từ đó là một dấu hiệu xấu.)

Bạn cũng sẽ nghe nhiều về nợ kỹ thuật nhưng định nghĩa về nợ kỹ thuật của họ là "làm nhanh và bẩn và có thể chúng ta sẽ xoay quanh để làm cho nó tốt hơn sau này". (Dịch: chúng tôi sẽ làm cho nó có vẻ như chúng tôi quan tâm đến khả năng bảo trì nhưng thực tế chúng tôi sẽ giữ nguyên tâm lý phòng nồi hơi vì đó là những gì làm việc cho chúng tôi trong quá khứ).

Các cụm từ chính khác: "Tôi biết những câu chuyện này không được xác định đầy đủ nhưng chúng tôi đang làm rất nhanh để chúng tôi có thể khắc phục chúng khi chúng tôi đi."

"Chúng tôi đang phát triển nhanh để bạn có thể nhận được những gì tôi cần trong giai đoạn nước rút khi tôi xác định nó."

"Chúng tôi không thể khóa các câu chuyện đã cam kết của chúng tôi khi bắt đầu nước rút vì nhu cầu tiếp tục thay đổi giữa giai đoạn nước rút."

Chỉ số chính về việc một dự án Agile sẽ thành công là nếu người lãnh đạo dự án (chủ scrum hoặc bất kỳ vai trò nào) đã có kinh nghiệm hoặc đào tạo chính thức về lãnh đạo một dự án nhanh. Rất thường xuyên, tôi đã thấy mọi người đọc về Agile trong một cuốn sách hoặc tham gia một khóa học hai ngày về việc trở thành một bậc thầy scrum và nghĩ rằng họ đã có những khúc mắc để thực hiện thành công nó. Xin lỗi nó không xảy ra đội trưởng.


4
Tôi không hoàn toàn đồng ý về chỉ số chính để thành công. Tôi muốn nói rằng chỉ số chính là sự cam kết thực sự của cả quản lý và nhà phát triển, và ít nhất là sự hiểu biết cơ bản và chấp nhận các quy tắc Agile của khách hàng. Ngay cả đào tạo Agile tốt nhất thế giới cũng không thể giúp bạn tiến xa nếu quản lý hành xử như bạn mô tả ở trên. OTOH với đủ quyết tâm và nhiệt huyết, người ta có thể học Agile ngay cả từ một cuốn sách và áp dụng nó thành công trong một dự án thông qua sàng lọc liên tiếp - nếu quản lý hỗ trợ nó một cách nghiêm túc.
Péter Török

Chỉ là một bên, bạn có thể giải thích "tâm lý phòng nồi hơi" nghĩa là gì? Tôi đã nghe nó trước đây, chỉ chưa bao giờ nghe một lời giải thích.
Kevin McCormick

2
một "môi trường phòng nồi hơi" là một khu vực có áp suất cao, khắc phục ngay bây giờ bằng mọi cách mà điều kiện làm việc luôn khó chịu. Tâm lý phòng nồi hơi kéo dài tình trạng này.
Hellion

1
"... trưởng dự án (scrum master) ...": Gần đây tôi đã nghe một cuộc nói chuyện của Bob Martin, nói rằng chủ scrum không có nghĩa là một người dẫn đầu dự án lúc đầu: đó là một vai trò được xoay vòng giữa các thành viên trong nhóm (các nhà phát triển tham gia vào dự án, không phải người quản lý) và chỉ được yêu cầu kiểm tra xem các nguyên tắc nhanh nhất định đã được thực thi trong suốt giai đoạn nước rút.
Giorgio

21

Những người không hiểu Agile là gì (là?) Tất cả về và áp dụng nó vào:

  • khách hàng không có bình luận cho đến thời hạn
    ... và đe dọa hành động pháp lý sau đó;

  • các nhà quản lý khiến các nhà phát triển tránh xa khách hàng , (có lẽ vì họ bị trả lương thấp và có thể nhảy tàu, làm việc cho khách hàng nói trên) và chơi một trò chơi " điện thoại bị hỏng " trong một nỗ lực tuyệt vọng (thường thành công) nhìn bận rộn và hữu ích,

    Xem thêm: quản lý nấm , còn gọi là "che khuất, cho ăn phân chuồng"những ông chủ có mái tóc nhọn . :)

  • những đội quá lớn để đi bất cứ đâu;

  • công ty đang giữ trên bảng lương của họ một lần nổi tiếng nhà thiết kế kiến trúc hệ thống được một cách tuyệt vọng chuyển hướng sự chú ý từ thực tế, họ hoàn toàn mất phương hướng về nghề mã hóa thực tế, bởi overdesigning tuyệt vời, không thực tế, khó nhận ra, UML familias Sagrada .


2
Wow, tiếng thì thầm của Trung Quốc, thật sao? Âm thanh hella phân biệt chủng tộc.
Đánh dấu Canlas

12
Tôi không đồng ý với sự phẫn nộ đạo đức giả của bạn về phân biệt chủng tộc. Nói về phân biệt chủng tộc với mục wikipedia về chủ đề này và tham chiếu đến phiên bản từ điển oxford 2008.
ZJR

3
@Canlas Bạn nghe hella bắc mỹ.
ZJR

3
Điều gì trên trái đất có playing a game of "telephone"nghĩa là? Thực sự không nghĩ rằng chỉnh sửa là theo bất kỳ cách nào cần thiết ...
Cocowalla

6
Tên thật của trò chơi là "Điện thoại bị hỏng" (đã được chỉnh sửa) và khi ZJR chỉ ra đó không phải là một cụm từ phân biệt chủng tộc, tôi thực sự đã liên kết bài viết Wikipedia với "Điện thoại bị hỏng" và đoán xem? nó chuyển hướng đến "Tiếng thì thầm Trung Quốc" =)
Chepech

12

Agile không phù hợp với các hợp đồng có thời hạn hoặc giá cố định. Khi bạn đã đăng ký cho một con thú như vậy, bạn phải cung cấp. Agile rất giỏi trong việc tiếp tục phát triển mãi mãi, khi khách hàng thay đổi quyết định và 'làm rõ' các yêu cầu của họ. Điều đó không giúp bạn vào ngày hết tiền, nhưng vẫn phải hoàn thành công việc.

Agile rất tốt cho giai đoạn hậu dự án khi bạn đang thực hiện các bản cập nhật gia tăng và sửa lỗi.

Khía cạnh khác mà Agile thất bại không phải là lỗi của Agile, đó là lỗi của những người khăng khăng với tất cả những thứ cũ như tài liệu dự án đầy đủ, thiết kế trước và đường truyền thông kém. (Bản tuyên ngôn nhanh nhẹn một nửa ).


Giữ lấy nó. Bạn có thực sự nghĩ rằng hầu hết các dự án Agile đều có ý định tiếp tục "mãi mãi" không?
user16764

1
điều đó phụ thuộc vào dự án, một số là kết thúc mở và tiếp tục trong khi có những yêu cầu mới cần đưa vào. Nhưng hầu hết các dự án nhanh nhẹn không có ý định hoàn thành và giao hàng vào một ngày định sẵn. Tôi đã đặc biệt nghĩ về các hợp đồng chính phủ đã đặt ra các mốc quan trọng để đáp ứng.
gbjbaanb

Chính thức, một dự án không bao giờ kết thúc mở; tính năng xác định khóa duy nhất của dự án là nó có ngày kết thúc (bắt đầu và). Đó là sản phẩm và dịch vụ mà bạn duy trì lâu dài.
Donal Fellows

1
"Đường truyền kém": Theo tôi biết, giao tiếp tốt chưa được phát hiện bởi nhanh nhẹn và các phương pháp nhanh có thể làm rất ít với các nhóm rối loạn chức năng không thể giao tiếp.
Giorgio

9

Dưới đây là một vài câu hỏi có thể hữu ích để tìm câu trả lời về mặt tìm kiếm một ví dụ trong đó nỗ lực tại Agile có thể trở nên kém:

Bạn đã bao giờ nghe nói về "giả Agile" chưa? Dưới đây là một vài mục blog về nó:

Có một điều gì đó để nói cho các công ty có thể có quan điểm riêng của họ về Agile là gì và bán nó thành một thứ khác.


8

Tôi đã làm việc trong một nhóm Agile rất thành công, cũng như một vài người đã cố gắng Agile, nhưng không thể làm cho nó hoạt động được.

Người thành công có các yếu tố sau:

  • Yêu cầu thực sự "nhanh nhẹn". Có những câu chuyện của người dùng và chúng tôi đã mã hóa chúng.
  • Chủ sở hữu sản phẩm có sẵn. Nếu một câu chuyện người dùng mà tôi đã mã hóa chưa hoàn chỉnh, tôi có thể dễ dàng đi đến chủ sở hữu sản phẩm, hỏi anh ta những gì nên có, thêm nó và hoàn thành mã.
  • Cam kết về quy trình và nhận ra rằng đó là một đường cong học tập.
  • Đội tập trung.
  • Các nhà quản lý đã biết và hiểu cách Agile làm những việc đã cam kết làm cho nó hoạt động.

Nhóm thành công đã làm Agile, và làm điều đó thực sự tốt. Tôi nghĩ rằng nếu bạn không có bất kỳ điểm nào ở trên, bạn có thể thất bại khá dễ dàng. Điều đầu tiên và thứ hai song hành với nhau, và nếu bạn không có điều đó, thì Agile sẽ không hoạt động.

Đội tôi tham gia mà Agile không làm tốt cũng có một vài yếu tố:

  • Thiếu sự cam kết từ ban quản lý. Ban quản lý đã không tin vào triết lý này và do dự không cam kết.
  • Yêu cầu tài liệu ở những nơi khác ngoài câu chuyện của người dùng. Xem ở trên về cam kết quản lý. Ngoài ra, chúng tôi đã có các nhà phân tích yêu cầu được trả lương cao và các công cụ yêu cầu đắt tiền lớn mà ai đó cần để biện minh cho việc sử dụng.

Khá nhiều phản ánh trải nghiệm của tôi với Agile, +1. Cả nhóm (bao gồm cả đại diện và quản lý doanh nghiệp) đều cam kết thực hiện Agile và nó hoạt động tốt, hoặc đó chỉ là một số nhà phát triển muốn làm điều đó và đó là một trường hợp sụp đổ.
Amos M. Carpenter

7

Tôi sẽ thêm vào những câu trả lời tuyệt vời đã được đăng tải rằng, theo kinh nghiệm của tôi, Scrum nhanh nhẹn và cụ thể sẽ chỉ hoạt động nếu đội ngũ quản lý VÀ sẵn sàng đưa ra nhiều tầm nhìn về những gì đang diễn ra.

Điều này có nghĩa là trong các công ty đại chúng (ví dụ chính phủ), sẽ rất khó để làm cho nó hoạt động đúng.


5

Agile theo tôi là tất cả về văn hóa của đội đang luyện tập. Nếu văn hóa tệ, các thành viên trong nhóm không hòa đồng và mọi người không hợp tác để đáp ứng các ủy ban nước rút thì văn hóa hoặc nhóm bị thiếu.

Tuy nhiên, tôi không nhất thiết phải nói rằng Thác nước sẽ nhất thiết phải hoạt động trong một môi trường như vậy, đó không phải là một tình huống đen trắng, rất ít thực sự là đen và trắng.

Một nhóm Agile tốt là cộng đồng. Họ có một tinh thần cộng đồng bộ lạc nơi tất cả các thành viên đang làm việc hướng tới cùng một mục tiêu. Nhóm thành công hoặc thất bại cùng nhau. Họ cùng nhau giải quyết vấn đề. Một thành viên trong nhóm sẽ ngăn chặn những gì anh ta đang làm với nhiệm vụ của mình để giúp đỡ một thành viên trong nhóm đang gặp khó khăn. Tất cả mọi thứ là chìm hoặc bơi.

Khi đây không phải là trường hợp sau đó nó nhanh chóng trở nên rõ ràng những gì sai. Nếu các thành viên trong nhóm đang ngồi xuống, gõ máy tính xách tay của họ hoặc nhắn tin hoặc khoanh vùng trong lúc đứng lên hàng ngày thì bạn không có một nhóm Agile tốt. Nếu các nhà quản lý dự án của bạn đang thực thi tất cả các quy trình, định nghĩa và thuật ngữ Scrum nhưng mọi người chỉ giữ nhịp và trả tiền cho dịch vụ môi, thì đây chỉ là một trò hề khá trắng trợn về Agile thực sự là gì, và điều này theo nhiều cách dẫn đến rối loạn chức năng nhóm, không hiệu quả , bỏ lỡ thời hạn và các dự án thất bại.

Thất bại Agile về nhiều mặt còn tệ hơn cả một nhóm Waterfall thành công vừa phải và có thể có tỷ lệ thành công dự án thấp hơn.


Tôi đồng ý, nhưng xem xét ví dụ một dự án mà chủ sở hữu sản phẩm hầu như không có mặt mọi lúc và có thời hạn cố định được xác định trước trong dự án vì nó rất quan trọng để giới thiệu nó theo quy ước (hoặc bất cứ điều gì) và nhóm của bạn được sáng tác bởi cặp vợ chồng cao cấp một gói đàn em. Vì vậy, vâng, không có màu đen và trắng nhưng có một số đặc điểm cốt lõi mà một dự án cần phải làm việc tốt với Agile mà không phải làm với thái độ của mọi người, phải không?
Chepech

5

Tôi không biết điều này từ kinh nghiệm cá nhân, nhưng theo giả thuyết, có nhiều trường hợp khi nhanh nhẹn không phải là lựa chọn tốt nhất.

  • Các dự án có sản phẩm quan trọng về tính mạng hoặc tài sản - Ví dụ: bạn không muốn sử dụng nhanh để phát triển phần mềm chạy máy tạo nhịp tim. Tại sao? Bởi vì bạn có dung sai gần như bằng không đối với các lỗi. Hãy xem xét một ví dụ kinh điển về lỗi lập trình trong y học liên quan đến Therac 25 . Cấp, nó không được xây dựng với sự nhanh nhẹn, nhưng vấn đề là: Phát triển cuộc sống hoặc tài sản quan trọng không phải là nơi để nói, "chúng tôi sẽ làm sạch điều đó trong lần chạy nước rút tiếp theo" hoặc "chúng tôi không cần tuyệt vời, chỉ là tốt đủ."

  • Các dự án có quá nhiều nhà phát triển cơ sở - Agile mong đợi một sự tự chủ nhất định trong nhóm tham gia. Nếu không có đủ kinh nghiệm trong nhóm, thì quyền tự chủ đó có thể chống lại bạn.

  • Các dự án đòi hỏi mức độ kiểm soát hoặc lập kế hoạch cao hơn so với những gì được cung cấp theo truyền thống với Agile.

Tôi giả sử ai đó sẽ nhảy vào và giúp đỡ với những ví dụ tốt hơn, hoặc hạ thấp phần nhỏ này của tôi đã viết ;-).

Chỉ cần nhớ rằng khi công cụ duy nhất bạn có là một cái búa, mọi vấn đề trông giống như một cái đinh. Không phải tất cả các dự án là móng tay.


5
Agile không loại trừ các hệ thống quan trọng trong cuộc sống. Nếu một mặt hàng không được khách hàng kiểm tra và chấp nhận đầy đủ, nó không được "thực hiện" và không được phát hành, không quan trọng là chạy nước rút được thực hiện. Có thể các mục khác (yêu cầu, câu chuyện) đã được hoàn thành và thử nghiệm đúng cách trong giai đoạn nước rút, vì vậy chúng CÓ THỂ được phát hành - nếu khách hàng muốn chúng được. Agile luôn luôn cung cấp chính xác những gì khách hàng cần, với chất lượng cao.
Matthew Flynn
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.