Bir proje süresini tahmin ederken kabul edilebilir hata marjı nedir?


23

Çalıştığım şirket% 10'luk bir maksimum hata payına sahip olmayı hedefliyor. Analistlerin% 10'dan daha az veya daha fazla bir tahminde bulunmamalarını bekliyorlar.

Ne düşüneceğimi bilmiyorum, çünkü karşılaştırılacak bir şeyim yok.

Az ya da çok, çok yanlış tahmin edersek ölçmek için iyi bir temel ne olabilir? Nasıl (% olarak) kadar olduğunu düşünüyorum tamam kaçıran için?


3
Hata payının , tahmini bir araya getirerek ekip tarafından belirtilmesini ve tahminde sunulmasını istiyorum. Genel olarak, sadece kısa bir ürün açıklamasıyla ve hiçbir katı gereklilikle, hata için yüksek bir marja sahip olmayacağınız bir tahminde ilk atışınız. Proje gittikçe daha fazla tanımlandıkça, daha az hata payı ile yeni tahminler yapılabilir.
Jesse C. Dilimleyici

3
Çok fazla UNDER bütçesine gelirseniz birisinin başının derde gireceğini mi söylüyorsunuz?
pdr

@pdr Sonuçları hakkında hiçbir şey söylemediler.
Tulio F.


2
Steve McConnell'in "Yazılım Tahmini" kitabına bakmanızı tavsiye ederim. Burada +/-% 10'luk bir hassasiyetin mümkün olduğu - ancak sadece iyi kontrol edilen projelerde mümkün olduğu gibi bir haberleşme var. Bu 1998 yılında Jones tarafından yazılmış bir kitaba atıfta bulunuyor.

Yanıtlar:


25

Siz ve meslektaşlarınızın daha önce yaptıklarına çok benzer bir şey tahmin etmediğiniz sürece, +/-% 10 saçma iyimser. Yönetiminiz ya yazılım konusunda çok fazla deneyime sahip değil ya da Yazılım Tahmini için Büyük Sınırların farkında değiller . Bu kağıda eşlik eden birtakım destekleyici materyaller vardır ve çok fazla cezalandırma bulunabilir.

Rubik Küp: Tipik bir yazılım projesinden çok daha basit bir sistemi inceleyelim. Sen edebilirsiniz 20 hamlede hiçbir pozisyon çözmek max. Ancak tahmin ettiğinize göre, çözümü vermeden önce sadece belirli bir küpü birkaç dakika boyunca inceleyebilirsiniz. İyi bir tahmin verebilir misiniz? Hayır, bazen bir işlemi tahmin etmek, işlemi yapmaktan daha uzun sürer.

Başka bir basit sistem: Pinokyo. Tahta bir otomat, yalan söylerken burun parçası büyür. Pinokyo dinlenirken ve "Burnum büyüyor" dediğinde ne olur? Bazı sistemler tahminlere uygun değildir, kararsızdırlar.

Bu iki sorun çoğu yazılım sisteminde yerleşiktir. Bu nedenle, hiçbir zaman +/-% 10'a yakın tahminler alamazsınız.

Tavsiyem ağır dolgulu bir tahmin yapmak, projeyi olabildiğince hızlı yapmak için bir köle gibi çalışmak ve daha sonra% 10 veya altında olana kadar meşgul görünmek. Bu noktada, muhteşem bir başarı ilan edin.


Tavsiyem ağır dolgulu bir tahmin yapmak, projeyi olabildiğince hızlı yapmak için bir köle gibi çalışmak ve daha sonra% 10 veya altında olana kadar meşgul görünmek. Bu noktada, muhteşem bir başarı ilan edin. Dilbert'inizle birlikte avatar gibi benim için de doğru, teşekkürler.
Tulio F.

