Thời hạn có nhanh không?


100

Để rõ ràng, thời hạn là:

Giới hạn thời gian hoặc thời hạn là một lĩnh vực thời gian hẹp, hoặc thời điểm cụ thể, theo đó một mục tiêu hoặc nhiệm vụ phải được hoàn thành.

Từ wikipedia

Toàn bộ sự nghiệp phát triển phần mềm của tôi Tôi đã và đang làm "Agile" mà mọi nơi dường như có nghĩa là ít nhất các thực hành sau được tuân thủ:

  • Chạy nước rút hàng tuần hoặc hai tuần
  • Hồi tưởng lập kế hoạch Sprint
  • Một chủ sở hữu sản phẩm
  • Scrum
  • Câu chuyện của người dùng

Tuy nhiên, mọi dự án tôi từng tham gia đều khăng khăng đặt ra thời hạn. Cho rằng Agile cố gắng tập trung vào kế hoạch thích ứng, linh hoạt và thay đổi; thời hạn là Agile?

Ý kiến ​​riêng của tôi là họ không, vì tôi thấy thời hạn dẫn đến sự thiếu linh hoạt và thiếu chất lượng. Thay vào đó, tôi nghĩ rằng nó cung cấp nhiều giá trị hơn để tập trung vào Sprint và giao hàng sớm. Tuy nhiên, dường như trong mọi vòng tròn tôi đã tham gia, đây không phải là trường hợp và thời hạn được xem là đi đôi với phát triển Agile.


36
Không phải là chạy nước rút thời hạn?
JeffO 23/2/2015

12
@JeffO một Sprint là một cam kết, thay đổi dựa trên vận tốc của nhóm của bạn. Thời hạn là IMO, các cam kết không trung thực hoặc minh bạch cho khách hàng. Họ không tính đến vận tốc hoặc vô số rủi ro khác khi thực hiện các dự án phần mềm.
stevebot 23/2/2015

8
Tôi sẽ nói rằng giao hàng mỗi lần chạy nước rút là không thể thương lượng. Bạn đánh giá công việc, bạn đặt kích thước thẻ cho nó và bạn tải đủ để giữ cho nhóm của bạn bận rộn cho đến khi nước rút kết thúc (và nước rút phải nhỏ - bất cứ điều gì từ một tuần đến một tháng). "Thời hạn giao hàng" phải dựa trên xu hướng lịch sử của công việc đã hoàn thành so với công việc dự kiến. Agile thêm / xóa không có gì từ ý tưởng ràng buộc "chi phí / thời gian / phạm vi" cũ, nó chỉ đơn giản sử dụng phạm vi làm phương pháp quản lý trượt được ưa thích trên cơ sở ưu tiên tốt hơn so với phạm vi thường được ưu tiên hơn là chi tiêu nhiều thời gian hơn.
Calphool

8
Đây là Ron Jeffries '(một trong những tác giả gốc của Tuyên ngôn Agile) có thời hạn: xprogramming.com/articles/jatmakingthedate
Jules

4
Một số thời hạn của tôi đã tỏ ra khá nhanh nhẹn.
psr

Câu trả lời:


147

Thời hạn là một thực tế. Hầu hết thời gian bạn phải có một cái gì đó vào một ngày nhất định. Đó là điều không thể tránh khỏi. Không có thời hạn, ngay cả các dự án nhanh nhẹn cũng có thể chịu thua Luật Parkinson :

Công việc mở rộng để lấp đầy thời gian có sẵn để hoàn thành.

Nói cách khác, nếu dự án của bạn có thể tiếp tục mãi mãi, nó sẽ.

Liên quan đến thời hạn, Agile cố gắng thực hiện một số điều:

  • Đảm bảo rằng mọi người luôn có thể xem bao nhiêu công việc sẽ được hoàn thành trước hạn chót
  • Đảm bảo rằng các tính năng quan trọng nhất được hoàn thành trước tiên
  • Đảm bảo rằng các tính năng đã hoàn thành có thể sử dụng được, theo nghĩa là chúng không phụ thuộc vào các tính năng chưa được hoàn thành
  • Đảm bảo rằng sự phát triển tiếp tục ở một tốc độ bền vững

Theo cách đó, khi ngày không thể tránh khỏi đến, bạn không có một đống mã vô dụng, nhưng một sản phẩm đã được thử nghiệm, với hy vọng, chỉ những thứ quan trọng nhất còn dang dở. Và không ai ngạc nhiên về thành phẩm.

Vì vậy, có. "Agile" và "thời hạn" có thể hoàn toàn tương thích.


10
@stevebot Đó chính xác là tình huống thúc đẩy Luật Parkinson. Tôi chưa bao giờ gặp một khách hàng không thể nghĩ ra nhiều tính năng để thêm. Không có thời hạn, danh sách tính năng, và do đó, dự án, là vô hạn.
Eric King

12
@stevebot Tôi nghĩ chúng tôi hiểu nhau, nhưng có ý nghĩa khác nhau của từ "hạn chót". Đối với tôi, "hạn chót" là một ngày cụ thể. Đối với bạn, "hạn chót" là một bộ tính năng cụ thể được hứa hẹn vào một ngày cụ thể. Tôi tin rằng định nghĩa của tôi là cách sử dụng phổ biến hơn và câu trả lời của tôi dựa trên định nghĩa đó. Đánh giá bằng những câu trả lời khác mà bạn nhận được, những người khác đồng ý với tôi. Hãy làm điều đó vì những gì bạn muốn, tôi sẽ không bị xúc phạm. :-) Nhưng câu trả lời của tôi vẫn đứng vững.
Eric King

5
"Sẽ luôn có những kỳ vọng và luôn có khả năng vận tốc nhóm của bạn khiến bạn bỏ lỡ những tính năng cơ bản nhất." Nếu bạn đang thực hiện nhanh nhẹn, thì câu nói đó là một điều phi lý. Backlog của bạn PHẢI được ưu tiên theo giá trị khách hàng tối đa. Nếu không, VÌ SAO LÝ DO , thì bạn không thực hành nhanh nhẹn. Bạn đang thực hành một cái gì đó khác.
Calphool 23/2/2015

7
"Chúng tôi phải có một cái gì đó để vận chuyển vào ngày 28 tháng 7." Các thời hạn trong câu này là ngày 28 tháng Bảy. Bạn có thể có "cái gì đó" là một tập hợp các yêu cầu được xác định trước, hoặc nó có thể là bất cứ điều gì đã sẵn sàng. Phần "một cái gì đó" không phải là hạn chót. Các ngày là thời hạn.
Eric King

