如何處理項目預估量與實際工作量相差較大的情況?
做項目過程中,特別是在項目經理資歷和經驗不足時常會出現項目預估量與實際工作量之間相差較大,比如預估工作量遠小於實際工作量,而且所預定的人手遠遠不夠完成當前工作,一時之間又找不到合適的有經驗的人來完成工作,而當前參與工作的人已經處於超負荷工作狀態,此種情況各位有什麼行之有效的方法來解決嗎?
所以我說,不是人人都能做項目經理的,這是個靠經驗和執行力吃飯的技術活。技術、經驗、執行力缺一不可。
我們來看看你目前的困境:- 項目經理能力不夠勝任;
- 人手不夠,超負荷工作;
- 工作量大;
- 時間緊迫,不能按照預期完成工作;
又是一個資源、工期、質量(潛在的)的矛盾問題。
我想起了一個合作過的外包團隊:項目經理是承擔項目部分代碼工作的資深管理;有一個可以對客戶開放的項目進度管理平台,客戶和項目成員隨時可了解項目進度和目前可交付物;嚴格按人工時收費;開發人員絕不加班,理由是不能保證充沛的精力做第二天的工作,這樣人工時的計算將不準確;拒絕沒有能力承接的項目。
回來看問題,用一個不能勝任的項目經理是最大的失誤,這是很多野路子項目的一貫做法,認為項目經理不是技術活,就做做計劃做做報表,這種項目經理在團隊里沒有權威,申請不到資源,談不上協調。
如果發生了以上情況還不能讓你做出改變,那麼我覺著就讓項目死吧,沒救了。
換項目經理,或者BOSS和技術總監加入項目管理團隊,來彌補項目經理的能力不足:- 正確評估項目現狀;
- 必須實現最重要的幾個功能;
- 每個功能的工作量評估;
- 對於不確定的項目最好的方法是小周期迭代式開發;
- 項目的里程碑和檢查點;
- 預估風險。
再來看目前的人手,是否能夠滿足以上功能的開發?
是否有資金擴充人員?由於有些開發不能做到並行,擴充人員是否能達到效果?工期是否有可能延期?項目管理團隊共同來做出決策,然後堅決執行和定期檢查和調整。員工超負荷工作,疲勞戰術做不出高質量的產品。
我在實際工作中有個經驗分享一下:用最好的程序員寫最核心的代碼,能保證BUG最少,後期維護的代價最小。檢查一下你的人員配置是否最高效。項目預估量與實際工作量相差較大,並不是造成項目整體延遲的主要原因,只要估算的工作足夠準確,但並不需要很精確,仍然有方法能夠保證項目如期完成。
不同的項目類別,不同的項目規模,不同的交付要求,項目的不確定性等級等採用的項目管理方法都會有所不同,並沒有一概而論的方法。僅就一般而言(假設-項目團隊能力足夠,僅僅是時間資源及任務安排存在挑戰)造成項目拖延主要有以下原因:
1、不良的多任務工作,虛耗大量的時間;2、稽延效應,任務早完成並不會使項目提前完成,而任務延遲將會使項目整個拖延;3、過度管理,例如,過度精細的項目計劃、過多的會議/彙報,而造成注意力分散、時間浪費;4、單個任務中預留過多的安全時間;5、關鍵資源受限等等。而針對以上問題,可以採取的舉措是:
1、考慮約束資源,基於約束資源進行排程,並找到整個項目的關鍵鏈;2、壓縮具體關鍵鏈上的任務的預估時間,將時間作為整個項目的緩衝;3、項目經理注意力聚焦在關鍵鏈的進度狀態,對於發生在關鍵鏈上的障礙及問題及時投入資源解決,確保整體流暢;4、看板管理,避免團隊成員的多任務及過度管理等。
另外,好的項目計劃及項目經理,能夠在項目「驗屍」時候解釋死因。你需要基於計劃記錄一路走來的歷史,問題的記錄、爭議的記錄、決策受質疑的時候當時做的決議等。感謝邀請!
題主的困境主要是資源和需求的矛盾,樓上很多知友從it項目管理角度來回答,我從純管理的角度來回答。
1. 出現這種情況,久戰不利,無論對項目質量,還是對士氣,如果沒有合適的人來參與,建議先關閉;
2. 如果無法關閉,建議想方設法調動大家的積極性,堅持一下,比如適時的獎勵,戶外活動,吃飯唱歌,讓大家有階段性的休整,切勿持續疲勞作戰,每個階段都有一個興奮點,打起來才有快感;3. 項目經理重新評估一下項目進度,工作量,向上級老大申請資源,或跟客戶解釋申請一下延期,當然此為下策。事後一定要有總結,主要原因還是項目經理不過關,如果是新手以後就別讓他擔任如此重要的項目,先參與進來,循序漸進地做,項目經理的水平決定了項目的水平,尤其是管理水平,不是說業務能力強,能分工協調就是好項目經理的,還得懂得調動成員的積極性,在艱苦的條件下打持久戰,是一個優秀項目經理的特質。項目預估不準是很正常的事情,特別是項目越大開發周期越長,最後偏差的程度就會越大。
我的建議是把項目儘可能的細分成若干小項目,三天到一周的工作量, 這樣可以及時發現進度預估的錯誤,並且及時調整(要加班也是每周周末加了)把需求拆分成小的需求,這樣估算的偏差會減小;把需求的任務拆分為更小的顆粒,估算的偏差會減小。還有:對需求理解的正確性、實現思路在編碼前的評審....
根本沒有這樣的解決方案!!! 從問題上看有這幾個前提條件:
- 預估工作量遠小於實際工作量
- 人手遠遠不夠,且都已經處於超負荷工作狀態
- 找不到合適的有經驗的人
問: 行之有效的解決方案
請問,如果在沒有新的人手添加的情況下,能夠按時地將項目完成,那麼就不存在「預估工作量遠小於實際工作量」這種情況了。這個不是前後矛盾嗎!因此,必須將前提條件進行修改。從前提條件看,第三種條件是最好解決的問題,其他的條件都已經無法改變了。我的建議是,立即調用一名優秀的項目經理進入項目組,充當救火隊員,輔助(或者接替)前項目經理的工作。我對優秀項目經理的定義是必須既懂項目管理又懂技術,而且這兩樣都必須很強。 救火隊員進入項目組後,第一件事就是必須查明項目不能按時完成的原因。以我幾次救火的經驗看,主要有以下幾個情況:- 需求理解錯誤。別人讓你蓋個煙囪,結果你挖了口井。這樣的錯誤,對項目來說是災難性的。
- 項目預估和實際偏差太大。
- 盲目引入新技術。有些程序員特別喜歡「時髦」的技術。只要一有什麼新的技術開始流行,他就想把它引入項目中去。整個項目組,只有他一個人懂。而他自己本身能力有限,對新技術掌握不全面,一旦出現問題,無法通過互聯網找到解決方案的話,就不知如何是好了。整個項目就卡死在這個瓶頸上。這時候,你就會聽到這種人到處抱怨「xx技術(框架)實在是太爛了「。大家看看自己身邊是否有這樣的人呢。
- 客戶需求不斷的變化。整個項目組成員都被牽著鼻子走。
- 核心技術人員的離職。
以上這些原因都是由於前任項目經理失職所造成的。救火隊員所要做的,就是將他未做好的工作,重新再做一遍。針對上面主要的5種情況,分別採用以下的處理方法。
- 重新進行需求分析。對項目的需求要有徹底的理解。當需求分析結束後,按照開發流程進行後面的工作,如系統設計,代碼開發等。在這些過程中,盡量復用已經完成的功能模塊。
- 重新預估項目,重新制定開發計劃。並將該情況通知老闆。由你的老闆來決定是調用更多的資源來幫助你,還是和客戶進行溝通,延遲項目交付時間,還是最終放棄這個項目。
- 幫助該程序員,看看是否能夠解決這個技術問題。如果暫時無法解決,考慮將新技術從項目中去除掉,採用項目組成員都比較熟悉的技術來替代。審核項目中所使用的技術,必須保證是項目組成員都已掌握的技術。技術新不新,高級不高級並不是很重要。
- 針對客戶的不斷變化的需要,項目經理必須強勢。在客戶提出新的需要時,你必須告之對方該需求對項目將會產生影響,項目的成本也將隨之上升。因此,合同的金額必須增加,項目的交付日期也將延後。讓客戶自己選擇,增加不增加該需求。千萬不要答應免費做哦。
- 救火隊員就是新的核心技術人員了。
此外,還有以下幾項以供參考:
- 每天上午,白板前,小組站立會議,大概20分鐘左右。每個人報告自己的工作進度,目前碰到的困難,今天的工作計劃。對於碰到困難的組員,看看能不能立刻給出解決方案。如果不行,救火隊友在會議結束後,立刻過去輔導,可以pari program。
- 有限度的加班,不要到達每個人的極限,這樣團隊堅持不了多久的。
- 好的設計,可以讓你以極小的代價來應付各種需要變化。
- 一定階段後,小版本發布。將部分功能演示給客戶看。一般情況下,客戶都會提出各種意見或者新需求。你需要告訴客戶,這些變動將會延長項目交付時間。至於延長多少,我一般會多加個1周或者2周的時間。客戶如果同意,那麼你就為自己多爭取了1到2周時間。這個方法,我可是屢試不爽哦。
以上問題其實涉及到項目管理中的項目計劃,需求管理,風險控制,組間協調,系統設計等等,如果展開來說,恐怕要說一大堆了,這裡就不再啰嗦了。
當救火隊員是非常辛苦的,但是收穫也是很大。它可以讓你在公司裡面迅速建立極高的威望。每當你進入一個在泥沼中掙扎的項目組時,你會從他們疲憊的面孔中看到驚喜,聽到他們的歡呼。當你和他們共同努力完成項目後,你也會交到更多的朋友。這個問題似乎顯示了題主對項目管理理解的一個誤區,不應該把重點放在出了這種情況怎麼處理,應該著重關注如何避免問題中出現的情況,這才是項目經理的職責所在。真出現這樣的困境實際上已經晚了,能做的只是一點補救措施。無論什麼原因,預估的工作量如果遠小於實際工作量某種意義上是項目經理的失職。不過話說回來既然問題是如何處理,理應包括事前處理和事後處理,所以說說如何避免也不算跑題。一個項目中的關鍵要素就那麼幾個:有多少工作,都有什麼人來做,工作的期限是什麼,公司願意為此項目負擔什麼成本。對於一個正常的項目來說,拋開哪些講政治、刷陰謀、有人背後拆台的事情不說。那麼項目前要做的:1 評估工作量,了解工作內容。
- 這個是項目經理的基本功,經驗越多估算的越準確。要了解項目都包括哪些工作,大概都需要什麼水平的人做。
- 如果對工作不了解怎麼辦?那就找個經驗豐富或者了解某一項相關工作的人幫著你估算。或者參考你們公司歷史上做同類項目的實際工作量。
- 如果一個這樣的人都找不到並且我們公司從來沒做過這樣的項目怎麼辦?(那隻能說你們公司很有勇氣,什麼活都敢接)根據你對自己智商的評估把工作量在你第一次估算的結果加上10%到80%不等。
2 確定項目人員。
- 這個要部門和公司充分溝通,越早確定項目人員越有利,對人員越了解越有利,包括什麼人能挑大樑,什麼人只能幹粗活,什麼人可能項目做一半就跑。如果實在缺人不得不招人的話,這樣的新人最好不要太多。
- 如果一個老人沒有全招新人怎麼辦?(你們公司領導勇氣非凡)把招來的人放在一起,至少用一周的時間做demo做演示,實際上是拿人做實驗。看看到底誰能幹活,能幹什麼活。
- 你必須要了解項目成員水平,整個項目組必須有人要了解這些工作要怎麼做。
3 計算工期。
- 注意這裡是你計算的工期,不是客戶要求的工期。
- 用前面估算的(工作量/人員)×1.1或者1.2=估算工期。
- 為什麼×1.1?這是你整個項目順風順水的時候突發情況會佔用你的項目時間。如果前面算的都不準,那這裡就比較悲劇了,穩妥的做法只能是再往後延。
算完了以後你回過頭看看客戶實際要求的工期,如果差的太多乾脆就別做了。公司非逼你做的話也可以,問問有什麼相應的激勵機制(多半是錢),重賞之下必有匹夫,咬咬牙還是可以做。如果什麼額外的都不給呢?那……另請高明吧。
項目中要做的:1 拆分工作- 項目經理的基本功,工作拆分、計量然後分配。水平高的人做有難度的工作,水平差的做重複勞動。按照項目工期從最後一天開始一點點的倒排,第一次任務拆分不要安排加班,直到所有工作在指定時間下都有專人負責為止。
- 如果有人分配的工作做不來怎麼辦?那就培訓或者給一些學習時間還是讓他做。
- 如果他就是學不會呢?那就調能做的人來。
- 如果調都調不來呢?那就從外面招人。
- 如果招都招不到呢?……那你還做這個項目只能說你活該。
- 如果分配的工作可以做但是要超時呢?那需要適當安排加班。
2 工作量發生變化
- 這種情況很常見,各方面原因都有。
- 一開始沒做對造成返工怎麼辦?沒說的,自己的問題重來吧,這個時間就是那×1.1裡面0.1的。
- 返工要反90%怎麼辦?說明之前根本誤解了工作內容,項目基本等於失敗只能補救。
- 一個新人誤操作把東西全刪了怎麼辦?要看是否有備份,新人是否培訓了。如果都有,那簡單按項目紀律處理。都沒有?老老實實加班找公司要人,把這個臨時難關度過去。
- 客戶要加工作怎麼辦?和公司領導和銷售商量,是否控制客戶的新需求。如果控制?沒說的儘力往回頂,你頂不回去叫銷售來一起頂,都頂不回去叫老闆一起頂。如果不控制?那就加人延期加錢,就算客戶不給錢也要找公司要錢。
3 人員變化
- 有人做一半不做了跑路怎麼辦?談心挽留之。
- 如果還是跑呢?(早你就應該發現這樣的人)盡量安撫找人來做工作交接,然後招人調人。
4 驗收。
- 工作拆分了也安排下去都有人做了就完了么?沒完,你必須按期或者按檢驗點驗收別人的工作。否則他說做了100%實際才完成10%最後你會欲哭無淚的。
- 我一個人驗不過來怎麼辦?找質管測試監理什麼的和你一起驗。
- 驗收了,根據安排確實做不完怎麼辦?加人加班,沒什麼好說的。
如果上述都做到了,還出現題目的情況怎麼辦?那以我的能力真幫不到您了。
補救無論前面怎麼說,總之現在就是出了災難性的狀態怎麼辦?其實補救的辦法相當有限。- 盡全力要人,要不到人就招人。哪怕付出對新人的培訓時間成本也要招人。
- 拉上銷售和領導努力和客戶溝通儘可能的延期。
- 如果不能延期就和客戶溝通在這個時間點之前只上那些必須的工作,不是最緊急的工作往後延。總之全力壓縮工作。
- 向項目成員許諾,熬過這段放長假大大的加班費出國旅遊。儘可能的保持積極性,避免跑路。但千萬注意不要加班加出工傷,不要出人命。
- 所有工作向項目成員的工作讓路,他們不能被打擾不能分心。不允許任何人打斷項目成員的工作直接與項目成員溝通,有事找項目經理,工作一律項目經理安排。
挖坑之前讓你自己,還有讓你的上級明白一點,在質量、成本、時間中,你只能同時擁有兩樣。如果大坑已經挖成,且預計無法填上,還是爬出來,洗洗乾淨走吧。
1. 把deadline推後;
2. 把要實現的feature list砍掉一般,只留下必要的;3. 保留12個人以下的團隊,超出了就分組;4. 每一次大的迭代周期不要超過半年。在你不是很有經驗的情況下,工作量預估的原則是:在你估計的較寬鬆情況下能完成的基礎上,翻一倍。為了避免以後預估工作量出問題,要把前後每一個環節都想到,並且留有機動時間。
如果團隊已經負荷很滿了還不能按時完成工作,這個時候大家需要鼓勵,千萬不要使用添油戰法。說下個人的一些經驗(僅限於互聯網)
做項目其實就是一個短期的產品實現過程按步驟說下:
①確認項目目的②確認需求(定版後,如無必要不可修改)③確認需求中的必須訴求和非必須訴求④和產品、設計、前端、技術、測試等互相確認相對應訴求的工期(通常工期浮動在半個工作日左右)⑤根據確認的工期設立節點⑥根據節點,多跑動,勤快點總結一句話:列出所有能想到的有可能遇到的事情,並列出相應解決辦法,根據時間節點去分配一般不會出現大的誤差。項目工作量評估不是要和下面的人一起評估,甲方乙方雙方達成一致才能進行么?而且爭議浮動也需要再一定範圍內。怎麼會遇到題主說的問題。
如果是遠大於預估,說明項目預算,計劃就有問題了。基於當前的情況重新估算所需人天。分析差異原因,合同中有不明確地方?範圍蔓延?對風險預估不足?然後再考慮怎麼解決,是否需要延期;不延期需要增加多少資源;項目是否有緊急備用金,可否啟用;項目利潤會有多大影響;實施方法是否可以變更;考慮好了,和老闆客戶去談,做合同變更啥的。有問題早解決,明顯加班加點也不行,就別這麼趕了,別把人又逼走了。
樓上都說的是互聯網的,樓主沒有說一定是互聯網行業。我原來呆過的公司就是承包項目了,沒人了馬上招人就很好解決了,主要核心人員在就行。
推薦閱讀:
※為什麼風暴英雄的版本號跳的這麼快?
※考PRINCE2有用么?
※什麼情況適合使用LDAP?
※如何評價網易雲課堂微專業《互聯網項目管理》課程?
※如何用OmniPlan?
TAG:項目管理 |