6
@tofs - Kesin olarak sormak (doğru olarak hemen hemen aynı şeyi hemen hemen hemen yapmazsanız), sizin için bir uyarı bayrağı olmalıdır. Beklentileri gerçek dışı iyimser ve siz onlarla tanışmayan siz olacaksınız. Onlara anlatmak daha iyi, tahminlerde aşırı güvene dayalı olarak çok para harcadıktan sonra. Ayrıca, elden önce bunu anlatırsanız, bahane vermek gibi görünüyor.
psr

@psr Kabarcıklarını kırmam gerekecek sanırım, sorun şu ki, yukarıdan geliyor. Yapamazsam, ne yazık ki ağır yastıklı tahminlere başvurmak zorunda kalacağım .
Tulio F.

3
Rubix Küp analojisi yalnızca küpü çözerken yarıya kadar poz verirseniz çalışır, üst yönetim tüm yüzlerdeki düz renklerin çok Web 1.0 olduğuna ve bunun yerine NoSql Ajax çizgileri istediklerine karar verir. Ve sonra kullanıcılar size bir yedinci yüzü olmadıkça kullanamayacaklarını söylerler, üzerinde bir kedi resmi olan ...
Tacroy

1
Bir keresinde şirketim tarafından bana tahminler için +/-% 10 hata payı kabul ettiklerini söyleyen başka bir şirkete dış kaynaklı kaldım, bu saçma bir şekilde doğru. Her görevin önceden tahmin edilmesini ve tahminde bulunmadığımı söylemeye cesaret edersem sızlanmasını istediler. Beklentilerimi karşılamak için özel zamanımı kullandım, sonunda işbirliğimizi düzelttiler ve bazı hata düzeltmelerimin başarısız olduğunu (belki 50 üzerinden 3'ü), böyle insanların acımasız bir zihniyetine sahip olduğunu ve asla kendilerinden birine davranmayacağını söylediler. onlar için sadece dış kaynaklı bir adamdım. Benim için harika bir ders, asla özel zamanını kullanma.
Ivan G

3

Her türlü "hedef hata payı" konusunda tereddütlü olacağım çünkü bu gerçekten projeye bağlı. Yeni bir CRM sistemini kurmanın, yapılandırmanın ve özelleştirmenin ne kadar süreceğini, kimsenin ne tür özelleştirmelerin gerekli olacağından ve ne tür bir iş süreci değişikliğine ihtiyaç duymayacağından emin olamayacağınızı tahmin etmeye çalışıyorsanız ve Şirketin benzer büyük projeler geçmişi yoktur, hata payınızın oldukça büyük olması gerekir (yani, 18 ay +/- 50% alacağını ve 9-27 ay alıntı yapacağını tahmin edebilirsiniz). Proje ilerledikçe, teknik özellikler daha netleşir, iş süreçleriyle ilgili kararlar alınır, geliştiricileriniz daha rahat eder, vb. Bu hata marjları daha da zorlaşmalıdır. Ne zamandır 101'inci temel e-ticaret sitesini kurmanın ne kadar süreceğini tahmin etmeye çalışıyorsanız ilk 100'den iyi bir geçmişe sahipseniz, çok daha doğru bir tahmin vermeyi beklersiniz. Yine de çoğu proje ortada bir yere düşecek.

Şimdi, bir aralıktan ziyade tek bir rakamı alıntılıyorsanız, cevap, aralığı tahmin etmeye başlamaktır, böylece tahmin yapan kişi, tahminlerinin ne kadar doğru olmasını beklediklerini belirleyebilir.


Bruce Ediger bir analistin soruna nasıl yaklaşabileceği konusunda iyi bir noktaya değindi. Patronumla tartışırken kullanabileceğim bir şey söylediğini düşünüyorum.
Tulio F.

1

Bir iyi başlangıç dayalı biri olacağını gerçek veriler topladığınız.

Bunu yapmanın ilk adımı tüm tahminleri kaydetmektir . İkinci adım, gerçek sonuçları kaydetmektir . Dürüst olun, gerçek olanı “ayarlamak” için cazip olmayın. Bu bilgileri yeterince toplayın ve tahminlerinizin ne kadar iyi olduğunu istatistiksel temele dayanacak verileriniz olacak. Bunun kimi tahmin edeceğini ve çalışmayı kimin yaptığına bağlı olarak değişebileceğini / değiştireceğini unutmayın. Sadece bunu yaparak, başka bir saf çöp olan bir 'hata payı' vermeniz beklenebilir.

Orada da bitmiyor; Tahminlerin kapalı olmasının neyin sebep olduğunu analiz etmek gelecekteki tahminlerinizin doğruluğunu iyileştirmeye yardımcı olabilir. Not: Hala tahmin olarak kalırlar ve bu nedenle, yalnızca tahminlerdir .

Tahmin aynı zamanda ilk tahminden sonra bitmez; Bu, proje ilerledikçe daha fazla bilgi kazanıldıkça ayarlanabilecek bir şeydir, ilerledikçe olası hata payını azaltır. İletişim konusunda ne kadar açık olursanız, sürprizler tartışılır - insanların daha az şaşırmasına neden olur ve projede ya da müşterilerin beklentilerinde ayarlamalar yapmak için daha fazla zaman sağlar.


İkincisi, belki de hata payını ele almanın daha iyi bir yolu, sadece% hata paylarından ziyade ' dahili güven ' ifadesidir. Tahmini teslim tarihini tekil bir tarihe değil, bir güven aralığına dayandırmak yerine.

PERT , istatistiksel akıl yürütmeye dayanan tahminde bulunulması için bir çerçeve örneğidir. Örneğin:

"Şimdi bildiklerime dayanarak, 8 ayda verebileceğimiz% 90 güven seviyesine sahibiz. 10 ayda% 95 güven, 2 yılda% 99 güven vb."

Burada not edin: Seni ne kadar güvende istiyorlarsa, tahmin de o kadar büyük olur. Karmaşıklığa bağlı olarak (diğer bir deyişle, ne kadar doğru olabileceğiniz),% 80 ile% 90 arasında küçük bir fark olabilir veya çok büyük olabilir!


Son olarak - İyi şanslar;) 'Tahminlerde +/-% 10 olacak' gibi bir şey belirleyebileceğiniz yazılım tahmininde 'maksimum hata payı' nı çözerseniz, geri kalanı için bir gişe filmi hazırladığınızdan emin olun yazılım endüstrisinde bize. Office Space ve The Matrix: D arasında bir haç gibi bir şey düşünüyorum


