軟體專案管理中的戰略意義和專案特性評估

更新於 發佈於 閱讀時間約 6 分鐘

本文基於作者Robert K. Wysocki 的 《Effective Software Project Management 1st Edition 》一書編寫而成。

上一篇文章我簡單的說明了什麼是軟體開發和軟體開發專案,同時我也簡單的介紹了什麼是軟體開發管理戰略。

在解了什麼是軟體開發管理戰略以後,我們必須要了解一個問題,就是為什麼要有這樣的一套戰略?它存在的意義到底是什麼呢?

在我看來,這套管理戰略洽好的各國際專案管理學會 (PMI) 在《專案管理知識體係指南》中所提出的剪裁 (tailoring) 對應上。所謂的剪裁,就是「決定要應用的流程、輸入、工具和技術、輸出和階段的組合來管理一個專案」。如果要更簡單的來描述的話,就是為了把專案管好,所需要的管理方法。

我們知道這世界上沒有兩個專案是完全相同的,因此我們不可以預期世上能有一套管理方法是可能完全套用到所有的專案上。明白了這一點以後,專案經理要面對的問題就是應該如何剪裁所謂的管理方法。到底那些管理方法的組合,才叫作適合專案。會不會到最後會出現衣不稱身的情況,反而影響到專案價值的交付?

我認為作者提出的這一套戰略,其意義就是為了軟體開發專案量身定製的一個方法論。為管理這類型專案的管理者帶來如何尋找軟體實現方法和剪裁管理方式的基礎。

在說了那麼多,在開始選擇合適的管理方法之前,我們首先要做的事情,就是了解自己。如孫子在《孫子兵法》中有云「知己知彼,百戰不殆」。專案經理必須要先了解自己將要面對的專案,才能選擇和製定有效的戰略來應對。那如何才算作是知己呢,作者提出先從特性開始。即了解要進行的軟體開發專案的特性是什麼。

軟體開發專案特性

如前文所說,要知己先要了解專案特性。作者把這個看似複雜的問題簡單的用二個維度作評估,這二個維度分別是「目標」和「方案」。在這二個維度上又再細分為清晰和不清晰。在劃分以後,我們就得到下面一張圖。每一個專案應該能在圖中找到它所屬的位置,而這個位置,就是專案的特性,也是選擇管理方法的基礎。

我個人認為,作者選擇這兩個方面來評估專案特性有其道理。歸根究底專案成立的主要原因就是為了達成某個主要的目標,如果不能達成目標的話,一切只就是浪費時間和資源。而關於方案的理解,簡單的說就是到達目標的路。我們知道專案的目標可能只有一個,但能通往目標的路卻可能有千千萬萬條。方案如果不明確的話,則必然會影響到目標的實現。

在了解上述的劃分以後,我們就能把專案劃分成四個大類,它們分別是

  • 像限1:已經有清晰的目標和方案
  • 像限2:只有清晰的目標但沒有明確的方案
  • 像限3:目標和方案都沒有清晰的定義
  • 像限4:目標不明確但卻有明確的方案

接下來我們介紹每一個像限下專案的特徵。

像限1專案的特性

對於企業來說,應該已經是以往有完成過且相似的專案,對於該專案的目標和提供的軟體方案已經是清楚明白的。在專案開始後雖然可能還是有少量改動,但客戶還是能清晰的表達他們的目標。

由於這種類型專案的特性,完整的設計-開發-測試的開發流程即能滿足需要。專案團隊使用的開發技術、軟硬體等已經十分熟識,並已應用於以往完成過其他專案中。

專案團隊可以參考下面幾個方面來評估專案是否處於這個像限內。

低複雜度

低複雜度並不表示所開發的系統真的很簡單,而是團隊成員對於要開發的軟體已經非常熟悉。它可以直接應用既定的業務規則,因此可以利用現有的設計和編碼來實現相對應的目標。

已熟識技術基建環境

團隊成員對於系統所需要的技術基建環境已經瞭如指掌,他們過往應該已經有相似的經驗。

低風險

以往的專案團隊已評估和記錄專案的問題和風險,而且對於所有的風險已經準備了對應的計劃。而團隊已經知道如何應對發生過的問題,並製定好對策以減低再次發生的可能性。

客戶對自己所提出的需求、功能和特性很有信心,且不會更改。除了一些不可抗力的原因以外,專案並不存在不可以避免的事件或風險。