5
@stevebot "(Câu trả lời) đánh lừa người đọc tin rằng Agile + Hạn chót = hoàn toàn ổn." Đó là điểm, mặc dù. Agile hoàn toàn tốt đẹp với thời hạn. Hoặc không có. Bạn chọn đi. Nói cách khác về cơ bản là nói "Chà, vì chúng tôi có thời hạn, chúng tôi không thể thực hiện dự án này một cách nhanh nhẹn!" đó là baloney. Tôi đã làm việc trên nhiều dự án mà cả hai đều có thời hạn và đã "nhanh nhẹn". Thời hạn có nhanh không? Chà, họ không nhanh nhẹn.
Eric King

24

Thời hạn là một thực tế của cuộc sống. Có những thứ có một ngày rất chắc chắn.

Chúng tôi cần phần mềm của Comdex

hoặc là

Các trò chơi phải được lên kệ vào Thứ Sáu Đen

và như thế. Người ta không thể hoãn Comdex hoặc Thứ Sáu Đen - phần còn lại của thế giới không hoạt động theo cách đó.

Mục tiêu mà Agile có là những thứ không đáp ứng được thời hạn sẽ thất bại nhanh hơn (và đó là một điều tốt) hoặc phạm vi có thể được kiểm tra lại sớm hơn để các tài nguyên có thể được tập trung vào ROI chính xác trong một cách kịp thời hơn.

Hạn chót là một ngày khó khăn được thiết lập vững chắc. Agile là một công cụ cho phép người ta nhận ra sớm hơn trong chu kỳ rằng phần mềm sẽ mất gấp đôi thời gian để phát triển như mong đợi ban đầu. Điều quan trọng là các nhà quản lý dự án có thể nhận ra những vấn đề này sớm hơn để có thể thêm nhiều tài nguyên hơn, phạm vi thay đổi, thời hạn được điều chỉnh (trong trường hợp đó là một công ty thay vì thời hạn vững chắc) hoặc dự án hủy bỏ

Tính minh bạch mà Agile tìm kiếm là thể hiện các vấn đề và tiến triển sớm hơn trong chu kỳ. Thất bại trong giao hàng thác nước cổ điển là do bạn đã mất hàng tháng trời sau khi đóng cửa và giao sản phẩm một tuần trước hạn chót và được thông báo rằng bạn đã làm sai và bạn đã lãng phí nhiều tháng (và giờ đã hoàn toàn hết hạn) . Thất bại thác nước cổ điển khác là tìm ra một tuần trước hạn chót mà bạn vẫn còn nhiều tháng nữa. Agile tìm cách làm cho những vấn đề này được biết đến sớm trong quá trình.

Phần khác mà Agile tìm cách thực hiện trong bối cảnh thời hạn là ngay cả khi chỉ một phần của các tính năng đã thỏa thuận hoàn thành (vì bất kỳ lý do gì), phiên bản hiện tại của phần mềm là hữu ích và có thể triển khai.

Ok, chúng tôi đã bỏ lỡ tất cả mọi thứ chúng tôi muốn cho phần mềm thuế được triển khai vào ngày 15 tháng 4, nhưng chúng tôi đã có 75% và những gì chúng tôi làm được và đã hoạt động kể từ khi chúng tôi bắt đầu vào tháng 11 năm ngoái. Chúng tôi đã biết rằng chúng tôi sẽ không thể triển khai bộ tính năng đầy đủ kể từ giữa tháng 12 và tập trung lại các nỗ lực của chúng tôi trên 80% cơ sở khách hàng.


2
Tôi đồng ý với bạn, mặc dù tôi sẽ lật tầm quan trọng của hai khẳng định của bạn. # 1. Agile chủ yếu tập trung vào việc đảm bảo rằng phiên bản hiện tại của phần mềm là hữu ích và có thể triển khai. # 2. Thứ hai, nó giúp chúng tôi nhận ra khi phạm vi hoàn toàn không hợp lý trước đó để chủ sở hữu sản phẩm có thể sắp xếp lại và duy trì mục tiêu số 1.
Calphool

2
@ user40980 Điều này thật kinh khủng. Vâng, có những thứ có một ngày chắc chắn. tuy nhiên, bạn không thể tạo ra một lượng công việc vô hạn trong một khoảng thời gian hữu hạn. Thời hạn không thể nhanh nhẹn trừ khi chúng chỉ được sản xuất sau khi ước tính. Đó là một cảnh báo cực kỳ quan trọng. Đó là lý do tại sao bạn lên kế hoạch chạy nước rút - để xác định chính xác công việc nào có thể hoàn thành. Một thời hạn cố định, cố định mà mọi thứ phải được hoàn thành bất chấp nỗ lực không thể CỨNG được.
EKW

18

Một số thời hạn phải được đáp ứng. Nghĩa vụ hợp đồng, quy ước, yêu cầu quy định. Một số được áp đặt bởi các nhà quản lý muốn có thể đưa phát triển phần mềm vào cùng biểu đồ như sản xuất trên bảng tính của họ. Dù nguyên nhân là gì, hầu hết mọi người không thể tránh khỏi chúng.

Nếu bạn đang làm việc trong một nhóm hoạt động thì việc liên lạc giữa các nhà phát triển và quản lý / các bên liên quan có nghĩa là những người cần đưa ra quyết định sẽ được thông báo đầy đủ để quyết định nếu bỏ lỡ thời hạn hoặc tiếp tục phát triển là quan trọng hơn.

Ngay cả khi bạn đang cung cấp các câu chuyện người dùng đã hoàn thành mỗi tuần một lần, hoặc hai lần một tháng, bạn vẫn có thể có thời hạn. Khi một người sắp ra mắt, hãy chắc chắn rằng các bên liên quan của bạn biết những gì bạn nghĩ sẽ phù hợp với thời hạn và đặt kỳ vọng.

Nếu bạn liên tục xây dựng phần mềm tốt nhất có thể với các yêu cầu bạn hiện có ở mọi giai đoạn, thì thời hạn cuối cùng của bất kỳ lần chạy nước rút nào về mặt lý thuyết không phải là vấn đề. Thực tế, đây không phải là trường hợp thông thường, nhưng sau đó không phải là thời hạn xuất hiện ngoài không khí. Thời hạn quan trọng nhất mà tôi từng được đưa ra đã được thông báo cho tôi từ lâu, đó là sự kỳ vọng về chất lượng và các tính năng là vấn đề.


13

Thời hạn tùy ý không có hậu quả nếu bỏ lỡ không phải là rất nhanh, nhưng có những tình huống vì lý do ngoài thời hạn kiểm soát của nhóm phát triển phải được đặt và giữ. May mắn thay, nếu thời hạn là hợp lý, có rất nhiều cách để đảo ngược phương trình và xử lý thời hạn theo cách Agile.

Thời hạn không phải lúc nào cũng sai. Như tất cả chúng ta đã học được từ Obi-Wan:

