Estimate ước tính phần mềm

      2

Bên cạnh việc trở ngại trong dự kiến tương lai, bao gồm một yếu tố rất bé người lý giải tại sao các ước lượng (thời gian, đưa ra phí, nhân lực..) vào dự án ứng dụng lại khó đến vậy. Yếu đuối tố tư tưởng đằng sau những ước lượng trong xây dựng phần mềm là rất lôi kéo và một vài nghiên cứu vớt đã đã cho thấy một số kết quả khá thú vị. Biết về thành con kiến của chính chúng ta và tâm lý con người có thể giúp nâng cao tính hiện thực của những ước lượng phần mềm. Như Dan Ariely sẽ tóm tắt một cách độc đáo trong tiêu đề cuốn sách của mình, con người bọn họ là Phi lý trí (Predictably Irrational) có thể đoán trước được.

Bạn đang xem: Estimate ước tính phần mềm

Để mong lượng thời gian giỏi hơn, điều đặc trưng là cần hiểu thành con kiến ​​của chúng ta, để hiểu những dấu hiệu cần chú ý. Không giống hệt như dự đoán thời tiết, trong đó dự đoán không tác động đến kết quả, ước lượng ứng dụng có một vài tác động đến kết quả. Ví dụ, nếu ước tính cực thấp và mọi fan phải gấp rút xong xuôi đúng thời hạn, quality của kết quả rất có thể giảm xuống. Vậy, ảnh hưởng có thể bao gồm của áp lực thời gian đến năng suất và quality là gì? Trước khi họ tìm đọc sâu hơn về thắc mắc này, hãy ban đầu với quy trình tư duy hoạt động.

Liệu chúng ta có đang sáng sủa quá nút và góp phần vào việc ước lượng dự án phần mềm một bí quyết không thực tế? Hãy tưởng tượng một kịch phiên bản trong đó có không ít nhà thầu để giành được hợp đồng cách tân và phát triển phần mềm, một trong những nhà thầu đưa ra một cầu tính dẫn đến chi phí ít hơn đáng kể. Bởi vì giảm ngân sách chi tiêu là một đụng lực cho các tổ chức, công ty thầu này giành được đúng theo đồng (với team ngũ bán sản phẩm tuyệt vời) mà lại dự án xong xuôi một phương pháp thất bại. Ai là người có lỗi nghỉ ngơi đây?

Có cần nhà thầu đã cố ý đưa ra dự trù thấp? có phải quý khách hàng đã dìm mạnh giá cả là nguyên tố then chốt? Hay chúng ta thiếu sự kỹ năng về cầu lượng? Đây là trong những khó khăn. Tín đồ đặt giá bán thầu hoàn toàn có thể không chũm ý hạ thấp ước tính, cơ mà họ đã làm được khen thưởng vì đã có tác dụng như vậy. Khách hàng rất có thể muốn một hợp đồng cùng với thời gian cố định và thắt chặt và phạm vi thế định, chính là mô hình thác nước (water fall), nhưng lại họ nói rằng họ có nhu cầu một vật gì đó linh động (agile).

Phần thưởng của rất nhiều lượng tính lạc quan hoàn toàn có thể có tác động ảnh hưởng tiêu cực. Kịch bạn dạng cũng xẩy ra khi mọi người cố gắng chấp thuận các dự án từ người quản lý của họ. Các bạn đã lúc nào đặt giá bán thầu cho một dự án công trình và cảm thấy áp lực phải giảm đưa ra phí? Hoặc bạn đã lúc nào được hỏi một cái nào đấy sẽ mất bao lâu và được trả lời rằng nó thừa lâu? chắc chắn rằng rằng các bạn đã từng gặp mặt những trường đúng theo như vậy. Vì vậy, thời cơ tốt nhất mà chúng ta có nhằm phá vỡ sự bế tắc là thông qua giáo dục và sử dụng khoa học sẽ giúp đưa ra quyết định giỏi hơn.

