成。根據(jù)評估結(jié)果,我們可以根據(jù)需要對某些重要的項目進(jìn)行更細(xì)致的預(yù)算評估。例如,我們可以為我們需要的基礎(chǔ)構(gòu)架提供一個精略評估,而不僅僅是一個關(guān)于人員和時間的宏觀預(yù)算評估結(jié)果。
三、如何進(jìn)行宏觀預(yù)算評估
當(dāng)我們開始個全新的項目時,所面對最多的就是這種預(yù)算評估方式。新的技術(shù)、對領(lǐng)域知識和技術(shù)不熟悉的團(tuán)隊,或是對需求不清楚。而對付這些情況最好的預(yù)算評估方式就是宏觀預(yù)算評估。
1. 有效地評估任務(wù)所需的時間。對于最后形成的任務(wù),需要定義它們所需的時間和資源。這些量化后的指標(biāo)和基于團(tuán)隊和項目的指標(biāo)不同,這此指標(biāo)和數(shù)據(jù)將在下一次評估時幫助我們獲得更好的效果。例如,我們可以設(shè)置低復(fù)雜度和工作量少的任務(wù)需要最多需要一周的時間,而中等復(fù)雜度和小工作時的任務(wù)需要三周的時間等等。
2. 打破項目是由許多不同需要的任務(wù)組成的束縛。嘗試著為項目盡可能地增加任務(wù)。典型的做法是按著設(shè)計和實現(xiàn)軟件的一般方法來提取出新任務(wù),如分析、設(shè)計、實現(xiàn)、演示、測試、bug核對、文檔、發(fā)布以及技術(shù)支持等,看看如果這些步驟在每個任務(wù)中都要求去做,那么就可以考慮將它們提出來做為一個新的任務(wù)。
3. 使用兩個指標(biāo)來評估每一個任務(wù):復(fù)雜度(分為高、中、低三個檔次)和工作量(分為大、中、小三個檔次)。一個并不復(fù)雜的任務(wù)仍然可能是一個工作量很大的任務(wù)。例如,將paper form上的信息保存在數(shù)據(jù)庫中可能需要數(shù)周的時間。一個非常復(fù)雜的的任務(wù)的工作量也可能不大,但仍然需要花很多時間來完成,例如對一個數(shù)據(jù)庫的性能優(yōu)化。對于復(fù)雜的任務(wù),一般當(dāng)其非常大時,拆分成小的任務(wù)后分配到許多人或團(tuán)隊時是非常困難的。而簡單的任務(wù)就很容易地被分拆和分配。
四、如何進(jìn)行粗略預(yù)算評估
當(dāng)我們對項目的任務(wù)有了一個好的想法,并知道如何去做的情況下,可以使用這種預(yù)算評估。
1. 最好讓實際參與項目的人來進(jìn)行這種評估工作。最后可以將這些參與評估的人的評估結(jié)果累加,從而得到最終的預(yù)算評估。
2. 確保評估函數(shù)的自變量為:時間、人員和資源需求。
3. 對分拆后的任務(wù)盡可能地考慮到它們的細(xì)節(jié)部分。在上面曾經(jīng)提到過。按著典型的軟件設(shè)計和實現(xiàn)軌跡,如分析、設(shè)計、實現(xiàn)、演示、測試、bug核對、文檔、發(fā)布以及技術(shù)支持,并考慮這些任務(wù)是否為每個任務(wù)都需要的,對做這項工作是非常必要的。我們應(yīng)保證每個時間單位為八十小時或更少的時間。