"Chỉ có người Sith thỏa thuận trong tuyệt đối"

Thật công bằng khi nói rằng trong hầu hết các trường hợp, thời hạn là ngớ ngẩn, không cần thiết và chắc chắn không phải là Agile, nhưng sẽ thật ngu ngốc khi nói rằng điều này luôn luôn như vậy. Trường hợp lưu trữ là phần mềm cần thiết cho việc sử dụng nhạy cảm với thời gian, chẳng hạn như phần mềm theo dõi bầu cử. Nếu phần mềm không sẵn sàng kịp thời cho cuộc bầu cử, việc hoãn cuộc bầu cử sẽ trở nên hợp lý và không thực tế và dường như không được khách hàng định hướng để nói 'Xin lỗi, có vẻ như chúng tôi đã mất quá nhiều thời gian. Tôi biết phần mềm này bạn đang trả tiền cho chúng tôi là hoàn toàn vô giá trị, nhưng thời hạn không phải là Agile vì vậy làm thế nào bạn thực sự có thể chống lại chúng tôi vì đã không gặp họ? '

Sẽ không nhanh lắm khi nói với khách hàng của bạn nên từ chối vì muốn thứ gì đó nhạy cảm với thời gian, và vào cuối ngày, ai đó sẽ phải xây dựng những thứ này. Vậy làm thế nào chúng ta vẫn có thể làm cho khách hàng hài lòng mà vẫn cung cấp các giải pháp có vẻ hợp lý cho những thứ nhạy cảm với thời gian? Chà, nếu việc phát triển phần mềm mất một lượng thời gian không chắc chắn và thời hạn không thay đổi, thì một thứ khác sẽ phải biến để xử lý sự không chắc chắn đó ...

Nếu ngày giao hàng được giữ cố định, một số khía cạnh khác sẽ trở thành một biến.Như chúng ta đã biết, có thể có rất nhiều sự không chắc chắn trong các dự án phần mềm. Một cái gì đó phải được biến đổi để đáp ứng với sự không chắc chắn này nếu bạn muốn thành công trong dự án của mình và thường đó là ngày giao hàng. Dường như đủ tự nhiên, dù sao đi nữa. Nhưng đó không phải là lựa chọn duy nhất của bạn. Nếu bạn bị mắc kẹt trong một thời hạn cuối cùng, cách để xử lý đó là làm cho các tính năng được phân phối của bạn biến đổi. Ưu tiên một danh sách các tính năng, thông báo rõ ràng rằng có sự không chắc chắn về số lượng tính năng có thể được phân phối trước ngày đó. Làm việc với khách hàng để ưu tiên các tính năng này để những tính năng quan trọng nhất sẽ có khả năng được vận chuyển cao hơn. Sau đó, nó hoạt động như bình thường, chỉ khi thời hạn hoàn thành xung quanh bạn vận chuyển bất cứ thứ gì đã sẵn sàng để được vận chuyển. Trong mô hình này,


11

Nếu ai đó muốn đặt thời hạn thì điều đó vẫn ổn và thời hạn có thể được sửa, nhưng điều họ phải hiểu là nếu thời hạn được ấn định, thì phạm vi phải duy trì linh hoạt.

tl; dr

Trong một thế giới lý tưởng, chúng tôi sẽ không có thời hạn và chỉ giao mọi thứ khi chúng sẵn sàng. Mặc dù thực tế là mọi người trả tiền cho mọi thứ thường muốn biết khi nào họ hoàn thành. Các phương pháp nhanh nhẹn nhận ra điều này nhưng cũng nhận ra rằng không phải mọi thứ đều có thể bị ràng buộc.

Điều này đảm bảo rằng bạn có thể giữ chất lượng giao hàng ở mức phù hợp với sản phẩm. Nếu bạn sửa chữa một thời hạn và phạm vi (và ngân sách) thì mọi thứ sẽ vội vã và bạn trở lại thế giới thác nước cũ với thời gian khủng hoảng điên cuồng ở cuối dự án. Tăng ngân sách thường không phải là câu trả lời, bởi vì thêm nhiều nhà phát triển và người thử nghiệm sẽ không giải quyết vấn đề nhanh hơn. Đó là một quan điểm nổi tiếng (và tôi đồng ý với kinh nghiệm này), rằng bạn càng thêm nhiều người (mỗi người có sở thích riêng) thì càng mất nhiều thời gian.

Bây giờ, thông thường (trừ khi họ thực sự hiểu phương pháp Agile), người trả tiền cho phần mềm không giống như được nói, chúng tôi có thể đáp ứng thời hạn của bạn nhưng chúng tôi không thể làm mọi thứ bạn muốn. Điều này có thể được quản lý bằng cách ưu tiên các tính năng tạo nên phần mềm. Thảo luận ưu tiên của bạn có thể diễn ra như sau:

Nhóm phát triển (D): "Xin vui lòng bạn có thể ưu tiên các tính năng bạn muốn phân phối, với điều quan trọng nhất trước tiên?"

Khách hàng (C): "Mọi thứ đều là ưu tiên 1 - Tôi muốn tất cả đều được thực hiện vào cuối tháng tới."

D : "Điều đó có thể là có thể, nhưng điều đó có thể là không thể nếu các yêu cầu thay đổi hoặc chúng tôi phát hiện ra các vấn đề mà chúng tôi không mong đợi trong quá trình phát triển."

C: "Nếu tôi cho bạn thêm tiền thì sao?"

D: " thở dài ... thậm chí với nhiều tài nguyên hơn, họ sẽ mất một tháng để thực sự bắt đầu; vì vậy nếu bạn không chắc chắn làm thế nào để ưu tiên các tính năng, hãy cho chúng tôi biết những gì bạn muốn thực hiện trước."

C: "Ok tôi muốn nút lớn nhưng làm cho nó thực sự lớn, và sau đó ... vv"

Bây giờ bạn có thể bắt đầu làm việc thông qua các tính năng theo thứ tự ưu tiên. Điều này cũng giúp ích cho nhóm của bạn về phía trước với các mục thấp hơn theo thứ tự ưu tiên và đưa ra một số ước tính ban đầu, biết rằng bạn có thể thay đổi chúng khi bạn phát triển khi bạn có thêm thông tin. Điều này có thể được sử dụng để xác định lại hoặc tạo lộ trình của bạn nếu bạn chưa có. Điều này sau đó hình thành cơ sở của kế hoạch phát hành của bạn. Lộ trình có thể được thảo luận với khách hàng thừa nhận rằng phạm vi có thể thay đổi nhưng bạn có một thứ tự được giao.