Magne Jørgensen từ chống thí nghiệm phân tích Simula (Simula Research Laboratory) đã nghiên cứu và xuất phiên bản về nhà đề ước lượng ứng dụng từ năm 1995. Cuốn sách cách đây không lâu của ông, Dự đoán thời gian: Hiểu và nên tránh chủ nghĩa không thực tiễn trong lập kế hoạch dự án và cuộc sống hàng ngày ( Time Predictions: Understanding and Avoiding Unrealism in Project Planning & Everyday Life) cất đầy nhiều nghiên cứu và phân tích và ví dụ như thú vị. Bài viết này được tham khảo không hề ít từ những nghiên cứu này .

Lý vì chưng tôi (tác giả bài viết này, xem ngơi nghỉ cuối bài) thực sự say mê cuốn sách của Jørgensen là ông ấy áp dụng khoa học tập để đem lại bằng chứng cung ứng cho một số hoạt động trong ngành.


Tại sao những nhà phạt triển phần mềm (và những nhà thiết kế) lại quá buổi tối ưu với những ước lượng của họ?

Mọi tín đồ thường nghĩ về rằng họ tốt hơn mức trung bình. Đặc biệt là khi kết thúc những các bước tương đối dễ dàng và đơn giản mà họ bao gồm năng lực. Hiệu ứng tốt rộng mức trung bình (better-than-average effect) hoàn toàn có thể được bắt gặp trong cách mọi tín đồ đánh giá bản thân trong vô số nhiệm vụ như lái xe, điểm trong kỳ thi, v.v. Đây là 1 kiểu buổi tối ưu hóa quá mức.

Một ví dụ không giống được nêu nhảy bởi Hamilton, bạn đã xuất phiên bản một so với thực nghiệm về lợi tức đầu tư của câu hỏi tự kinh doanh trên Tạp chí tài chính Chính trị (Journal of Political Economy) . Người ta thấy rằng những doanh nhân có phần trăm thất bại cao và kiếm được trung bình thấp hơn 35% đối với những nhân viên làm quá trình tương trường đoản cú sau 10 năm kinh doanh. Tôi đã cười thành tiếng khi tìm thấy mẫu này. Là bạn sáng lập của một doanh nghiệp khởi nghiệp công nghệ, tôi chắc chắn là biết được mình đã làm được phần lớn gì.

Jørgensen dành một chương của cuốn sách này để nói đến những dự kiến quá buổi tối ưu. Đó là tầm đặc biệt của nó so với ước lượng phần mềm. Điều thú vui là ông ấy lưu ý những lợi ích của vấn đề tối ưu hóa quá mức theo ý kiến tiến hóa, bước đầu từ thời kỳ đồ dùng đá. Ông đặt câu hỏi, hoàn toàn có thể nào rằng chủ nghĩa buổi tối ưu quá mức cần thiết là phải chăng và say đắm nghi? mang sử rằng một thợ săn phát minh sáng tạo ra trang bị mới có một thời cơ nhỏ, thì câu hỏi lãng phí thời gian (và năng lượng) vào trách nhiệm này trong khi không phải là 1 trong những quyết định đúng đắn. Tuy vậy nếu thợ săn rất có thể đổi mới, thì họ có thể mang lại cho chính mình và cỗ tộc của họ một lợi thế khác hoàn toàn trong bối cảnh cạnh tranh của họ.

Tương tự, đối với các dự án đầy tham vọng, hầu hết chúng sẽ thất bại. Nhưng mà nếu một trong các chúng thành công, điều đó hoàn toàn có thể mang lại mang lại họ lợi thế đối đầu và cạnh tranh trong thế giới kinh doanh. Chúng ta đã khi nào tham gia vào một trong những cuộc chuyện trò mà ai đó mong mỏi có một sản phẩm sáng sinh sản nhưng không sẵn sàng đồng ý rủi ro thất bại? Đây là một trong nghịch lý khác mà một số trong những người ko thể dịch rời quá khứ một cách hợp lý nên sau cùng họ đã gắn bó với hiện tại trạng.

Vì vậy, tại sao các đơn vị phát triển ứng dụng (và các nhà thiết kế) lại quá buổi tối ưu với các ước lượng của họ? Có vẻ như bẩm sinh khi sinh ra nó là con người và có một số trong những quá khứ tiến hóa cho tới nay. Một mặt, cực tốt là chúng ta nên gắn bó với đám đông vì tất cả sự bình an về số lượng. Khía cạnh khác, vận may ủng hộ những người dân mạnh dạn. Có vẻ như bài toán tối ưu hóa trên mức cho phép đã ở sâu trong DNA của chúng ta và chúng ta hãy chăm chú bảy xu hướng dự đoán thời hạn bên dưới.