1

Bu aslında projenin büyüklüğü ve karmaşıklığına bağlı.

Projenizin tahmini 1 hafta söyleniyorsa -% 10 makul. +/- 1/2 gün demektir.
1 ay ise% 10 titrek - benim deneyimimden 1 ay içinde ne keşfedeceğinizi tahmin etmek imkansız.

Bir aydan fazla - tüm bahisler kapalı :).

Bunlar geliştirici başınadır - 4 geliştirici takımı için 1 hafta == 1 ay.

4 geliştirici ekip için, çoğunlukla 1 ay içinde yapılabilecek özelliklerin listesini bulmak ve bu özellik için% 10 dahilinde olmak iyidir. Ardından, gelecek ay için yeniden tahmin edin.

Burada bazı saf varsayımlarda bulundum

  1. Tüm geliştiriciler paralel olarak çalışabilir.
  2. Test etmeyi düşünmedim - test etmek için biraz zamanları olmalı
  3. Tüm geliştiriciler eşittir - Frontend, Backend, Tasarımcılar vb ...

Bunları hesaba katmak zorundasın .. ama bu genel fikir.


1

Çok fazla değişken var:

  1. Proje ne kadar sürecek?

  2. Proje nasıl yönetilecek? Şelale? Çevik? SCRUM?

Şelale sorusundan farz ediyorum. Bu durumda, bir marj talebi verilen oranın bir kısmından başarısız olmanız beklenir.