Một trong những lợi thế lớn của Agile là nó thừa nhận rằng mọi thứ thay đổi khi bạn trải qua quá trình phát triển và bạn điều chỉnh như chúng làm. Trái với các cách tiếp cận truyền thống hơn, nguyên tắc này, kết hợp với việc cung cấp nước rút thường xuyên và liên lạc liên tục với khách hàng, có nghĩa là bạn tự nhiên buộc phải minh bạch hơn về tiến độ, đó là một điều tốt.

Đôi khi, khách hàng không thích rằng họ sẽ không có được thứ họ muốn vào một ngày nào đó NHƯNG họ sẽ hiểu tại sao và những gì họ nhận được sẽ có chất lượng tốt. Và 6 tháng sau khi các tính năng được phân phối, khách hàng sẽ không quan tâm hoặc nhớ rằng bạn đã giao hàng vào một ngày nhất định, họ sẽ nhớ chất lượng sản phẩm mà họ vẫn đang sử dụng.


7
"Vì vậy, nếu ai đó muốn đặt thời hạn thì điều đó vẫn ổn và thời hạn có thể được sửa, nhưng điều họ phải hiểu là nếu thời hạn được ấn định, thì phạm vi phải duy trì linh hoạt." Chắc chắn rồi.
Eric King

Đây có lẽ là câu trả lời nhanh nhất ở đây. Việc nó không có nhiều phiếu bầu là minh chứng cho việc Agile bị hiểu lầm rộng rãi như thế nào.
PostCodeism

10

Thời hạn theo truyền thống dựa trên vòng đời kinh doanh. Phần mềm thuế cần phải có trong ngày 15 tháng Tư. Báo cáo cho năm tài chính tiếp theo có thể cần phải được thực hiện vào tháng Bảy.

Bản tuyên ngôn Agile nêu rõ:

Các cá nhân và tương tác qua Quy trình và công cụ

Phần mềm làm việc trên tài liệu toàn diện

Hợp tác của khách hàng trong đàm phán hợp đồng

Đáp ứng để thay đổi theo một kế hoạch

Thời hạn là một hợp đồng. Họ là một kế hoạch. Họ không đáp ứng với vận tốc của đội bạn. Họ sẽ không thay đổi nếu bạn mất ba nhà phát triển tốt nhất.

Thời hạn không phải là Agile, nhưng Agile có thể cung cấp cho chúng tôi thông tin phản hồi về thời hạn. Agile cho chúng tôi biết nếu vận tốc của chúng tôi sẽ không cho phép chúng tôi đưa ra thời hạn mà không có tính năng nào bị cắt. Nó cũng cho chúng tôi biết nếu chúng tôi cần thuê để đưa ra thời hạn. Và trong một số trường hợp, chúng ta hãy biết rằng thời hạn là không thể, khi không còn tính năng nào để cắt.

Điều tốt nhất mà một nhóm Agile có thể làm là để cho vận tốc của họ và ưu tiên tồn đọng thúc đẩy thời hạn. Điều này sẽ đưa ra ngày giao hàng ước tính. Nếu những người nằm ngoài thời hạn, thì đã đến lúc nói chuyện nghiêm túc với khách hàng và xác định xem liệu thời hạn đó có khả thi hay không.


1
Đôi khi, bạn phải gửi hàng vào một ngày nhất định, không thể thương lượng (thời hạn). Trong trường hợp đó, điều tốt nhất mà nhóm Agile có thể làm là để cho thời hạn cuối cùng tồn đọng, đưa ra tính năng ước tính được đặt ở thời hạn. Nếu bộ tính năng ước tính này không đáp ứng yêu cầu của khách hàng, thì đã đến lúc nói chuyện nghiêm túc với khách hàng và xác định xem dự án có khả thi hay không.
Eric King

@EricKing có, bạn đã đúng, Agile có thể làm việc với thời hạn, tôi nghĩ rằng tôi đã đọc các tuyên bố của bạn là "thời hạn là Agile" thay vì "Agile làm việc với Hạn chót".
stevebot

Cám ơn bạn đã góp ý. Tôi nghĩ rằng cả hai chúng tôi đã nói chuyện với nhau trong một thời gian, và có lẽ chỉ cần một vài giai đoạn nhất định để làm cho mọi thứ nhấp chuột. Tôi không có ý định nói "thỏa thuận là nhanh nhẹn", nhưng tôi có thể thấy nó sẽ diễn ra như thế nào. Xin lỗi vì điều đó.
Eric King

6

Tôi sẽ nói rằng giao hàng mỗi lần chạy nước rút là không thể thương lượng. Bạn đánh giá công việc, bạn đặt kích thước thẻ cho nó và bạn tải đủ để giữ cho nhóm của bạn bận rộn cho đến khi nước rút kết thúc (và nước rút phải nhỏ - bất cứ điều gì từ một tuần đến một tháng). "Thời hạn giao hàng" phải dựa trên xu hướng lịch sử của công việc đã hoàn thành so với công việc dự kiến. Agile thêm / xóa không có gì từ ý tưởng ràng buộc "chi phí / thời gian / phạm vi" cũ, nó chỉ đơn giản sử dụng phạm vi làm phương pháp quản lý trượt được ưa thích trên cơ sở ưu tiên tốt hơn so với phạm vi thường được ưu tiên hơn là chi tiêu nhiều thời gian hơn.

Một số người dường như nhầm lẫn nhanh nhẹn với "miền tây hoang dã". Agile không có nghĩa là bất cứ điều gì đi. Agile có nghĩa là chúng ta ngừng nói dối bản thân về việc một người hợp lý có thể ước tính tốt như thế nào. Về cơ bản chúng ta có thể ước tính sự phát triển phần mềm khoảng 2 - 4 tuần trong tương lai. Ngoài ra, đó là tất cả các mức độ khác nhau của swags và đoán. Tệ hơn nữa, chi phí cung cấp các ước tính cho mọi thứ ngày càng xa hơn trong tương lai tiếp cận chi phí cho việc thực hiện công việc. Vì bất kỳ lý do gì, các nhà quản lý dự án trong lịch sử đã không sẵn sàng thừa nhận những sự thật tuyệt đối này với khách hàng. Agile chỉ đơn giản điều chỉnh suy nghĩ đó bằng cách khẳng định rằng có giới hạn về mức độ chúng ta có thể dự đoán tương lai trong công nghệ phần mềm và chuyển đổi tinh tế sang "ước tính dựa trên bằng chứng" để dự báo dài hạn. khả năng ước tính và chúng tôi có thể cung cấp các ước tính khá hợp lý về phân phối dài hạn trong tương lai dựa trên những gì chúng tôi đã phân phối cho đến nay.


BTW, Cal, tôi khá đồng ý với mọi thứ bạn đang nói ở đây. và tôi không nghĩ rằng nó mâu thuẫn với những gì tôi đã viết.
robert bristow-johnson

5

TL; DR