Ảnh hưởng hoàn toàn có thể có của áp lực thời gian so với năng suất và unique là gì?

Ước lượng phần mềm có thể ảnh hưởng đến hiệu quả của một dự án. Điều quan tiền trọng nên biết là bất kỳ quy trình cầu tính nào bạn sử dụng đều có thể tác động đến công dụng của dự án. Và cứng cáp chắn bạn có nhu cầu thiết lập dự án của chính mình để thành công.

Dường như có mối đối sánh tương quan giữa mong lượng ứng dụng với năng suất và chất lượng của thành quả. Nan và Harter đã nghiên cứu và phân tích tác rượu cồn của áp lực giá thành và chiến lược lên thời gian và cố gắng nỗ lực của quy trình phát triển phần mềm và được xuất bản trong IEEE Trans Transaction on Software Engineering. đông đảo gì họ nhận biết là tác động của áp lực giá cả và định kỳ trình lên thời gian và nỗ lực cố gắng của chu trình ứng dụng như các đồ thị hình chữ U như dưới đây:

*

Một trong những giá trị mà chúng ta nên chú ý: khẩn trương dẫu vậy không vội vàng gáp. Đối với tác động rất có thể có đối với năng suất như được thấy vào sơ thứ trên, tôi suy nghĩ rằng áp lực cao khiến mọi tín đồ trở phải vội vã cùng năng suất sút xuống. Có vẻ như như áp lực cân xứng là một điều tốt. Để tất cả thể tác động đến hóa học lượng, nếu mong lượng phần mềm rất thấp (dự đoán thừa thấp) và nhóm không có đủ thời gian, chất lượng sẽ giảm xuống. Tuy nhiên khi họ có nhiều thời gian hơn để gia công việc trong dự án, quality sẽ tăng lên. Tôi suy nghĩ tất cả chúng ta đã cảm thấy điều đó.

Sự tín nhiệm hoàn toàn có thể có tác động đến cách ước lượng phần mềm?

Sau khi trao đổi về ảnh hưởng có thể bao gồm của áp lực thời gian đối với năng suất và chất lượng ở trên, có vẻ như như có một điểm đáng chú ý là áp lực thời gian nhất định có thể dẫn tới sự đánh thay đổi giữa năng suất và hóa học lượng. Vị vậy, từ quan điểm của những người làm ước lượng, cách rất tốt để nói vấn đề đó với ban thống trị (hoặc khách hàng hàng) là gì? và từ quan tiền điểm của những nhà quản ngại lý, làm gắng nào để bạn biết rằng người tính toán ước lượng là đủ tốt?

Đây là những câu hỏi thú vị với khi bọn chúng được giải quyết sớm bên cạnh đó có ảnh hưởng tích cực mang lại dự án. Vậy sự tin cậy (ở bạn khác) có thể có tác động đến giải pháp ước lượng ứng dụng không? vào một thử nghiệm vì Jørgensen thực hiện về việc áp dụng độ đúng đắn của những ước lượng nỗ lực cố gắng phát triển ứng dụng để truyền đạt sự không dĩ nhiên chắn, một số hiệu quả rất thú vị đã xuất hiện rất có thể giúp xây dừng lòng tin.

Trong demo nghiệm, mọi người được yêu mong xem xét mong tính thời hạn của 4 developer trong một nhiệm vụ. Và sau đó, chúng ta được hỏi, trong số bốn mong tính: Developer nào là bạn có năng lượng nhất? năng lượng thấp nhất? Đáng tin cậy nhất? cùng ít an toàn nhất? kết quả của nghiên cứu được trình diễn trong bảng bên dưới đây.

Developer

 

 

Ước lượng thời gian

 

 

năng lực

nhất

(%)

Năng lực

thấp

nhất

(%)

Đáng

tin cậy

nhất

(%)

Ít