Cevap bazı Çevik metodoloji ise, özellikle SCRUM gibi bir şey. Marj yüzdesinin ne olduğu gerçekten önemli değil. 2 haftalık Sprint'te% 50 hata payı 1 hafta, 1 haftalık Sprint ise her ikisi de en kötü durum senaryolarında 2,5 gündür. Bunun nedeni, teslimat tarihinin her Sprint'te yeniden tahmin edilmesi ve daha az veya daha az yerine zamanla daha doğru bir hale gelmesidir.

Waterfall ile% 50 hata payı da duyulmuyor, 12 aydan fazla süren 6 ay süren bir projeden oluşmuyor ve gerçekten keşfedilmiyor / kabul edilemiyor.


0

Yazılım ekiplerine öncülük ettiğim zaman, kabaca Cretaceous / Tertiary sınırlarının etrafında, tahminlerde% +/- 10'luk bir başarı elde etmeye yaklaştık. Çok tehlikeli hafızam işe yararsa yaklaşık% +/- 15 idi. Ancak bunun nedeni, daha önce yaptığımız şeyleri tahmin etmemizdi: A tarafından baytları alıp tanıdık bir dil kullanarak, bizim tarafımızdan tasarlanan gerçek bir ortamda aşina olduğumuz nispeten basit gerçek zamanlı iletişim donanım yazılımı. Birkaç evden uzakta, çocuklar tarafından kendi bünyesinde tasarlanan donanımlarla konuşuyorlar. Anlamıyla için yukarıdaki tema üzerinde hafif varyantları, bir sürü yıllar .

Normal yazılım projesi tahmininde bu tür bir hata oranının elde edilmesini beklemek açıkçası gülünçtür . Görünüşe göre başarıldığını gördüğünüzde, bunun nedeni ya fazla tahmin edilmiş ve yastıklı (bütçeyi kullanmak için ekstra şeyler ve evcil hayvan projeleri yapıyorlar) ya da akşamları ve hafta sonları telafi etmek ve zamanları telafi etmek için köpekler gibi çalışmış olmalarıdır.


0

Muhtemelen% 300 olanı doğru duymuşsundur?

Aslında onu kullanıyorum. Tamamen yıllarca gördüklerime dayanıyor. Bir veya iki gün duyduğumda, gerçekten yapılması gereken bir hafta veya daha fazla . Ve Test Edildi. Tüm ortamlarda. Belgeler güncellendi. Kullanılabilirlik test edildi. Performans test edildi. Yük test edildi. Birkaç saat daha çok bir güne benziyor.

Sanırım şu sebeplerden dolayı tahminlerde gerçekten kötüyüz:

  • Başkalarına yardım etmek
  • Kesiliyor
  • Yeni insan eğitimi
  • Diğer şeyler geliyor
  • Hastalanmak veya hastalanmak
  • Ayrılan insanları kapsayan
  • Tatile ya da zamana ihtiyacım var
  • Başkaları tarafından dikkatini dağıtmak
  • Diğer gruplar tarafından tutulmak
  • Gerçekçi olamayacak kadar iyimser olmak
  • Aralıklı sınama hataları üzerinde çalışmak için zaman ayırmamak
  • Test için zaman harcamaz, özellikle de otomatikleştirilmiş testler yazma

Dolayısıyla, en yüksek düzeyde,% 300 tahminden daha iyi tahminlere ihtiyaç duyan iş insanlarıyla, sonunda yaptığımız şey makul derecede iyi tahminler yapmak, ancak daha yüksek ve daha genel olma pahasına. Versiyon 1 sadece 1 alan değiştiren kullanıcı grubu için olsa bile "Kullanıcı düzenleme fonksiyonuna sahip olacağız".

O gelince "bir proje süreceğini tahmin etmek ne kabul edilebilir hata payı nedir?" Birçok Çevik ortamlarda kullanılan bu yaklaşımın, bir alfa veya beta sürümünü canlı hale getirmek için asgari işlevselliğin ne olduğu sorusunu değiştirmeye yardımcı olduğunu ve ardından üzerinde yineleme yaptığını anlıyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.