擁有有經驗和技能的開發團隊成員

團隊中已經存在為專案順利實施所需要的技能。

管理者要注意的問題

如果在團隊評估過後,確認專案是屬於這一個像限內,那麼只需以計劃驅動的方式來管理專案就可以了。計劃驅動的意思是,在專案規劃階段已經為專案所有的工作、資源和時程建立起時間表,專案經理要做的,就是確保資源能工作來臨的時候就位和所有任務都在計劃的時間內完成。

計劃驅動的專案主要關注的是時間和成本的限制而不是交付客戶價值。另外由於是計劃驅動,因此對變更並不友好,應對每次變更均需要完成大量的行政流程(例如提出變更申請、評估、審批、計劃調整等),因此面對變更的反應極為緩慢。

值得注意的是,我們現在生活的環境變化愈來愈迅速,因此這種類型的專案已經不多見。現代社會要求專案更多的是關注客戶或價值的傳遞,而非關注以往關於專案鐵三角的限制。

像限2專案的特性

客戶對於要解決什麼樣的問題的目標是明確的,他們能提出達到目標後理想的狀態。但為達到此目標所需要軟體的功能和特性則沒有明確的想法。

值得慶幸的是,由於擁有清晰的目標,團隊能夠以各種不同的方法來尋找能達成目標的方案。例如團隊能應用如增量、疊加或適應等專案管理方法,來慢慢的靠近一個客戶和專案團隊都能接受的方案。

唯一要留意的是,客戶所提出的目標是否真的足夠明確,會不會他們提出的目標並非真正希望的未來。如果錯誤的以為專案擁有清晰的目標而應用了這一像限相關的管理方法的話,則可能會影響到整個團隊交付專案價值。對於這個特性下有那些合適的專案管理方法,以後會再作詳細的說明。

像限3專案的特性

處於這個像限的專案是一個十分極端的專案類型,當專案的目標和方案都不清晰的時候,只能以及時制度 (Just-in-Time)的方式來規劃專案的進行。專案需要經過多次的疊代,直到它收斂到一個可以接受的目標或解決方案為止。

像限4專案的特性

這種類型的專案在現實世界中並不以專案的形式存在,它更像是在販售沒有特定目標的產品。某些客戶在了解該產品的功能和特性以後,反過來恩考如何能套用到自身的業務環境當中,從而為產品賦與其目標和意義。當然我只能說,這世上應該不存在沒有明確目標的產品,在某個面向來說,它必然存在某種程度的意義。只是這個意義對其他人或企業來說,是否能帶來價值而已。

結論

專案管理者都希望能更好的去管理其專案,從而能實現專案在創立時候所定義的價值。而要應用合適的管理方法的話,了解專案的特性則十分的重要。這好比為別人訂製禮服,我們不能在不度量別人身體的情況下,能夠造出來一套合身的禮服。管理也一樣,在不知道自己專案特性的情形下,如何能夠有效的帶領團隊實現專案價值?因此團隊必須先要認真的評估其特性,才有可能找到適合的實現和管理方法。

於下一篇的文章中,我將會討論每一個像限下適合的軟體構建和管理方式。


