2009-09-14 48 views
1

可能重複:
What can I do to get better at estimating how long projects are going to take?計算的時間來完成一個項目

雖然我主要興趣在iPhone的項目,但每個人都歡迎來回答這個問題。

所以我想知道你如何計算一個特定項目的完成時間?那麼我知道這取決於你的經驗,但大部分時間(從過去3個月的經驗來看),地獄中有許多未知數,你事先不知道,只有在你開始工作時纔會浮出水面在這種情況下,你如何處理你的客戶,並給他們正確的預算和時間表,在哪個項目將完成?在項目開始後,事實證明你的技術中有一個特定的部分是你不知道的,而且必須學習它,所以它只是在中間彈出,如何說服客戶延長截止日期和預算?

我不確定是否已經提出正確的問題,請幫助我糾正問題。謝謝。

+2

項目時間估計已經擊敗了已經在SO上。 – EBGreen 2009-09-14 16:23:50

+0

@EBGreen 什麼是SO? – itsaboutcode 2009-09-14 16:24:46

+0

StackOverflow.com – EBGreen 2009-09-14 16:25:41

回答

0

有幾種標準技術可以用於功能點分析等,但您可以使用它們獲得一些漂亮的數字。

體驗正在運行的項目並瞭解團隊的能力是您最好的選擇。

2

不幸的是,爲了估計好,你不僅需要有經驗編程,還需要經驗估計。每當你估計過高或過低時,想想出了什麼問題,你的估計會隨着時間的推移而改善。作爲一個經驗較少的開發人員,我發現需要我,最好的情況下,只要我樂觀地希望它會。平均情況下,長3到4倍。更糟糕的情況......好吧,它從那裏下山。

也許這會有幫助嗎? http://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=show&ixPost=12774

0

有很多的變數在這裏 - 項目,客戶,開發,管理,你的技術水平,其他參與的經驗水平,技術類型等

由於這些有很大的不同,從個人到個人,項目到項目,以及公司到公司,都不會有任何現成的估算人員可以預測這一點。

最好的方法是創建個人或組織範圍的項目,需求,團隊,歷史需求的歷史數據庫。由於需求和團隊隨着項目的發展而變化,您需要所有這些數據的歷史視圖。

然後,您可以嘗試基礎上,inital估計,預測最終的項目時間的估計,或者從初步估算預測最終的項目時間的估計,然後從最終的項目估計最終項目時間成本等

如果您沒有足夠的數據做出好的估算,那麼這些估計就不準確了。但是,隨着時間的推移,你應該能夠做出更好更好的估計。除此之外,你必須把它放在褲子的位置上 - 編寫項目計劃,確保所有項目都已經計算好了,然後填寫所有優先項目,然後填寫每個項目的工作估算值,運行PERT,並且得到您的預計項目日期。它應該在正確的因子100以內:)

當然,如果你是一個有經驗的項目經理,並且你已經把事情分解成可以根據過去的經驗準確估算的工作項目,那麼你可以拿出來有一個相當好的估計。這是經典的項目計劃。不過,我認爲基於歷史數據的預測評估應該會在長期內產生更好的估計。

2

如果可以,將項目劃分爲幾個階段,並讓階段完成時告知客戶。

事先你可以告訴他你預計在哪一天結束一個階段。所以他總是知道你是遲到還是及時。

如果出現問題,很容易告訴他是什麼原因導致了延遲,以及爲什麼您必須延長截止日期。

當您將其分解爲較小的項目階段時,通常更容易估計階段所需的時間並更好地查看進度。您越早可以告訴您的客戶您無法在最後期限內完成更好的工作。

通過讓他成爲開發的一部分(通過讓他看到每個階段的結果),通常會更容易溝通時間問題。至少這是我的看法。

0

將發展的每一步分解成儘可能小的細分市場。如果您可以將整個事件分成短於一天的分段,那麼您將知道自己何時在線或離線。與此同時,你會發現你可能需要更多時間,因爲你會看到項目的各個部分,你不知道他們需要多長時間,因爲你以前從來沒有這樣做過......那些是可能導致你落後的事情。在半天時間內(或者你覺得你需要什麼)在這些時間點進行研究加上完成任務的時間。這不僅可以讓你有足夠的時間去學習所需的技能,而且如果你恰好比你的日程安排更快完成研究和實施,你就會領先。而當你打到另一個更強硬的研究領域時,你會有一點額外的時間......有望

......但是,它確實帶有經驗。你工作得越多,或者系統或系統類型越好,你可以估計得越好。一切都是新的,是你最好的猜測,並且你會盡可能提前做好計劃......或者扔掉大量不準確的猜測!