Thời hạn [a] gile? ... [D] eadlines được xem để đi đôi với sự phát triển của gile.

Nhiều câu trả lời ở đây có khả năng tập trung vào các khía cạnh kỹ thuật của câu hỏi. Thay vào đó, tôi sẽ giải quyết điều này từ góc độ quản lý dự án.

Một thời hạn ngụ ý rất nhiều kế hoạch trước mắt không phù hợp với các nguyên tắc nhanh nhẹn. Thay vào đó, các mô hình phát triển lặp lại dựa trên các hộp thời gian, nhịp, và các chu kỳ phát hành bao gồm lập kế hoạch kịp thời, nhưng không phải là "kế hoạch lớn, trước mắt" thường liên quan đến thời hạn quản lý dự án truyền thống.

Vẫn có thể thực hiện lập kế hoạch phát hành với các phương pháp nhanh, nhưng các kế hoạch thường dựa trên ước tính số lần lặp cần thiết để đáp ứng mục tiêu thay vì các mục tiêu quản lý do fiat đặt ra. Điều đó không có nghĩa là không thể đặt ngày giao hàng hoặc không thể đạt được mục tiêu, nhưng cách chúng được xác định và đáp ứng hoàn toàn khác so với phương pháp quản lý dự án truyền thống.

Hãy nghĩ về những chiếc hộp thời gian, không phải là thời hạn

Tuy nhiên, mọi dự án tôi từng tham gia đều khăng khăng đặt ra thời hạn. Cho rằng Agile cố gắng tập trung vào kế hoạch thích ứng, linh hoạt và thay đổi; thời hạn là Agile?

Đây là một sự hiểu lầm phổ biến của các nguyên tắc nhanh. Các khuôn khổ Agile như Scrum và Kanban không tập trung vào thời hạn, mà thay vào đó là quyền anh thời gian và nhịp điệu giao hàng bền vững.

Ví dụ, trong Scrum, Sprint không phải là "hạn chót". Đó là một hộp thời gian chứa đầy số lượng công việc mà các ước tính của nhóm sẽ phù hợp với hộp thời gian mà không bị tràn ra, và sau đó sẽ "hoàn thành" hoặc "không hoàn thành" khi hộp thời gian hết hạn. Một khi đã biến mất, chiếc hộp thời gian sẽ biến mất mãi mãi; bất kỳ công việc nào không được thực hiện phải được lên kế hoạch lại và ước tính lại trong một hộp thời gian mới, không kém phần phù hợp dựa trên nhu cầu hiện tại (chứ không phải lịch sử) của dự án.

Tầm quan trọng của hộp thời gian là nó tạo ra cả nhịp có thể dự đoán được cho các bên liên quan để xem xét tiến độ và tốc độ bền vững cho nhóm để cung cấp giá trị gia tăng có thể thay đổi được . Công việc được tăng dần, và theo nhịp; Do đó, khái niệm về một thời hạn lớn, trước mắt không phù hợp với các nguyên tắc nhanh nhẹn.

Kế hoạch phát hành dựa trên hộp thời gian

Có lẽ một lĩnh vực mà mọi người gặp khó khăn nhất trong việc ánh xạ các quy trình nhanh đến các khung truyền thống là trong kế hoạch phát hành. Lập kế hoạch phát hành thường liên quan đến việc cung cấp phạm vi cố định hoặc ngày cố định. Trong các khung nhanh, việc lập kế hoạch phát hành thường được thực hiện thông qua quy trình ước tính trong đó phạm vi được xác định rõ ràng là một biến có thể thay đổi, trong khi ngày phát hành được ước tính theo các lần lặp.

Ví dụ, một dự án có thể được cam kết phát hành v1.0 của một dự án vào cuối 20 lần lặp; phạm vi của những gì được phát hành có thể thay đổi trong vòng đời của dự án (như phạm vi, tính năng và mức độ ưu tiên có thể thay đổi khi bắt đầu mỗi Sprint), nhưng ngày đích của mỗi lần phát hành được ấn định trong kế hoạch dự án. Nhóm cố gắng cung cấp một mức tăng có thể thay đổi được mỗi Sprint và Định nghĩa Hoàn thành bao gồm kiểm tra chất lượng như tích hợp liên tục để đảm bảo rằng dự án ở trạng thái có thể tin cậy vào cuối mỗi Sprint.

Thỉnh thoảng, bạn sẽ thấy các dự án nhanh trong đó phạm vi được cố định, nhưng vì phạm vi là biến có thể thay đổi trong các dự án nhanh, ngày phát hành có thể thay đổi theo thời gian khi phạm vi của mỗi lần lặp điều chỉnh, thay đổi hoặc điều chỉnh theo nhu cầu phát triển của dự án . Tôi chắc chắn không đề xuất cách tiếp cận phạm vi cố định cho các đội nhanh nhẹn, đặc biệt là các đội thiếu kinh nghiệm, nhưng có những lúc đó là cách tiếp cận phù hợp.

Xem thêm


... sắp xếp ... nhưng theo thời gian, nhóm tốt hơn nên tập trung vào việc gắn kết công việc để phù hợp với những "hộp thời gian" đó. Nếu bạn chỉ chấp nhận rằng hộp thời gian và công việc của bạn đã hoàn thành không liên quan, thì bạn đang thực hiện mã hóa cao bồi và điều đó hoàn toàn không thể đoán trước. Tôi sẽ nói rằng có lẽ nó bắt đầu như "các hộp thời gian" và theo thời gian, nó trở thành một thời hạn không thể thương lượng khi nhóm trở nên tốt hơn trong việc dự đoán số lượng công việc họ có thể xử lý trong một lần chạy nước rút. Đó là về một nhóm tự đào tạo để trở nên xuất sắc khi ước tính ngắn hạn, bởi vì đó là nơi có thể dự đoán được.
Calphool 6/03/2015

4

Hãy nghĩ về thời hạn là cam kết. Thực tế là dự án nhanh nhẹn không có nghĩa là bạn không nên cam kết cung cấp các tính năng nhất định cho một ngày nhất định.

Những gì nhanh nhẹn mang lại là những gì xảy ra ở giữa. Thay vì có một tài liệu đặc tả yêu cầu phần mềm nghiêm ngặt xác định rằng bạn nên cung cấp tính năng A bao gồm các tính năng phụ B, C, D và E cho một ngày nhất định, bạn cam kết cung cấp tính năng A cho một ngày nhất định, cho rằng tại giai đoạn đầu, cả bạn và khách hàng của bạn đều không biết tính năng này sẽ trông như thế nào, hoặc nó sẽ có các tính năng phụ B, C, D và E hoặc có thể B và C, hoặc hàng tá các tính năng phụ khác.

