第7章項目進度安排與跟蹤_第1頁
第7章項目進度安排與跟蹤_第2頁
第7章項目進度安排與跟蹤_第3頁
第7章項目進度安排與跟蹤_第4頁
第7章項目進度安排與跟蹤_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第二部分

第7章項目進度安排與跟蹤

廈門大學軟件學院林坤輝第7章項目進度安排與跟蹤7.1基本概念實現(xiàn)一個大項目之前必須完成數(shù)以百計的小任務(wù);這些任務(wù)中有些是處于主流之外,其實現(xiàn)不會影響到整個項目的完成時間;其他任務(wù)則位于“關(guān)鍵路徑”之上,如果這些“關(guān)鍵”任務(wù)的進度拖后,則整個項目的完成日期就會受到威脅。項目管理者的目標是定義所有項目任務(wù),識別關(guān)鍵任務(wù),然后跟蹤關(guān)鍵任務(wù)的進展。管理者必須建立一個具有一定詳細程度的進度表,使得項目管理者能夠監(jiān)督進度,并控制整個項目。軟件項目進度安排是一種活動,它通過將工作量分配給特定的軟件工程任務(wù),而將所估算的工作量分布于計劃好的項目持續(xù)時間內(nèi)。進度是隨著時間的改變而不斷演化的;首先建立一個宏觀的進度安排表;該進度表標識所有主要的軟件工程活動和這些活動影響到的產(chǎn)品功能;隨著項目的進展,宏觀進度表中的每個條目都被精化成一個“詳細進度表”。于是(完成一個活動所必須實現(xiàn)的)特定軟件任務(wù)被標識出來,并進行進度安排??梢詮膬蓚€不同的視角考察軟件開發(fā)項目的進度安排:第一個視角,基于計算機的系統(tǒng)的最終發(fā)布日期已經(jīng)確定(而且不能更改)。軟件開發(fā)組織在這一約束下將工作量分布在預先確定的時間框架內(nèi)。第二個視角,假定大致的時間界限已經(jīng)討論過,但是最終發(fā)布日期是由軟件開發(fā)組設(shè)定的,工作量以一種能夠最好地利用資源的方式加以分布,且在對軟件進行仔細分析之后才定義最終發(fā)布日期。第一種情況發(fā)生的頻率遠遠高于第二種情況準確安排進度的重要性

進度安排的準確程度常常比成本估算的準確程度更重要.

成本如果超支,尚可通過其他方法彌補;

但如果進度安排落空,會導致市場機會喪失,用戶不滿意,其損失將更大。

進度安排的方法:(1)依靠以往類似項目的經(jīng)驗;

(2)把最適當?shù)某杀?、時間、人員、工作量聯(lián)系起來;(3)考慮各階段的實現(xiàn)方法,以及可能遇到的風險;(4)合理分配工作量;(5)利用有效方法嚴密監(jiān)控項目進展情況。進度安排的基本原則劃分:項目必須被劃分成若干可以管理的活動和任務(wù)。為了實現(xiàn)項目的劃分,對產(chǎn)品和過程都需要進行分解。相互依賴性:各個被劃分的活動或任務(wù)之間的相互關(guān)系必須是確定的。有些任務(wù)必須順序發(fā)生;而其他的則可以并發(fā)進行。有些活動只有在其他活動產(chǎn)生的工作產(chǎn)品完成時才能夠開始,而其他的則可以獨立進行。時間分配:必須為每個被調(diào)度的任務(wù)分配一定數(shù)量的工作單位(例如,若干人天的工作量)。此外,必須為每個任務(wù)指定開始和結(jié)束日期。工作量確認:每個項目都有預定數(shù)量的人員參與。在進行時間分配時,項目管理者必須確保在任意時段中分配給任務(wù)的人員數(shù)量不會超過項目組中的人員數(shù)量。定義責任:每個被調(diào)度的任務(wù)都應(yīng)該指定某個特定的小組成員來負責。定義結(jié)果:每個被調(diào)度的任務(wù)都應(yīng)該有一個定義好的結(jié)果。對于軟件項目而言,結(jié)果通常是一個工作產(chǎn)品(例如一個模塊的設(shè)計)或某個工作產(chǎn)品的一部分。通常將多個工作產(chǎn)品組合成“可交付產(chǎn)品”。定義里程碑:每個任務(wù)或任務(wù)組都應(yīng)該與一個項目里程碑相關(guān)聯(lián)。當一個或多個工作產(chǎn)品經(jīng)過質(zhì)量復審并且得到認可時,標志著一個里程碑的完成。7.2人員與工作量之間的關(guān)系每種軟件項目估算技術(shù)最終都歸結(jié)為對完成軟件開發(fā)所需人月(或者人年)的估算.完成項目的時間與投入項目中的人員的工作量之間存在著高度非線性關(guān)系。在項目后期增加人手通常產(chǎn)生一種破壞性影響,其結(jié)果是使進度進一步拖延。7.3