đáng tin tưởng

nhất

(%)

ACần 1020 giờ làm cho việc631749
BCần 1000 giờ có tác dụng việc1113714
CCần từ bỏ 900 mang lại 1100 giờ làm cho việc741701
DCần trường đoản cú 500 mang đến 1500 giờ có tác dụng việc9551636

 

Kết quả cho biết Nhà phát triển C được coi là người có năng lực nhất và an toàn và tin cậy nhất. Ước lượng của họ sử dụng một phạm vi và khoảng cách không thừa lớn. Nhà phát triển D là fan kém năng lượng nhất với ít an toàn nhất tuy vậy ước tính của họ có tỷ lệ đúng cao nhất. Như Jørgensen vẫn viết trong cuốn sách của mình; không tất cả gì đáng ngạc nhiên, mang dù đáng tiếc là nhiều người thích sai đúng mực hơn là đúng gần đúng trong những dự đoán thời gian của họ. Cũng đều có vẻ như tự thí nghiệm, rằng nếu những dự đoán thời hạn quá bao gồm xác, mọi người sẽ không tin vào chúng. Bạn có thể xem thêm về nghịch lý tính chính xác để trở bắt buộc thuyết phục hoặc đúng: một câu hỏi về tính đúng mực ( to be convincing or khổng lồ be right: a question of preciseness).

Sử dụng thang đo fibonacci và size áo phông có đem lại hiệu quả?

Các thang đo fibonacci (fibonacci scales) và form size áo fonts (T-shirt sizes) là phần lớn kỹ thuật phổ biến trong phân phát triển ứng dụng Agile. Một hàng Fibonacci bắt đầu từ 1 và số tiếp theo trong hàng là phép cộng của nhị số trước đó. Tía số trước tiên của dãy là 1,2,3 (1 + 2 = 3), số thứ tư là 1,2,3,5 (2 + 3 = 5), v.v. Vị vậy, bạn xong xuôi với dãy số 1, 2, 3, 5, 8, 13,… Cỡ áo co dãn là một cách để thay thế số vào dãy bởi một đơn vị chức năng khác.

Cực bé dại (xs) = 1Nhỏ = 2Trung bình (m) = 3Lớn (l) = 5Cực béo (xl) = 8Cực cực đại (xxl) = 13Và như thế.

Xem thêm: Phần Mềm Proshow Producer 6.0, Hướng Dẫn Tải Proshow Producer 6

Vì vậy, bạn xong xuôi với xs, s, m, l, xl, xxl, v.v. Lý do đằng sau việc áp dụng kỹ thuật thang đo fibonacci hoặc kích thước áo phông có một vài ba lợi ích:

Thứ nhất, bằng phương pháp chỉ có một trong những giá trị để lựa chọn, nó có thể giúp quá trình ước lượng cấp tốc hơn vì tín đồ ước tính chỉ rất có thể chọn những giá trị này và bắt buộc đưa ra quyết định bằng cách sử dụng phán đoán chuyên môn của họ.

Xu hướng trọng tâm của phán đoán (central tendency of judgement) đã làm được Hollingworth công bố năm 1910 trên tập san Triết học, tư tưởng học và phương thức Khoa học. xu hướng trung tâm của việc phán đoán cho biết thêm rằng bọn họ có xu hướng bị ảnh hưởng bởi phần lớn gì được xem là trung bình của thang đo sẽ chọn. Do vậy, khi thang đo không đường tính (như thang đo fibonacci), khoảng tầm giữa rất có thể làm lệch công dụng theo hướng ước tính lạc quan. Bởi vậy, các phương thức thang đo fibonacci và kích cỡ áo phông có phải là tốt? kỹ thuật không thể kết luận giúp bọn họ với thắc mắc này dẫu vậy điều đặc biệt quan trọng là buộc phải nhận thức được xu hướng trọng trung tâm của phán đoán.

7 thành con kiến về ​​ước lượng thời gian bạn cần biết