Hãy tưởng tượng một công ty trước đây chỉ giao hàng cho các công ty nhỏ và vừa ký hợp đồng với một tập đoàn lớn. Tập đoàn lớn này sử dụng EDIFACT và có vẻ như phần mềm kế toán hiện tại được sử dụng bởi công ty của bạn không xử lý EDIFACT. Bạn được yêu cầu tạo một plugin mà làm thế, cho rằng theo hợp đồng, công ty của bạn nên sẵn sàng cho ngày 15 tháng 4 ngày .

Sự nhanh nhẹn có nghĩa là các bước trung gian sẽ được phân phối dần dần và dựa trên phản hồi thường xuyên. Về cơ bản, bạn sẽ cho thấy sự tiến bộ của mình với các kế toán viên và họ sẽ cho bạn biết họ nghĩ gì về vấn đề này, những vấn đề có thể xảy ra, v.v. Điều này cũng có nghĩa là ban đầu, kế toán viên có một ý tưởng tuyệt vời mà họ nghĩ, có thể cải thiện thực chất là trải nghiệm người dùng. Ba tuần sau, có vẻ như nó không chỉ cải thiện nó nhiều mà còn dẫn đến một tháng phát triển bổ sung. Nhờ Agile, sau đó bạn có thể chuyển hướng nỗ lực của mình từ tính năng này sang tính năng khác, đảm bảo cung cấp đúng hạn.

Bạn cũng nên hiểu quan điểm của khách hàng:

  • Thông thường, các doanh nghiệp cần một ngày giao hàng cụ thể. Chẳng hạn, bạn không thể cung cấp dịch vụ phát trực tuyến trò chơi Olympic sau khi kết thúc trò chơi Olympic. Kinh doanh khôn ngoan, đây đơn giản là một thất bại, với những hậu quả tiêu cực rất lớn.

  • Không có một cam kết, nó là cám dỗ cho một nhà phát triển hoặc một nhà thầu phụ là người cầu toàn hoặc làm cho dự án có mức độ ưu tiên thấp. Mặc dù sự đều đặn của nước rút giúp ích, nhưng nó không hoàn toàn ngăn ngừa rủi ro này.

    Tôi không thích thời hạn cho điều đó, đặc biệt là khi thời hạn trượt xảy ra rất dễ dàng, nhưng tôi vẫn hiểu tại sao nhiều công ty làm điều đó. Không phải lúc nào cũng dễ dàng nhận thấy rằng dự án bị chậm tiến độ khi chỉ nhìn vào giai đoạn nước rút: thời hạn bị bỏ lỡ, trong bối cảnh này, có thể là một lời nhắc nhở rõ ràng rằng một cái gì đó vượt khỏi tầm kiểm soát và nên được xử lý ngay bây giờ.


Cảm ơn, nhưng tại sao sự đều đặn của nước rút không hoàn toàn ngăn ngừa rủi ro này? Ngoài ra, tôi thích ví dụ của bạn về Thế vận hội Olympic, nhưng tôi nghĩ một điều cần thiết là phạm vi và chi phí và không bị ràng buộc. Nếu tôi đặt một nhà phát triển vào dự án đó và được yêu cầu cung cấp tất cả các tính năng, thời hạn sẽ không thực sự giúp ích và rất có thể sẽ thúc đẩy chúng tôi cung cấp một sản phẩm chất lượng rất thấp.
stevebot 23/2/2015

Sự đều đặn của nước rút không ngăn ngừa rủi ro vì người quản lý tương đối dễ dàng lừa các bên liên quan để nghĩ rằng dự án sẽ ổn. Những điều như của chúng tôi Chúng tôi đã không thực hiện điều này bởi vì bạn đã nhấn mạnh vào hai điều đó trong cuộc họp cuối cùng của chúng tôi. Các nhà phát triển của chúng tôi đang trong kỳ nghỉ, vì vậy chúng tôi chỉ thực hiện một nửa công việc trong lần chạy nước rút này. rất khó để tranh luận về các bên liên quan và trong mọi chi tiết nước rút, họ có thể mất bức tranh tổng thể của dự án.
Arseni Mourzenko

sau đó bạn có một vấn đề với tính minh bạch và đặt thời hạn lên hàng đầu sẽ không giúp ích gì. Những lời bào chữa đó cũng sẽ dễ dàng bị ném vào thời hạn cuối cùng và đây gần như luôn là những gì tôi thấy xảy ra trong cuộc sống thực.
stevebot 23/2/2015

1

Lập trình eXtreme nói về kế hoạch phát hành:

Triết lý cơ bản của lập kế hoạch phát hành là một dự án có thể được định lượng bằng bốn biến: phạm vi, tài nguyên, thời gian và chất lượng.

Mà có vẻ công bằng. Nó cũng nói rằng

Không ai có thể kiểm soát cả 4 biến. Khi bạn thay đổi một, bạn vô tình khiến người khác thay đổi trong phản ứng. Lưu ý rằng việc hạ thấp chất lượng xuống dưới mức tuyệt vời có tác động không lường trước đến 3 biến số khác

Và như đã được lưu ý bởi br3w5 , tăng tài nguyên là một giải pháp giới hạn. Bạn có thể có thể thêm một vài người đã là thành viên của đội nếu họ được cử đi làm việc khác. Nhưng bạn không thể đơn giản tăng quy mô nhóm nhanh và vô thời hạn, ít nhất là không phải không có tổ chức lại nhóm mà phải mất rất nhiều lần.

Vì vậy, với chất lượng không thể giảm và tài nguyên cố định: thời hạn là hạn chế về thời gian, điều đó có nghĩa là bạn cần điều chỉnh phạm vi. Và sử dụng sự nhanh nhẹn mang lại cho bạn ý nghĩa để đáp ứng thời hạn với phạm vi năng suất cao nhất có thể. Tuy nhiên, bạn thường có thể đảm bảo rằng một số phần của phạm vi sẽ được thực hiện kịp thời. Đây là phần mà bạn có thể ước tính một cách tin cậy thời gian của nó sẽ bị giới hạn dưới thời hạn. Điển hình là một cái gì đó thực sự gần với những gì bạn đã làm nhiều lần và không có nhiều điều chưa biết.


0

Mục đích của các phương pháp phát triển phần mềm, khi được hiểu chính xác, là làm cho chúng ta làm việc hiệu quả hơn bằng cách tập trung suy nghĩ của chúng ta và cung cấp một ngôn ngữ chung cho các tình huống điển hình. Đó là về cảm hứng và cho phép, không phải về kiểm soát tâm trí và cảm giác tội lỗi.