為軟件項目定義任務(wù)集合軟件過程模型都是由一個任務(wù)集合組成的;一個任務(wù)集合包括一組軟件工程工作任務(wù)、里程碑和交付產(chǎn)品;為了完成某一特定項目就必須完成這些任務(wù);一個項目所選擇的任務(wù)集合必須為最終獲得高質(zhì)量的軟件產(chǎn)品提供充分的規(guī)程要求,但同時又不能讓項目組負擔不必要的工作.軟件開發(fā)組必須知道哪些任務(wù)是必須完成的;管理者必須確定目前是否有人能夠進行這一工作任務(wù)(計劃);為了制定項目進度安排,必須將任務(wù)集合分布在項目時間表上;主要任務(wù)可以被用于定義項目的宏觀進度表;必須將宏觀進度表精化來創(chuàng)建一個詳細的項目進度表。精化工作始于將每個主要任務(wù)分解為一組子任務(wù)(以及相關(guān)的工作產(chǎn)品和里程碑)。7.4選擇軟件工程任務(wù)

7.6定義任務(wù)網(wǎng)絡(luò)任務(wù)和子任務(wù)之間基于其間順序而存在相互依賴關(guān)系。當有多個人參與軟件工程項目時,多個開發(fā)活動和任務(wù)并行進行的可能性很大。必須協(xié)調(diào)多個并發(fā)任務(wù),以保證它們能夠在后繼任務(wù)需要其工作成果之前完成.由于并行任務(wù)是異步發(fā)生的,計劃者必須確定任務(wù)之間的依賴關(guān)系,應(yīng)該注意那些位于關(guān)鍵路徑之上的任務(wù),為了保證整個項目的如期完成,就必須保證這些任務(wù)能夠如期完成.任務(wù)網(wǎng)絡(luò)“任務(wù)網(wǎng)絡(luò)”是一個項目的任務(wù)流程的圖形表示。該網(wǎng)絡(luò)有時被用作在自動項目進度安排工具中輸入任務(wù)序列和依賴關(guān)系的機制。任務(wù)網(wǎng)絡(luò)的最簡單形式(當創(chuàng)建宏觀進度表時使用)刻劃了軟件工程主要任務(wù)。圖7-3顯示了一個概念開發(fā)項目的任務(wù)網(wǎng)絡(luò)示意圖。網(wǎng)絡(luò)圖和甘特圖是項目時間管理中常用的兩種圖示。利用網(wǎng)絡(luò)圖和甘特圖,可以清楚地表示出項目中所有活動的先后順序、依賴關(guān)系以及每個活動的持續(xù)時間。網(wǎng)絡(luò)圖將項目中的每個活動表示為圖中的結(jié)點,并用表示活動先后順序的箭頭將結(jié)點連接起來。在結(jié)點的上方或下方,可以標注出該活動的預計歷時、預計開始時間和預計結(jié)束時間。下圖顯示了一個軟件開發(fā)項目的項目網(wǎng)絡(luò)圖。圖中每個活動上方,都標出了該活動預計的開始時間和結(jié)束時間。任務(wù)網(wǎng)絡(luò)舉例任務(wù)網(wǎng)絡(luò)舉例在上圖中,整個項目從6月1日開始,到8月15日結(jié)束,其間包括了許多并發(fā)的活動。如“編碼輸入”、“編碼更新”、“編碼查詢”和“編寫使用手冊”等活動都從6月16日開始進行。連接不同并發(fā)任務(wù)的箭頭構(gòu)成了網(wǎng)絡(luò)圖中的許多條并行的“路徑”。例如,從“設(shè)計”到“編碼查詢”到“單元測試”再到“系統(tǒng)測試”就是網(wǎng)絡(luò)圖中的一條路徑。如果把某一條路徑中所有活動的持續(xù)時間之和當做該路徑的“長度”,那么,就很容易找出網(wǎng)絡(luò)圖中長度最長的那條路徑來。一般地,把網(wǎng)絡(luò)圖中最長的路徑稱為項目的關(guān)鍵路徑。找出項目關(guān)鍵路徑的意義在于,關(guān)鍵路徑上的所有活動在項目中持續(xù)時間最長。如果要壓縮整個項目的執(zhí)行時間,那么,就必須首先縮短關(guān)鍵路徑上某個活動的持續(xù)時間。當改變了關(guān)鍵路徑的持續(xù)時間后,網(wǎng)絡(luò)圖中其他的路徑有可能會變成新的關(guān)鍵路徑。WBS工作分解結(jié)構(gòu)(WorkBreakdownStructure,WBS)是項目范圍管理中常用的范圍分析技術(shù)之一。編制工作分解結(jié)構(gòu)的主要目的是將項目的可交付成果分解成較小的、更易管理的單元,直到每個單元的可交付成果足夠具體,易于管理,并足以支持未來的項目活動(如計劃編制、執(zhí)行、控制和收尾等)。工作分解的步驟包括:(1)確定項目的主要交付成果。(2)確定在每個可交付成果的層次上,是否能編制出恰當?shù)馁M用和時間估算。(3)確定可交付成果的組成元素。(4)在每個組成元素上重復步驟(2)。上圖中,最頂層是項目本身,即完成項目的產(chǎn)品或者服務(wù)所包含的工作總和。第二層是項目的主要可交付成果,但不是全部的產(chǎn)品和服務(wù)。在主要的可交付成果中,至少要包括;主里程碑,這是項目階段完成的標志;對項目進展有重大影響的標志性可交付成果等。第三層是可交付的子成果。當選擇可交付的子成果時,可以根據(jù)完成成果的活動特點,從不同的角度進行選擇。對每個可交付成果的分解,需要不斷地進行,直到可交付成果小到可管理的最低層,這時,這個可交付的子成果又被進一步分解成一系列的工作任務(wù)(工作包)。第四層是最底層的可交付子成果。第五層是工作任務(wù)(工作包)。工作任務(wù)是WBS結(jié)構(gòu)中管理所需要的最低層的信息,是項目中最小的、可控制單元。在這個層次上,可以滿足用戶對交流溝通和監(jiān)控的需要,也是項目經(jīng)理、項目工作人員管理項目所需要的最低層次。每個工作任務(wù)是一些短期的活動,有明確的起點和終點,需要消耗一定的資源,占用一些成本。同時,每個工作任務(wù)又是一個可控制點,可以進行進度的監(jiān)督和檢查。總體上說,WBS結(jié)構(gòu)對于一個有效的工作系統(tǒng)來說是個關(guān)鍵。結(jié)構(gòu)以層次或樹型進行構(gòu)造,使最底層代表詳細的信息,而且其范圍很大,并逐層向上收攏。即,WBS底層是管理項目所需的最低層次的信息,能夠滿足用戶對交流或監(jiān)控的需要;再往上的層次一層將比一層窄,而且為在于另一層次的用戶提供信息。