avatar-img
7會員
27內容數
閱讀是為了通過書本認識世界、獲取靈感和改善自己或身邊的人的生活。在此主要分享一些我自己從書中獲得的一些靈感、啟發、見解等內容
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Seng Wong的沙龍 的其他內容
軟體開發專案管理的失敗原因複雜多樣,但管理不善是其中一大原因。學習為軟體開發專案而設的管理方法是有效管理的第一步,需對軟體開發專案的特徵進行評估,選擇合適的軟體開發生命週期和專案管理方法。
軟體開發專案管理的失敗原因複雜多樣,但管理不善是其中一大原因。學習為軟體開發專案而設的管理方法是有效管理的第一步,需對軟體開發專案的特徵進行評估,選擇合適的軟體開發生命週期和專案管理方法。
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
數據驅動的專案管理如何提升決策質量,涵蓋數據收集與管理、數據分析策略、實際應用技巧,以及面臨的挑戰和解決方案。通過描述性分析、診斷性分析、預測性分析和規範性分析,專案經理能夠優化資源分配、進度管理和風險控制,確保專案順利進行。
Thumbnail
企業面對大專案時,將其分解成可執行的小任務,有助於實現目標。以提升銷售額為例,拆解為四個要素,並提供增加流量、轉換率、客單價和回購率的策略。另外,還必須設計可量化的指標及追蹤回饋。這些建議對於創作型工作和知識型工作者來說,同樣可以利用該策略來提高工作效率。
Thumbnail
介紹敏捷式管理的專案管理概念,以及對團隊成員潛力發揮的啟發。內容包括敏捷式領導的三個重要事項、自我管理與同仁間的信任建立,以及敏捷式管理對自己的幫助。分享在專案管理、客戶關係管理與員工管理上運用敏捷式管理的個人見解和體悟。
Thumbnail
這篇文章描述了作者從兼職開發轉為全職開發的過程,並分享了從混進學界指日可待的積極態度。作者也提及自己在專案製作與個人生活上的矛盾與感想,最後分享了專案管理和敏捷開發相關的文章與影片。
Thumbnail
本書介紹了戰略設計、管理領域複雜度、實際應用領域驅動設計等主題。透過對核心子領域、支持子領域、限界上下文等概念的探討,提供了領域驅動設計的相關知識。這篇文章中還涉及了微服務、事件驅動架構和資料網格等相關主題,提供了設計系統和應用領域驅動設計的指導。
Thumbnail
系統的分析與規劃 在談到程式設計時,首要的是進行系統的分析與規劃。程式設計的起點通常是系統分析與規劃,這涉及到如何分析和設計系統的大原則和方向。為了達到預期效果,重要的是擁有對產業的清晰邏輯認識和深入了解。 進行深入了解 若要進行系統分析,必須對企業的設計和程式設計的對象進行深入了解,以充分理
專案報告怎麼寫?有沒有模版範例?當然!我們已經為你整理好了豐富多樣的各類型專案報告範例,讓你可以按需選擇,一鍵下載就開始使用!也為你準備了專案報告撰寫教學,快跟著我們一起簡單 8 步學會寫各種專案報告!更有高效專案管理工具推薦,為你助力數據整理,寫出更加專業且具吸引力的專案報告!
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
數據驅動的專案管理如何提升決策質量,涵蓋數據收集與管理、數據分析策略、實際應用技巧,以及面臨的挑戰和解決方案。通過描述性分析、診斷性分析、預測性分析和規範性分析,專案經理能夠優化資源分配、進度管理和風險控制,確保專案順利進行。
Thumbnail
企業面對大專案時,將其分解成可執行的小任務,有助於實現目標。以提升銷售額為例,拆解為四個要素,並提供增加流量、轉換率、客單價和回購率的策略。另外,還必須設計可量化的指標及追蹤回饋。這些建議對於創作型工作和知識型工作者來說,同樣可以利用該策略來提高工作效率。
Thumbnail
介紹敏捷式管理的專案管理概念,以及對團隊成員潛力發揮的啟發。內容包括敏捷式領導的三個重要事項、自我管理與同仁間的信任建立,以及敏捷式管理對自己的幫助。分享在專案管理、客戶關係管理與員工管理上運用敏捷式管理的個人見解和體悟。
Thumbnail
這篇文章描述了作者從兼職開發轉為全職開發的過程,並分享了從混進學界指日可待的積極態度。作者也提及自己在專案製作與個人生活上的矛盾與感想,最後分享了專案管理和敏捷開發相關的文章與影片。
Thumbnail
本書介紹了戰略設計、管理領域複雜度、實際應用領域驅動設計等主題。透過對核心子領域、支持子領域、限界上下文等概念的探討,提供了領域驅動設計的相關知識。這篇文章中還涉及了微服務、事件驅動架構和資料網格等相關主題,提供了設計系統和應用領域驅動設計的指導。
Thumbnail
系統的分析與規劃 在談到程式設計時,首要的是進行系統的分析與規劃。程式設計的起點通常是系統分析與規劃,這涉及到如何分析和設計系統的大原則和方向。為了達到預期效果,重要的是擁有對產業的清晰邏輯認識和深入了解。 進行深入了解 若要進行系統分析,必須對企業的設計和程式設計的對象進行深入了解,以充分理
專案報告怎麼寫?有沒有模版範例?當然!我們已經為你整理好了豐富多樣的各類型專案報告範例,讓你可以按需選擇,一鍵下載就開始使用!也為你準備了專案報告撰寫教學,快跟著我們一起簡單 8 步學會寫各種專案報告!更有高效專案管理工具推薦,為你助力數據整理,寫出更加專業且具吸引力的專案報告!