Theo một phương pháp phát triển phần mềm theo nghĩa đen mà không có sự thỏa hiệp nào tương ứng với cái được gọi là chủ nghĩa cấp tiến hoặc chủ nghĩa cơ bản trong các bối cảnh khác. Hình thức thuần túy của quang sai này hiếm khi được nhìn thấy trong thực tế bởi vì nó thường dẫn đến thất bại nhanh chóng trên thị trường. Nhưng tất nhiên khi các nhà phát triển cạnh tranh trong nhiệm vụ khó khăn là thực hiện một phương pháp cụ thể, việc vượt quá nhãn hiệu là điều đương nhiên.

Vấn đề trở nên trầm trọng hơn bởi thực tế là các nhà truyền giáo và truyền giáo chủ yếu nhắm vào những người vẫn cần thuyết phục để sử dụng phương pháp này; và ngay cả khi họ giảng đạo điều độ, bản chất con người đảm bảo rằng nó ít được chú ý hơn.


-1

Thời hạn không nhanh nhẹn, đó là:

1) Thác nước, và 2) Sai.

Phần mềm và thời hạn không hoạt động tốt với nhau và không bao giờ có. Theo nhiều cách, các phương thức Agile là một phản ứng đối với vấn đề lớn về thời hạn hoặc phần mềm bị bỏ lỡ khi rõ ràng rằng thời hạn không thể được đáp ứng (cũng như các vấn đề về ngân sách).

Agile cố gắng đưa thực tế vào tình huống bằng cách nói "Bạn biết thời hạn hoặc các tính năng sẽ bị trượt và / hoặc thay đổi, chúng tôi biết điều đó, vì vậy hãy đi bằng chân phải và thậm chí không giả vờ".

Điều quan trọng là hạn chót chỉ đơn giản là ngày phát hành cho phiên bản đầu tiên của phần mềm. Điều đó vẫn có thể được viết bằng đá - giả sử, phần mềm này được sử dụng cho mục đích học thuật và PHẢI có thể sử dụng được khi bắt đầu nhiệm kỳ - nhưng những gì bạn sẽ cung cấp thì không. Bạn có một sản phẩm khả thi tối thiểu mà mọi người rất chắc chắn có thể được giao vào lúc đó và bạn có một tải "muốn gửi đi". Thay vì mọi người giơ tay khi hóa ra toàn bộ danh sách sẽ không được phân phát theo "hạn chót", bạn hãy chắc chắn rằng bạn đã đưa MVP ra khỏi cửa và như nhiều người "muốn có" có thể và sau đó đánh giá chi phí / lợi ích của phần còn lại tại thời điểm đó.

Bất cứ ai chơi game trên máy tính trong bất kỳ khoảng thời gian nào cũng biết chính xác cách thức hoạt động của trò chơi này! Nếu phiên bản đầu tiên đạt tiêu chuẩn beta, nhiều game thủ sẽ hài lòng, thì mức độ mong đợi của "công ty, thời hạn thực" có nghĩa là gì trong cuộc sống thực.

Vì vậy, thời hạn không nhanh nhẹn, chúng là sự nắm giữ từ những ngày mà mọi người nghĩ rằng phần mềm có thể được đối xử như kỹ thuật phần cứng và thép. Chúng tôi đã học được rằng điều này là không thể và cũng không mong muốn, vì nó loại bỏ phần mềm lợi thế lớn nhất có phần cứng: nó mềm.

Agile cố gắng khai thác sự mềm mại này bằng cách cho phép các mục tiêu phát triển và thay đổi trong suốt quá trình của dự án theo cách mà một thiết kế cầu không bao giờ có thể.


3
Tôi không có lý do tại sao mọi người đánh giá thấp bạn. Tôi đã làm nhà phát triển ứng dụng nhanh / xp trong hơn 10 năm trong một công ty Fortune 100 - giới thiệu nó ở đây như một vấn đề thực tế, và tôi thấy hoàn toàn không có gì sai với những gì bạn nói. Tôi ủng hộ bạn trở về số không, bởi vì bất cứ ai hạ thấp bạn phải là một người mới nhanh nhẹn vẫn bám vào thực tại cũ của họ vì Chúa biết lý do. Mọi người quá đơn giản. Họ nghĩ rằng "Phần mềm và thời hạn không hoạt động tốt với nhau" là một điều tuyệt đối. Bạn đặt mục tiêu đạt MỌI thời hạn nước rút. Bạn không nói dối về khả năng đạt được ngày ước tính tầm xa. Nó đơn giản mà.
Calphool

7
@Calphool Tôi gặp vấn đề khi nói rằng thời hạn là thác nước (chúng tồn tại bất kể phương pháp nào được sử dụng - chúng thậm chí tồn tại cho các lập trình viên cao bồi) và sai (chúng tồn tại vì những hạn chế bên ngoài của thời gian - không sai hơn "chúng ta phải có điều này mã chạy trên phần cứng đó với một số hiệu suất tối thiểu "). Đó là một hạn chế về thời gian đối với những gì một giải pháp chấp nhận được. Nộp thuế trước ngày 15 tháng 4 là hạn chót. Có phần mềm cho nhà phân phối trước ngày 1 tháng 11 để có thể lên kệ trước ngày 27 tháng 11 là hạn chót. Cả hai điều này đều sai.

4
@MichaelT: Nếu bạn chưa có, tôi khuyên bạn nên đọc cuốn sách "Phát triển phần mềm tinh gọn hàng đầu của Tom & Mary Poppendiecks": Kết quả không phải là vấn đề ". Anh ta chỉ đơn giản là truyền đạt một meme khá phổ biến trong các nhóm nạc / nhanh nhẹn. Nếu bạn và nhóm của bạn đang tập trung vào thời hạn nhiều hơn là bạn tập trung vào cải tiến liên tục, bạn không thực sự sống nhanh nhẹn. Bạn có thể đang làm scrum, nhưng không sống nhanh nhẹn. Thời hạn dài hạn có tồn tại? Hiển nhiên, rõ ràng. Có phải họ là những đội nhanh nhẹn nên tập trung vào? Tuyệt đối không. Thời hạn là ngẫu nhiên để suy nghĩ nhanh nhẹn.
Calphool 24/2/2015

4
@MichaelT OP đã đề cập đến thời hạn dự án và đó là những gì tôi đang phản hồi - thời hạn dài hạn được đặt ra bởi một PM khi bắt đầu dự án thay vì chạy nước rút. Chắc chắn có thời hạn của một loại nhanh nhẹn, nhưng chúng có bản chất rất khác với những gì mọi người thường có nghĩa là theo thời hạn dự án, nhưng có lẽ đó chỉ là ngữ nghĩa là vấn đề ở đây.
Nagora