WBS結(jié)構(gòu)設(shè)計的原則是必須有效和分層,但不必構(gòu)建太多的層次,層次過多并不有利于管理。對一個大項目來說,4到6個層次就足夠了。在WBS的每一層中,必須考慮信息如何流入下一個層次。原則上,當從一個層次到另一個層次的轉(zhuǎn)移應(yīng)當以自然狀態(tài)發(fā)生。此外,還應(yīng)考慮到使結(jié)構(gòu)具有可以隨時增加的靈活性。舉例例如,可以把一個組織“文娛活動”的項目分解為下圖所示的工作分解結(jié)構(gòu)。在該結(jié)構(gòu)圖中,組織“文娛活動”項目的總體項目目標被依次劃分為1級-3級共三個子層級,每個層級中包含一系列分解后的項目目標。在每個分解目標上面,用基于層級的編碼表示出該工作目標的層級和隸屬關(guān)系,這樣的代碼也被稱為工作分解結(jié)構(gòu)代碼(WBS代碼)。依據(jù)工作分解結(jié)構(gòu),在項目管理過程中可以更容易地將整個項目細分為一系列工作任務(wù),并依據(jù)工作任務(wù)的劃分制定詳細的進度和費用計劃。PERT與CPMPERT和CPM(關(guān)鍵路徑)兩種方法都提供項目工作定量劃分的工具,能支持軟件計劃者:(1)確定關(guān)鍵路徑:決定項目持續(xù)時間的任務(wù)鏈;(2)通過使用統(tǒng)計模型為單個任務(wù)建立最有可能的時間估算;(3)計算為特定任務(wù)定義其時間“窗口”的邊界時間。邊界時間的計算對軟件項目進度的安排十分有用。任何項目都會有一條總的關(guān)鍵路徑。關(guān)鍵路徑是為確保項目按所需日期完成而必須密切跟蹤的路徑。

