如何有效地控制項目進度

來源:互聯網
上載者:User

      軟體開發的項目周期大體分為3個階段:擷取需求和定義產品、開發與測試、部署和營運。

     在擷取需求和定義產品階段,需要防止的不是進度太慢而是過快、過草率。特別是對於創業公司的產品經理來說,很可能因為看到開發人員無事可做而感到壓力,所以儘快完成產品定義,而沒有充分瞭解市場和競爭者資訊,沒有與夥伴充分溝通,沒有做深入的思考。這些因倉促而隱藏的問題,發現得早則導致開發階段大量返工,發現得晚則導致產品上線後不受歡迎。常聽一些人說現在互連網開發,講究快速迭代和敏捷,邊做邊想,返工也正常。這是一個誤解。快速迭代指的是將不同版本之間的周期縮短,小步快跑,而不是在一個版本的周期內來回折騰。

    
在開發與測試階段,專案管理重在跟蹤進度和保持溝通—用整合和示範跟蹤進度,基於Bug溝通問題。
要做到各個模組外部介面相對清晰穩定,並儘早完成各個模組間的整合,最晚不超過開發週期的1/4時間。第一次整合之後,就應該開始每日整合和每周示範。每日整合使得測試團隊每天能同步測試最新的代碼,協助Team Dev儘早發現問題並及時瞭解技術細節上的進度;每周示範使產品經理、專案經理和管理層能從使用者的角度感受產品,使他們對產品有信心。整合和示範是專案管理的心跳,合理利用它們,有助於及時把握項目的健康程度。無論開發流程多敏捷,工程師能力多強,記錄和跟蹤Bug都是必不可少的。Team Dev和測試團隊的溝通都應該基於Bug,才能言之有物。開發工程師每次提交代碼都應該記錄是針對哪個Bug的,每日工作簡報都應該寫今天關/開了哪些Bug。要在每日晨會(站著開,一般15分鐘內)時說好,今天打算解決哪些Bug,其中有哪些點不清楚,需要和誰溝通。

       在後期部署和維護階段,要快速響應。考驗的是團隊成員的責任心和抗壓能力。系統營運工程師要深夜工作,因為部署可能要在流量低的時候進行;專案經理要保持能隨時溝通,做出快速而準確的決定,鼓勵團隊並做出表率;一旦出現高危害Bug,Team Dev要在24小時內準備好補丁。Amazon的做法比較有趣:在產品剛上線一段時間內,開發工程師要保持24小時開機。如果自己負責的模組中出現高危害Bug,那麼很可能會在深夜被系統營運工程師叫醒。這樣不僅能保證快速響應,還能讓工程師意識到:前期代碼不好好寫,後期就別指望能好好睡覺了。

每個專案經理都希望能有效地控制項目進度。但這件看似簡單的事情,實際操作起來卻常常不盡如人意。即使在成熟的大公司裡,有著完善的專案管理流程,配備著一流的團隊,項目延期事件還是頻頻發生。這裡分析主要的三個原因。

常見的原因之計劃不清

很多專案經理,項目完成得很好,計劃也做得很漂亮,卻總是計劃趕不上變化。原因在於,有些時候,按工作量預估的發布日期卻得不到領導的同意,領導有時會說我們現在就是和時間賽跑,這個項目必須在某某時間發布。這將致使計劃推倒重來,一切都要趕進度。而對於其他團隊成員來說,這份計劃沒有同他們商量,無異於強壓任務。項目還沒開始,抱怨聲就不絕於耳。因此,項目工具選得好、任務劃分細緻清楚只是做好技術的基礎,更重要的是專案計劃要得領導和團隊成員的認同,並願意為之全力以赴。總之,想做好專案計劃,要做好以下三點。專案計劃前,先和產品經理、上級領導溝通好,確定這個項目的輕重緩急。團隊成員要達成一致意見,專案經理不可獨斷專行。專案計劃要細化到天、功能點要責任到人、確定裡程碑點。

常見的原因之需求問題

