軟件開發項目中影響進度的因素很多,如人為因素、技術因素、資金因素、環境因素等等。在軟件開項目的實施中,人的因素是最重要的因素,技術的因素歸根到底也是人的因素。軟件開發項目進度控制常見問題主要是體現在對一些因素的考慮上。
常見的問題有以下幾種情況:
80-20原則與過于樂觀的進度控制
80-20原則在軟件開發項目進度控制方面體現在:80%的項目工作可以在20%的時間內完成,而剩余的20%的項目工作需要80%的時間。這個80%的項目工作不一定是在項目的前期,而可能是分布在項目的各個階段,但是剩余的20%左右的項目工作大部分是在后期。所以軟件開發在進入編碼階段后會給人一種“進展快速”的感覺,使得項目經理、項目團隊成員、用戶以及高層領導產生了過于樂觀的估計。有些領導看到軟件交付給用戶了,就一塊石頭落地“總算交差了”,同時又可能撤出一些被認為不必要的人力資源。但很多情況下這是為了對付用戶不合理的交付期限要求而采用的不得已的措施。這樣的結果是拖延了后期的工作,同時如果軟件還不成熟的話,會給用戶造成不好的影響。
范圍、質量因素對進度的影響
軟件開發項目比其他任何建設項目都會有更經常的變更,大概是因為軟件程序是一種“看不見”又“很容易修改”的東東吧,用戶是想改就改,造成需求的蔓延,項目經理有時還不知如何拒絕,加上要說“我能”的心理因素,一般都會答應修改。這樣集少成多,逐漸影響了項目進度。
如果某項工作在進度上表面上達到目標了,但經檢驗其質量沒有達到要求,則必然要通過返工等手段,增加人力資源的投入,增加時間的投入,實際上是拖延了進度。不管是從橫向或縱向來看,部分任務的質量會影響總體項目的進度,前面的一些任務質量中會影響到后面的一些任務質量。
資源、預算變更對進度的影響
資源,最主要的還是人力資源,有時某方面的人員不夠到位,或者在多個項目的情況下某方面的人員中途被抽到其他項目、或身兼多個項目、或在別的項目不能自拔無法投入本項目。還有一個很重要的資源,就是信息資源,如某些國家標準、行業標準,用戶可能提供不了,而是需要去收集或購買,如果不能按時得到,就會影響需求分析、設計或編碼的工作。其他資源,如開發設備或軟件沒有到貨,也會對進度造成影響。 預算其實就是一種資源,它的變更會影響某些資源的變更,從而對進度造成影響。