下圖所示的項目網(wǎng)絡(luò)圖中,關(guān)鍵路徑是從“設(shè)計”到“編碼輸入”到“單元測試”再到“系統(tǒng)測試”的這條路徑。甘特圖(GanttChart)可以用任務(wù)網(wǎng)絡(luò)或者任務(wù)大綱的方式輸入工作分解結(jié)構(gòu)。然后為每一項任務(wù)輸入工作量、持續(xù)時間和開始時間。此外,每一項任務(wù)都必須被分配給特定的人員。上述輸入的結(jié)果之一是產(chǎn)生“時間表(TimelineChart)”,也叫做“甘特圖(GanttChart)”??梢詾檎麄€項目建立一個時間表,也可以為各個項目功能或各個項目參與者分別開發(fā)各自的時間表。甘特圖也叫條形圖,它用坐標系中的一個橫條表示一個活動,橫條起于活動的開始時間,止于活動的結(jié)束時間,橫條的長度表示活動的持續(xù)時間。甘特圖中一般不畫出活動之間的依賴關(guān)系。但在需要時,也可以用橫條之間的箭頭表示活動之間的依賴關(guān)系。舉例條形圖和活動網(wǎng)絡(luò)是在軟件進度計劃中最常用的網(wǎng)絡(luò)計劃技術(shù)。條形圖描述了由誰具體負責某個模塊及該模塊的開始時間和結(jié)束時間;活動網(wǎng)絡(luò)則表示了組成該軟件項目的不同活動及它們的持續(xù)期和它們之間的相互依賴關(guān)系。下面就一個例子來說明網(wǎng)絡(luò)計劃技術(shù)的具體應(yīng)用。該項目的建設(shè)共分為12個任務(wù),分別以:

T1,T2,……,T12來表示,各個任務(wù)的持續(xù)時間及彼此之間的關(guān)系如下表所示:舉例從表中可以看出任務(wù)T3依賴于任務(wù)T1,這說明任務(wù)T1必須要在任務(wù)T3開始前完成。在實際工作中,表中所列的所有任務(wù)的持續(xù)時間都考慮了一些約束條件以便應(yīng)付一些不可預測因素造成的時間延遲。根據(jù)表中所列的數(shù)據(jù),可以以活動網(wǎng)絡(luò)的形式來表示各任務(wù)的開展情況。如下圖所示。圖中表示了哪些任務(wù)可以同時實施,哪些任務(wù)必須按順序進行,其中矩形表示任務(wù),該任務(wù)的持續(xù)時問標在矩形上面;圓形表示階段里程碑,標出了該里程碑期望完成的日期。從一個里程碑進入到下一個里程碑時,后一個里程碑前邊的活動必須要完成,例如任務(wù)T9要直到T3和T6完成后,到達里程碑M4時才能開始。整個項目的持續(xù)時間,以活動網(wǎng)絡(luò)圖中最長的路徑即關(guān)鍵路徑(CP)來度量,在本項目中關(guān)鍵路徑如下圖中陰影所示,即任務(wù)(活動)T1、T3、T9、T11、T17構(gòu)成的部分。關(guān)鍵路徑是整個項目進度安排所依賴的一系列仟務(wù)(活動),關(guān)鍵路徑上的每個任務(wù)出現(xiàn)延遲都會導致整個項目的延遲,而不在關(guān)鍵路徑上的活動,則存在一定的可延遲時間,但超出許可范圍后,也會導致項目的延遲.7.8掙值分析掙值分析是項目費用管理中常用的一種費用控制方法。掙值(EarnedValue,也譯為盈余值)可以較為客觀地顯示出項目計劃工作量和實際工作量之間的偏差,確定項目費用是否按計劃執(zhí)行。掙值分析是衡量項目執(zhí)行情況的一種有效手段。為了進行掙值分析,首先從項目的費用預算中計算出,在項目過程里,到某個時間點為止,預計的費用綜合是多少。我們把在規(guī)定的時間內(nèi)所有計劃執(zhí)行活動的己批準預算費用總和稱為計劃工作預算成本,記作BCWS。計劃工作預算成本BCWS如果將項目過程中每個時間點的BCWS連成一條曲線,就可以得到上圖所示的BCWS曲線圖。上圖表示該項目前1個月的預計費用總和是4,前2個月的預計費用總和是8,該項目完成需要12個月,完成時的預計費用總和(即該項目的總預算費用)是100。我們把BCWS曲線作為費用控制和分析的基準。與此同時,在項目執(zhí)行過程中,我們定期記錄項目到當前時間為止的總費用、我們把后一費用稱為己完成工作實際成本,記作ACWP。如果把項目過程中獲得的每個時間點的ACWP連接在一起,就可以得到下圖所示的ACWP曲線。己完成工作實際成本ACWP在上圖中,我們記錄了項目實施過程中1到8月的ACWP數(shù)據(jù)。這個數(shù)據(jù)與項目的預算費用有所出入。例如,項目原計劃第一個月的總費用為4,而實際總費用為2;項目原計劃前8個月總費用為64,而實際總費用為68。