7 thành con kiến ​​dự đoán thời gian này được trích dẫn trong chương 3 của cuốn sách Tiên đoán thời hạn Hiểu và tránh Chủ nghĩa Phi thực tế trong lập kế hoạch dự án và cuộc sống đời thường Hàng ngày ( Time Predictions Understanding và Avoiding Unrealism in Project Planning và Everyday Life). Trong sự nghiệp của chính bản thân mình với tứ cách là một trong kỹ sư phần mềm, tôi đã thử nghiệm qua những vấn đề này và khi đọc chúng được liệt kê theo thứ tự như vậy này, tôi đích thực thấy thú vị. Tôi liệt kê ra phía trên (với sự cho phép của Jørgensen). Nhưng bạn hãy xem thêm cuốn sách vì có tương đối nhiều thông tin nhưng rất khó để tóm tắt chỉ vào một bài xích viết.

1. Sai trái về đồ sộ nhóm

Một lực lượng lao động lớn gấp rất nhiều lần có xu hướng tạo nên sự sản lượng ít hơn gấp rất nhiều lần trên một đối chọi vị thời hạn do sự gia tăng nhu cầu phối hợp. Khi dự kiến việc sử dụng thời hạn cho các dự án có rất nhiều người, chúng ta cần bao gồm tỷ lệ công việc quản lý và điều hành và quản lý dự án to hơn và đưa định năng suất thấp rộng so với các dự án nhỏ hơn.

2. Hiệu ứng mỏ neo (anchoring effects)

Ảnh hưởng trọn của cảm giác mỏ neo (anchoring effect) trong bối cảnh dự đoán thời gian thường cực kỳ mạnh. Phương pháp bình yên duy nhất nhằm tránh các hiệu ứng mỏ neo là kị tiếp xúc với tin tức có thể chuyển động như một neo dự kiến thời gian.

Mỏ neo có nhiều hình dạng và bí quyết che dấu, ví dụ như ngân sách, kỳ vọng thực hiện thời gian, những từ liên quan đến những nhiệm vụ tinh vi hoặc đối chọi giản, thời hạn sớm và thậm chí là những nhỏ số hoàn toàn không liên quan khiến bạn chú ý trước lúc dự đoán thời hạn sử dụng.

3. Hiệu ứng trình trường đoản cú (sequence effects)

Dự đoán thời hạn trước của doanh nghiệp thường sẽ tác động đến dự đoán thời hạn tiếp theo của bạn. Dự đoán thiên về dự đoán trước đó, có nghĩa là dự đoán thời hạn của một nhiệm vụ trung bình sau một nhiệm vụ nhỏ có xu thế làm cho dự kiến thời gian quá thấp và dự đoán thời gian của một nhiệm vụ trung bình sau một trọng trách lớn có xu thế làm mang lại dự đoán thời hạn quá cao.

4. Hiệu ứng format (Format effects)

Khi khoản thời gian ngắn cùng phải thực hiện một lượng khủng công việc, format (format) yêu cầu ngược lại, “Bạn nghĩ bạn cũng có thể làm được từng nào trong X giờ?”, có xu hướng dẫn đến các dự đoán thời gian tối ưu hơn.

5. Cảm giác độ khủng (magnitude effect)

Các dự án to hơn thường bị đánh giá tốt hơn các dự án bé dại hơn (sai lệch về độ to – magnitude bias) nhưng với dữ liệu quan liền kề (trái ngược với các thí nghiệm được kiểm soát), mối contact giữa quy mô trách nhiệm và độ chệch dự đoán rất có thể là do yếu tố thống kê.

Các thí nghiệm bao gồm kiểm soát, tránh các vấn đề những thống kê của các nghiên cứu và phân tích quan sát, cho thấy rằng tất cả một rơi lệch về độ phệ thực sự tồn tại, ít nhất là đối với các dự đoán về các nhiệm vụ kha khá nhỏ.

Dự đoán rằng việc sử dụng thời hạn gần với khoảng trung bình của những tác vụ tựa như sẽ dẫn đến rơi lệch về độ phệ nhưng cũng rất có thể làm tăng độ chính xác của những dự đoán vào các tình huống có độ không chắc chắn là cao.

6. Độ dài của mô tả nhiệm vụ

Các mô tả nhiệm vụ dài thêm hơn có xu thế tăng ước lượng thời gian, nhưng những người dân có tay nghề họ rất có thể ước lượng phải chăng hơn.

