關鍵路徑方法(Critical Path Method – CPM)是項目管理中最重要的概念之一,當然也是最持久的概念之一。
本文是優思學院寫給初學者們的介紹,將幫助您了解關鍵路徑方法並將其應用於您的項目中。在我們的六西格瑪黑帶課程中,項目管理也是其中一個重要的知識範疇。
對於項目管理技術而言,關鍵路徑法具有相當出色的歷史。
關鍵路徑方法的早期可以追溯到1940年代初的曼哈頓計劃。 鑑於這個改變世界的項目的雄心,規模和重要性,科學家及其背後的管理人員開發了多種技術,以確保該項目能夠按時得到交付成果。
這些技術之一是繪製出任何項目中最重要的任務,並使用它們來估計項目完成日期。
今天,我們將此技術稱為「關鍵路徑法」。
直到今天,CPM還是項目計劃的基石。 一個項目需要多長時間通常取決於構成它的最重要的任務。
如果您可以規劃這些任務及其持續時間,則可以對項目的時間表和預算進行合理的估算。
了解關鍵路徑方法
您是否聽說過約束理論(TOC) ?
該理論最初由Elliyahu Goldratt在其1984年的書《目標》中描述 ,該理論指出,您完成任何活動的能力取決於一些關鍵資源或約束條件 。
例如,如果您要製作三明治,則可能需要所有的黃油,火腿和奶酪,但是如果您沒有麵包,則無法製作三明治。
在這種情況下,麵包將成為三明治製作項目所依賴的約束 。
關鍵路徑法與該理論相似,但重點更廣。 根據這種方法,任何項目的成功都取決於關鍵路徑上的任務是否按時完成。
讓我們更詳細地看一下這種方法。
什麼是關鍵路徑法?
每個項目,無論其規模或預算如何,都具有一些對完成項目至關重要的核心任務。
像煮雞蛋一樣簡單。
如果您必須創建一個簡短的食譜來製作煎蛋卷,它將看起來像這樣:
- 打2個雞蛋
- 加熱鍋,熱時加黃油/油
- 倒入打好的雞蛋煮5分鐘
要製作一個好的煎蛋卷,還需要執行其他一些任務。 您必須用鹽和胡椒粉調味雞蛋。 也許加一些蔬菜和一些奶酪。 也許您可以在另一側翻轉它,使雞蛋完全煮熟。
但是,這些活動是配方中三個核心步驟的補充 。 即使您不表演它們,您仍然會有一個煎蛋卷。 雖然不是很好,但是還是煎蛋卷。
另一方面,如果您忘記打雞蛋,加熱鍋或煮雞蛋,除了一個冷鍋和兩個雞蛋外,您什麼都不會。
也就是說,配方中的三個步驟描述了使煎蛋卷製作項目成功所需的關鍵任務。
這些步驟的順序描述了新廚師要製作煎蛋卷時必須採取的關鍵路徑 。
簡而言之,這是關鍵路徑方法。
關鍵路徑方法定義
關鍵路徑方法在項目管理知識體系(PMBOK)中定義如下:
「關鍵路徑方法是確定項目持續時間的預定活動的順序。」
如果要將項目視為成功,則必須執行這些計劃的活動。 而且,它們必須按特定順序完成。 如果要蓋房子,則不能蓋牆然後挖基礎。 您必須按順序進行。
需要了解的重要一點是,CPM描述了項目中最長的任務序列 。
也就是說,在任何項目中,您都會有多個任務序列。 CPM將描述花費最多時間的順序。
例如,如果要蓋房子,您將有以下幾個任務序列:
每個任務花費不同的時間和資源。 與安裝水龍頭和固定裝置相比,建造牆壁和鋪設屋頂需要更多的時間。
如果您必須弄清項目的「關鍵路徑」,則可以查看花費最多時間的序列,如下所示:
沿著此關鍵路徑完成序列所花費的總時間將使您對項目的最小持續時間有所了解。
您可能會同時執行多個任務序列,但是如果關鍵路徑序列中有任何延遲,您的項目也會遭受延遲。
關鍵路徑算法解釋
關鍵路徑方法本質上是一種決策算法。 該算法採用任務的開始時間,持續時間和完成時間來確定哪些活動最值得關注(即對項目「至關重要」)。
讓我們考慮一個示例,以更好地理解關鍵路徑算法。
假設您有一個任務列表,如下所示。 C列和D列分別列出了任務開始前必須完成的前置任務以及任務的所需時間。
由於項目經理的目標是儘快完成項目(當然不影響質量),因此我們將嘗試為每個活動找到最早的完成時間。
為此,將所有任務組織成一個流程圖,並在任務ID旁邊記下它們的持續時間。 箭頭指示活動的順序。 我們將在活動左側標記最早開始(ES)時間,在右側標記最早完成(EF)時間。:
在第一個活動的左側和右側標記開始時間(S) 。 通常,該值為0。
現在,標記每個活動的最早開始(ES)時間。 這由活動的直接前任(即其最早完成時間或EF) 右邊的最大數字給出。
活動的EF由其最早開始時間(ES)和持續時間(t)給出,即ES + t。
因此,如果一項活動的ES為20,並將持續10天,則其EF為30。
在流程圖中標記所有這些數字。
最長的路徑將是「關鍵路徑」 (Critical Path)。
該序列中最後一個任務右邊的最後一個數字將為您提供完成項目所需的最短時間。
項目管理中的」浮動」
在項目管理中,「浮動時間」定義了任務可以延遲而不會造成項目的延遲的時間:
- 任何後續的相關任務-稱為「自由浮動」
- 整個項目的任何延遲-稱為「總浮動」
關鍵路徑上的任何活動或任務的浮動時間都為零。 也就是說,您完全不能延遲它。
但是,項目中還有許多其他活動可能會延遲。 這種延遲的量化稱為「浮動」。
例如,當您製作煎蛋卷時,「加熱鍋」的浮標為零,因為它位於關鍵路徑上。
但是,調味雞蛋會有較多浮動的時間,因為, 您可以在煮雞蛋時甚至煮熟後向生雞蛋混合物中加鹽。
計算項目中所有活動的浮動或鬆弛對更好地分配資源至關重要。
如果活動的浮動性較高,則可以將其資源轉移到優先級較高的任務。
一般而言,高流動性活動將在優先級列表的下方,而關鍵路徑上的活動(也稱為「零流動性」活動)將受到主要關注。
應對突發事件的方法
少項目可以真正的按計劃進行。 您總是會有些延誤,範圍變更和客戶需求,這將迫使您加快某些活動而延遲其他活動。
關鍵路徑方法包括幾種應對此類突發事件的措施:
1.快速跟進(fast tracking)
快速跟進是在關鍵路徑上並行運行多個活動以減少總體項目時間的過程。
快速跟進僅適用於沒有「硬」依賴性的活動,即,它們不完全依賴於其前任者來啟動。
例如,在建造房屋牆壁之前,您需要先挖掘基礎。 但是,當您進行挖掘時,您也可以購買磚塊並混合水泥。
因此,儘管「築牆」取決於「挖掘基礎」,但您可以並行運行「購買磚塊」和「混合水泥」來挖掘基礎。
顯然,快速跟進需要更多資源。 由於您將資源分配給多個任務,因此它也會影響整體質量。 在需要並行運行活動的情況下,良好的資源管理將特別有用。
2.趕工(crashing)
如果由於期限過短而需要趕去活動怎麼辦?
在這種情況下,您可以為活動分配其他資源,以使其更快地完成。
此過程稱為「趕工」。
趕工在以下活動中很有用:
- 受益於擁有更多資源,即遵循資源與完成時間之間的線性關係。
- 可以利用高流通量活動中的資源。 由於這些活動存在明顯的「浮動」,因此您可以延遲它們而不會危害項目
通常不建議您將趕工排除在緊急情況之內,因為它會影響關鍵路徑之內和之外的活動。 但是,如果必須這樣做,請從高浮動任務中轉移資源,而不是轉移關鍵路徑上的資源。
關鍵路徑法有什麼好處?
在1963年9月號的 《 哈佛商業評論》中,有關於關鍵路徑方法的說法:
「最近,越來越多的用於商業決策的定量工具也增加了關鍵路徑法(Critical Path Method),這是一種功能強大但基本上簡單的技術,用於分析,計劃和調度大型複雜項目。」
從那時起,這種方法就在項目管理的理論和實踐中確立了自己的地位。 並且有充分的理由-使用關鍵路徑方法可帶來無數好處:
減少延遲:關鍵路徑方法可幫助確定項目中最重要的任務序列。 管理人員可以使用此信息通過優化關鍵路徑上的工作來減少延遲。
可視化依賴關係: CPM依賴於列出與項目關聯的所有任務及其依賴關係。 這樣創建的圖表可以幫助您可視化所有依賴關係並相應地確定任務的優先級。
改善組織 :在複雜的項目中,CPM有助於將可交付成果分解為序列,並將序列分解為任務。 這以及對可視化依賴關係,映射約束以及定義任務的關鍵路徑的關注,極大地改善了項目組織。
優化效率:通過繪製關鍵路徑,項目經理可以更好地了解項目中的重要任務。 他們可以使用此信息更有效地分配資源,根據任務的重要性添加/刪除資源。
浮動計算:」浮動」定義了在不影響項目進度的情況下任務可以延遲多少。 這是關鍵路徑方法的重要組成部分。 計算浮點數可以幫助您更有效地分配資源。
如果您是一個六西格瑪黑帶或項目經理,這個方法可以有助於你成功地為你自己的項目進行時間管理。