BCWS曲線和ACWP曲線的偏離反映了項目預算費用和實際費用的偏差。但這一偏差不能完全說明項目的費用和進展情況。例如,項目前8個月的實際費用比計劃費用略多,這并不代表項目實際的花費超出了預算;這是因為,我們不知道項目前8個月實際完成的工作量是多少。如果前8個月實際完成的工作量相當于項目計劃中前10個月的工作量,那么,項目前8個月的實際費用為68,這其實是很大的節(jié)?。ㄔ谟媱澲校瓿?0個月的工作量需要費用84)。為了更準確地反映項目實際進程與計劃進程的偏差,我們再引入已完成工作預算成本的概念。即,首先記錄到某個時間為止,項目已完成的工作量,然后根據(jù)我們的費用預算,把這個工作量轉(zhuǎn)換成預算費用,也就是找出在項目預算中,要完成這些工作量,需要多少費用。已完成工作預算成本通常被記為BCWP或EV,這個數(shù)值也就是我們在前面所說的掙值(盈余值)了。在下圖中,我們畫出了項目的BCWP曲線。該曲線用預算費用數(shù)據(jù)表明了項目在每個時間點的實際工作量。例如,項目前8個月的BCWP為54,這說明,項目前8個月完成的工作量相當于預算費用花到54時對應(yīng)的預算工作量。已完成工作預算成本BCWP有了項目某個時間點的BCWS、ACWP和BCWP數(shù)據(jù),我們就可以對項目的費用和進展情況進行定量的分析了。例如:項目的費用偏差CV=BCWP-ACWP

費用偏差考慮到了工作量的因素,客觀地反映了項目在某一時刻預算費用與實際費用的偏差情況。費用偏差為正,表示項目目前的費用比較節(jié)省,在預算之內(nèi);費用偏差為負,表明項目在費用控制上超出了預算。在上面的例子中,第8個月末項目的成本偏差為:54-68=-14,這表明,項目完成了預算費用為54的工作量,實際費用卻高達68,超出預算。

項目的進度偏差SV=BCWP-BCWS

進度偏差用費用數(shù)據(jù)反映了項目實際進度與計劃進度的偏離情況。進度偏差為正,表明項目前一階段的工作提前完成;進度偏差為負,表明項目前一階段的工作有所延誤。在上例中,第8個月末的進度偏差為54-64=-10,這表明,項目應(yīng)當完成預算費用為64的工作量,但實際只完成了預算費用為54的工作量,項目出現(xiàn)了延誤。

費用執(zhí)行情況指數(shù)CPI=BCWP/ACWP

費用執(zhí)行情況指數(shù)反映了項目在前面的執(zhí)行過程中,費用的節(jié)省或超支情況。在上面的例子中,第8個月末的費用執(zhí)行情況指數(shù)為54/68=79.4%。

進度執(zhí)行情況指數(shù)SPI=BCWP/BCWS

進度執(zhí)行情況指數(shù)反映了項目在前面的執(zhí)行過程中,進度上的提前或延誤情況。在上面的例了中,第8個月末的進度執(zhí)行情況指數(shù)為54/64=84.4%。

預測完工費用=總預算費用/CPI

利用項目當前的費用執(zhí)行情況指數(shù),可以估計項目的預測完工成本。例如,在上例中,項目總預算費用為100(即項目結(jié)束時的BCWS),則項目的預測完工費用為:

100/79.4%=125.9,這一數(shù)據(jù)表明,如果按照現(xiàn)在的費用超支趨勢發(fā)展下去,到項目完成時,項目的總費用將達到125.9,超支25.9。利用掙值分析法,可以在項目的執(zhí)行過程中隨時監(jiān)控項目的實際費用是否存在節(jié)約或超支的情況,也可以預測項目完工時的總費用。根據(jù)掙值分析的結(jié)果,可以適時調(diào)整項目的費用和進度計劃,以保證項目的總費用不超出預算。跟蹤的對象:規(guī)模工作量和成本計算機資源進度風險軟件工程技術(shù)活動7.9項目跟蹤7.10

工作量和成本跟蹤利用MicroSoftProject進行工作量和成本管理和跟蹤。7.11MSProject背景知識四大核心知識領(lǐng)域:范圍、時間、成本和質(zhì)量Project能夠?qū)崿F(xiàn)的項目管理:范圍管理:使用WBS技術(shù),對項目進行分解,并可以在任何層次上進行各種信息的匯總。時間管理:使用主要技術(shù)就是關(guān)鍵路徑法對進度計劃進行管理.成本管理:自底向上

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論