7. Hiệu ứng đơn vị thời gian (Time Unit Effect)

Việc lựa chọn và sử dụng các đơn vị trong mong lượng thời hạn là sự việc quan trọng. Các đơn vị cụ thể có xu hướng dẫn mang lại dự đoán thời gian cao hơn. Trong bối cảnh mà các dự đoán thời gian tối ưu trên mức cần thiết là điển hình thì điều đặc trưng là kị dự đoán thời gian theo các đơn vị thời gian chi tiết, ví dụ điển hình dùng đơn vị chức năng là giờ thao tác làm việc cho các nhiệm vụ cần đến cả tháng để hoàn thành.

Việc lựa chọn đơn vị thời gian khi dự đoán khối lượng các bước phải xong trong một thời gian nhất định dường như không có công dụng hoặc ít, chẳng hạn như dự đoán khối lượng quá trình có thể hoàn thành trong nhì giờ đối với 120 phút.

Tóm lược

Với tất cả những thành kiến ​​và cạm mồi nhử của cầu lượng dự án công trình phần mềm, có vẻ như như đây là một nhiệm vụ bất khả thi để thực hiện ước lượng thiết yếu xác. Mặc dù nhiên, giữa những điều đặc trưng nhất bạn nên biết là bạn cũng có thể đoán trước được sự phi lý trí. Rất có thể tạo ra một quy trình ước lượng phần mềm nếu khách hàng nhận biết chính xác về việc này. Có không ít cuốn sách hữu dụng (như cuốn của Magne Jørgensen) có cái nhìn cân bằng về các thành loài kiến ​​và thói quen dự đoán của bọn chúng ta. Trong nội dung bài viết này, chúng ta đi sâu hơn một chút vào bốn thắc mắc sau:

Tại sao các nhà vạc triển ứng dụng (và những nhà thiết kế) lại quá tối ưu với các ước lượng của họ?Ảnh hưởng có thể có của áp lực nặng nề thời gian so với năng suất và chất lượng là gì?Sự tin tưởng rất có thể có tác động đến biện pháp ước tính phần mềm được coi không?Các cách thức thang đo fibonacci và kích cỡ áo fonts có mang đến điều tích cực?

Bằng cách nghiên cứu và phân tích và chăm chú một số phương thức khoa học, chúng ta cũng có thể hiểu được tư tưởng đằng sau các ước lượng trong dự án phần mềm. Và chúng ta biết rằng con người hoàn toàn có thể quá buổi tối ưu. Bọn họ cũng biết rằng áp lực đè nén về thời gian hữu dụng cho năng suất và hóa học lượng. Và nếu chúng ta có thể đưa ra các ước lượng đúng lúc, nó hoàn toàn có thể có tác động tốt mang đến dự án. Giờ đây, chúng ta cũng biết rằng cách chúng ta trình bày những ước lượng rất có thể xây dựng lòng tin, vấn đề này cũng rất có thể có tác động ảnh hưởng đến dự án. Cùng cuối cùng, chúng ta nhận thức được xu thế phán đoán trung trọng điểm khi sử dụng phương pháp thanh đo fibonacci và kích cỡ áo phông. Bên trên thực tế, có rất nhiều điều cần chăm chú như 7 thành kiến ​​dự đoán thời hạn mà bạn phải biết.

Với một số định hướng nền tảng giải thích lý do nguyên nhân ước lượng dự án ứng dụng lại cạnh tranh đến vậy, giờ đây chúng ta cũng có thể tiếp tục hành trình của bản thân để triển khai ước lượng về dự án phần mềm của chính bạn tốt hơn.

Bài của tác giả Eban Escott đăng bên trên codebots.com

Bạn có biết?

tham gia xã hội nhatroso.com trên Linkedin, Facebook và những kênh social khác có thể giúp bạn nhanh lẹ tìm được gần như chủ đề cải tiến và phát triển nghề nghiệp và update thông tin về bài toán làm IT mới nhất Linkedin Page: https://bit.ly/Linkedinnhatroso.com Facebook Group: https://bit.ly/nhatroso.comvn cơ hội việc có tác dụng IT : nhatroso.com