需求中的功能點要在PRD(產品需求文檔)中羅列清楚,商務程序要寫得完整清晰,互動細節要體現在視覺稿中。要組織項目組所有成員參加PRD評審,評審時要針對具體的問題,給出明確的處理意見。暫時不能確認的問題,問題跟進人要在限定時間內給出反饋,專案經理可以制定問題跟進表格。項目進行中的需求變更,盡量在前期提出。在專案管理的過程中,當前期的需求和計劃都確
定後,專案經理不能只顧著跟進開發與測試的進度,也要階段性地和需求方多溝通,讓他們及時反饋意見。不要等到臨發布時,產品經理跑過來說“我要的不是這樣的,這裡要改一下”。永遠不要把問題留到最後一分鐘,要超前一步,留有餘地。下面是一個真實的案例。案例情景:該項目的整個周期為2個月,有3輪功能測試。當第3輪功能測試結束時,也就是即將進入預發布階段時,產品經理才給出使用者反饋並要求按使用者的反饋修改。改動的地方涉及到頁面的樣式、文案、SQL語句和校正邏輯等,總共可能有20多個檔案要被改動。專案經理建議只改頁面的樣式和文案,其他部
分先不要改,等下次升級維護時再改,否則可能會影響發布。而在多次交涉無果的情況下,開發人員只能硬著頭皮修改,測試人員只能再重新測一輪。雖然大家努力地按需求方的要求做了,但項目延期已不可避免了。

常見的原因之溝通不暢

為某項目臨時組建的團隊往往來自不同部門,團隊成員之間不熟悉,此時,要為團隊建立一個溝通通道,確保溝通順暢。常用方式為:建立一個內部網路空間,所有文檔資源統一存放,供團隊成員共用;利用即時聊天工具,建立一個項目群,每天通報項目進度;建立項目郵件組,所有變更達成一致後,發送郵件確認;每天要開15分鐘晨會,每周一次周會,每周發送項目周報;跨Team 專案,最好申請獨立的項目室,所有項目群組成員坐在一起工作,降低溝通成本。

重視細節

專案管理的目的是能夠按照預定的成本、進度和品質要求順利地對人員、產品、過程和項目進行分析和管理。在專案管理中,有些細節需要引起專案經理的重視。

根據經驗規劃

即先做少量的規劃,再根據實踐過程中得到的資訊來做進一步的規劃,這樣可提高項目的可行性。試圖預測未來的規劃很難奏效,除非你是個預言家,否則應該盡量在項目中根據經驗做規劃和排程。

安排項目議程

首先,要按可交付物安排議程,而不是按功能;其次,要以迭代的方式安排議程;再次,要使用難度較低的工具安排項目議程。過度追求完美的項目時間表可能意味著在實際項目中浪費更多的時間。

足夠的時間規劃

排程是由整個項目團隊共同制定的,因此,每個人都要對議程有信心。不過,天有不測風雲,總會發生點兒意外,所以我們要做足夠的時間規劃,而且要使用波浪式規劃,這樣才可以隨著環境的變化靈活地更新排程。

管理會議

在組織項目時,專案經理要盡量避免浪費時間的會議。要讓團隊將注意力集中在項目上,這是最簡單、最有效方式。在協助團隊朝著合理的交付到期日前進時,要保證團隊不受外界幹擾和影響。如果會議對於任何人都毫無價值,那就取消掉;同時准許團隊成員不參與無法貢獻和收穫價值的會議。也許有些團隊成員會不高興,認為你覺得他們不夠重要從而不能參加會議。要跟他們解釋清楚,你不讓他們參會是因為他們太重要了。

速度圖

如果只能繪製一個圖表,那就選擇速度圖。速度圖集三種度量方式為一身:需求、已完成工作和時間。雖然無法從中看到自己希望瞭解的缺陷率或成本,卻能從該圖中對項目的整體進度有所掌握。使用速度圖可以使你在一張圖中同時度量多個趨勢:整體需求數量和已完成工作,其中包括所有的測試、文檔以及項目需要等其他內容。這是最有用的圖表,是專案經理的好朋友。但要注意,速度圖只是擷取資料的工具,不是目的。

測試

從項目開始就要堅持“減少技術債務”的原則,讓測試與開發同步進行。測試會將項目的風險展現在眾人面前,大家越早看到這些風險越好。在採納順序式生命週期的項目中,要讓測試人員參與到需求分析階段,詢問他們關於產品需求的反饋;在採用迭代式生命週期的項目中,要請測試人員協助評估原型;使用增量式生命週期的項目,只要有可供測試的部分,就可以讓測試人員儘早開始測試功能;在實施敏捷的項目中,要確保測試人員與開發人員一起工作,以開展技術層面的測試。同時,還要讓測試人員與產品負責人一起,編寫面向客戶層面的測試。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.