傳統專案管理 VS. 敏捷專案管理

這幾年,臺灣刮起一陣敏捷式管理的旋風,引起許多與傳統專案管理比較的討論,到底兩者的發展模式有什麽不同?未來的專案管理用哪一種比較好?藉這篇文章介紹一下專案管理的來龍去脈,讓大家能有個初步的認識。

工業時代的專案特性

傳統的專案管理模式,是從工業時代開始發展,它有個別稱叫“瀑布式管理”,意思是它的管理模式就像瀑布一樣,從上往下無法倒流,爲什麽會有這樣的説法?因爲工業時代的專案最終產出物,是以橋、飛機或工廠之類的硬體設施爲主,這樣的專案有幾個重要的特性:

  1. 需求可以具體顯現出來,較少有需求不清的狀況產生;
  2. 材料成本昂貴,且前置加工時間長;
  3. 各項工作間有強烈的相依性(耦合度),(A做完了,才能做B),比如説,建築物的地基打好了,才能繼續往上蓋。

這幾個特性導致瀑布式管理會花非常多時間在前期規劃、設計,確認一切的需求和規格都沒問題了,才會開始執行,否則如果執行過程中出現問題或是隨意變更需求,之前花費的材料和時間就浪費了,因此執行過程中的變更管理非常嚴格,希望能不變更就不變。而這套管理模式最關注的幾個項目就是範疇、時程、成本、資源(人力、物力…等)。

軟體時代的專案特性

到了20世紀末,全世界的發展趨勢,從工業時代轉到軟體時代,在網路尚未普及前,軟體開發用的也是瀑布式管理模式,因爲空間上的限制,程式開發完,燒錄成軟碟、光碟,才能交付給使用者,如果程式有問題,就要等之後推出新版本才能更新,每次產品交付給使用者的時間基本上是以月為單位,因此要先將需求規格訂的很明確,才會進行開發、測試,以免最後出問題。

網路時代的專案特性

進到21世紀網路時代後,網絡的普及突破了空間的限制,這對軟體開發的模式影響是非常巨大的,透過網絡就可遠端更新軟體,產品交付給使用者的時間因而大幅縮短,再加上全球化市場競爭激烈,因此專案執行當中,時常會遇到客戶提出需求變更以因應市場變化,有時甚至客戶對最終的需求,都還無法有個明確的想法,只有一個輪廓雛形而已。

這就導致了兩種狀況產生,一種是因爲無法確認需求,整個專案進度就卡在最開始的需求訪談,遲遲無法決定;不然就是好不容易開始開發,埋頭苦幹地開發了幾個月,結果最後的產出已經不是市場所要的了。

瀑布式專案管理 VS 敏捷式專案管理

也因此,各大軟體公司發現瀑布式管理真的不適合現階段的軟體開發,於是發展出了“敏捷式專案管理”,它與瀑布式管理最大的不同點,是對於“需求變更”的態度,敏捷式管理願意“擁抱變更”,爲什麽願意擁抱變更呢?有幾個原因:

1.軟體專案的變更成本跟傳統專案比,費用大幅下降了,程式修改都是靠人工完成,主要成本都是在人力工時上,不會有硬體費用產生,如果是硬體專案,執行到一半才提變更,工廠都建好一半了,那個變更成本是所有人都無法接受,所以軟體公司願意讓客戶變更需求,最主要是變更成本相對少,當然,變更也不能無限上綱,因此敏捷還有其他配套的精神,客戶必須要高度配合,敏捷式管理才有意義。

2.隨著技術的發展,軟體的開發,從早期功能之間的相依性(耦合度)非常高,到後來耦合度越來越低,各個功能可以平行開發。這幾個主要的原因,造成了敏捷式管理強調快速分批產出、快速取得回饋、快速修正,目的就是讓客戶能儘快獲得市場回饋與價值。而各個軟體公司因爲產品的屬性不同,發展出的敏捷式管理也不同,分成好幾個流派,各有支持者,幾個比較大的如 Scrum, Extreme Programming (XP), DSDM, Crystal…等。

不管是瀑布式或敏捷式,專案管理的核心都是一樣的

所以這兩者是完全不同的管理模式嗎?其實如果真的了解專案管理的本質,會發現不管是敏捷式或瀑布式,其實核心目標是一樣的,都是在管理範疇、時程、成本、資源(人力、物力…等),只是因爲如前面所提到的,軟體產品特性因爲需求(範疇)一直變,所以就乾脆把範疇和成本的限制放寬,但將時程和人員固定住。

這樣的好處是,在固定頻率的交付時間内,團隊成員又是固定,能較有默契的情況下,每次迭代能產出的内容就比較好預估,且可因應市場變化馬上修正,再加上網絡時代的協作工具,對軟體開發有很大的幫助,因此採用敏捷式管理自然是比較適合,但專案管理的本質兩者是相同的。

瀑布式還是敏捷式?未來真正考驗的是混合式管理

所以到底是瀑布式比較好還是敏捷式?雖然現在世界的主流發展是軟體,但工程硬體類的專案還是一直都會有的,絕對不是瀑布式就完全不能用,還是要看專案的特性來選擇採用哪一種模式比較適合,下面列舉了幾個基本的特性來評估:

Image 1.png

而隨著技術的演進,在未來的職場上,不只是專業能力,更關鍵的是跨域整合能力,一個公司的產品,可能不再是純硬體或純軟體,更多的會是相互交錯的應用,因此怎麽針對產品特性,來靈活的搭配瀑布式和敏捷式管理,就非常考驗管理者對專案管理的理解程度,不同的特性,就必須要有不同的管理模式,而不是死抱著一套不放,這樣絕對無法進步,天下的管理方法,沒有最好的,只有最適合的,任何人都會犯錯,但能做到快速找錯誤,並快速修正,才是未來競爭的關鍵。

而近幾年的軟體圈,除了敏捷的概念,又有一個新的概念產生叫做DevOps,我在另一篇文章什麽是DevOps?(一)從管理與商業思維角度切入,介紹這個概念。

 

延伸閲讀:

什麽是智慧製造?淺談製造業的數位轉型

如何規劃智慧製造?三個階段一步一步來

什麽是敏捷管理?

什麽是策略地圖?個人版要怎麽用?

商業分析之路

跨域職涯分享:從工程硬體到資訊服務,從專案管理到商業開發

開源軟體的商業模式分析 (一)

什麽是DevOps?(一)從管理與商業思維角度切入

如何成爲這個時代的高手?(一)個人成長三躍遷

傳統專案管理 VS. 敏捷專案管理 有 “ 2 則迴響 ”

發表留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料