3
@Ellesedil: Hãy cho tôi biết tính năng quan trọng nhất của bạn hoặc bộ tính năng thị trường tối thiểu của bạn, cho tôi vài tuần đến vài tháng để xây dựng hồ sơ theo dõi so với bộ tính năng bạn muốn (thay đổi tùy thuộc vào số lượng bạn yêu cầu - phải mất nhiều thời gian hơn để dự đoán sẽ mất bao lâu để đến mặt trăng so với Pittsburgh). Sau đó, tôi sẽ nói với bạn, và vì ước tính của tôi được xây dựng dựa trên việc cung cấp phần mềm hữu ích thực tế , chúng tôi sẽ có thể ngân hàng dựa trên ước tính, không giống như câu chuyện cổ tích mà bạn buộc tôi phải cung cấp cho bạn ngay từ đầu.
Calphool

-1

Trả lời "có lẽ không"

Các Project_management_triangle khẳng định rằng chi phí, thời gian và phạm vi (và cũng có chất lượng) phụ thuộc vào nhau. ("chọn hai và nhận thứ 3")

Một lần chạy nước rút chọn thời gian cố định (tức là 7 ngày = thời gian chạy nước rút) và chi phí (tức là ngân sách cho 7 thành viên trong nhóm) và ước tính phạm vi (số lượng câu chuyện sẽ được thực hiện trong lần chạy nước rút)

Nếu bộ phận quản lý hoặc bộ phận bán hàng cố gắng xác định cả ba (chi phí, thời gian và phạm vi) thì đó không phải là nhanh nhẹn theo nghĩa scrum vì nhóm không thể hứa sẽ đạt được mục tiêu (mà không vi phạm chất lượng = định nghĩa hoàn thành)

Quản lý chuyên nghiệp cố gắng xác định chi phí và thời gian và giảm phạm vi nếu cần thiết nếu có một số ngày cố định được đáp ứng.


-1

Điều này có thể không được trả lời đơn giản và trực tiếp?

Không có thời hạn là không nhanh nhẹn.

Toàn bộ vấn đề là xây dựng những gì bạn có thể theo cách học lặp đi lặp lại và thích nghi khi bạn đi.

Hạn chót là "bạn phải giao x theo y", điều này không thành công ở cả hai tính toán trong đó bạn hứa sẽ cung cấp cố định trong một khoảng thời gian xác định trước (trong đó agile nói rằng chúng tôi không chắc chắn những gì chúng tôi đang cố gắng phân phối và việc học từ nhanh nhẹn dạy chúng ta rằng ngay cả khi chúng ta biết rất khó có sự chắc chắn về thời gian - hoặc đó là một vấn đề được giải quyết và dù sao chúng ta cũng không nên làm điều đó).

Đã xác định rằng câu trả lời cho câu hỏi là "Không, thời hạn không nhanh nhẹn" - sau đó chúng tôi có thể có một cuộc trò chuyện thú vị giải quyết câu hỏi "làm thế nào để chúng tôi giải quyết thời hạn trong bối cảnh nhanh" và có rất nhiều điều tốt suy nghĩ về điều đó trong các câu trả lời khác.

Theo tôi, một câu trả lời hợp lý cho câu hỏi sau là chúng tôi sẽ cung cấp các giá trị gia tăng sớm và thường xuyên và chúng tôi sẽ xem chúng tôi đang ở đâu trong khóa học do - nhưng không có một kích thước nào phù hợp với tất cả.


-2

Mức độ nhanh nhẹn cần có trong công việc của một người tỷ lệ nghịch với mức độ cao của họ trên sơ đồ tổ chức.

"Agile" là tốt, cho những gì nó là. "Agile" sorta có nghĩa là "cởi mở kết hợp với đủ năng lực." Đó là những tiếng lẩm bẩm ở phía dưới phải nhanh nhẹn nhất.

Nếu, ở cấp độ quản lý, ông chủ tóc nhọn đủ nhanh nhẹn để hiểu rằng việc đẩy thời hạn trở lại một tuần sẽ tạo ra một sản phẩm tốt hơn hoặc sẽ tạo ra mã sạch hơn, không có lỗi và dễ sử dụng hơn để công ty ( hoặc bộ phận) tiết kiệm hai tuần trong tương lai, đó là thời hạn nhanh.

Nhưng giống như lợi ích tự giác ngộ, nó không thực sự tồn tại.


5
Một thời hạn có thể được di chuyển không phải là một thời hạn. Đó gọi là ngày dương lịch. Thời hạn là những thứ như Thứ Sáu Đen - hoặc là trong cửa hàng hoặc không. Tuy nhiên, Agile có nghĩa là tôi có thứ tốt nhất tôi có thể có trước thời hạn đó.
MSalters

Vì vậy, nếu nó bỏ lỡ thời hạn đó, nhưng nó có trong cửa hàng vào tuần sau, nhà sản xuất có luôn chết không? thiếu thời hạn đó phát sinh chi phí. Nhưng điều gì sẽ xảy ra nếu chi phí đó được bù đắp bằng một sản phẩm tốt hơn, điều đó gây ấn tượng với khách hàng hơn với ấn tượng đầu tiên của họ ( "bạn không bao giờ có cơ hội thứ hai để tạo ấn tượng đầu tiên" ) và có những lợi ích khác vượt quá chi phí đó? nếu quản lý đủ thông minh để đưa ra quyết định chiến thuật để trì hoãn phát hành (nó sẽ hết thời hạn, không từ bỏ nó) vì lợi ích của khách hàng và nhà sản xuất, thì đó có phải là "nhanh nhẹn" không?
robert bristow-johnson

Bạn đã bao giờ có thời hạn Thứ Sáu Đen với Walmart chưa? Cảm giác tôi nhận được là nếu bạn thất bại trong năm nay, bạn sẽ không có cơ hội thứ hai vào năm tới. Đó là nghĩa đen "không có cơ hội thứ hai".
MSalters

3
nghe mã i trong khu vực nhạc cụ và âm nhạc. chắc chắn sản phẩm phải ra khỏi cửa để kiếm tiền với nó. nhưng thời hạn thực sự đã khiến một số người không phát triển đi ra khỏi cửa mà khách hàng, công ty và nhà phát triển trong tương lai buộc phải sống cùng trong nhiều năm sau đó.
robert bristow-johnson

5
Vấn đề với doanh số Thứ Sáu Đen là đó là một nỗ lực tiếp thị nhằm tạo ra sự khan hiếm về thời gian và sản phẩm để khiến mọi người hành xử phi lý và mua những thứ mà họ không muốn. Ví dụ này về hành vi phi lý gây ra dường như không khác mấy so với một số cách tiếp cận để quản lý dự án phần mềm. Trong tranh luận rằng việc tạo ra sự khan hiếm thời gian bằng phần mềm không phải là một ý tưởng hay, tôi không nói rằng sự khan hiếm thời gian thực sự là không thể bởi vì chúng rõ ràng nằm trong một số bối cảnh (và rất quan trọng ở đó).
đưa đón87
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.