如何正確應對項目管理需求變更
PMP認證是項目管理專業人士資格認證,是一種國際級的高級人才管理認證。它的主要考試內容就是項目管理體系知識。關于如何正確應對項目管理需求變更,慧翔天地在這里給大家簡單介紹一下。
需求變更的表現形式是多方面的,如老板臨時改變想法、項目預算增加或減少、客戶對功能的需求改變等。在IT項目中,變更可能來自方案服務商、客戶或產品供應商等,也可能來源于項目組內部。雖然需求變更的表現形式千差萬別,但究其根本不外乎以下幾種原因:
1、需求變更的原因分析
(1)范圍沒有圈定就開始細化
細化工作是由需求分析人員完成的,一般是根據用戶提出的描述性的、總結性的短短幾句話去細化的,提取其中的一個個功能,并給出描述(正常執行時的描述和意外發生時的描述)。當細化到一定程度后并開始系統設計時,范圍會發生變化,那細節用例的描述可能就有很多要改動。如原來是手工添人的數據,要改成根據信息系統計算出來,而原來的一個屬性的描述要變成描述一個實體等。
(2)沒有指定需求的基線
需求的基線是指是否容許需求變更的分界線。隨著項目的進展,需求的基線也在變化。是否容許變更的依據是合同以及對成本的影響,比如軟件整體結構已經設計出來是不容許改變需求范圍的,因為整體結構會對整個項目的進度和成本有初步預算。隨著項目的進展,基線將越定越高(容許的變更將越少),其過程如下:變更請求à比較基線à變更實現。
(3)沒有良好的軟件結構適應變化
組件式的軟件結構就是提供了快速適應需求變化的體系結構,數據層封裝了數據訪間邏輯,業務層封裝了業務邏輯,表示層展現用戶表示邏輯。但適應變化必須遵循一些松禍合原則,各層之間還是存在一些聯系的,設計要力求減少會對接口入口參數產生變化。如果業務邏輯封裝好了,則表示層界面上的一些排列或減少信息的要求是很容易適應的。如果接口定義得合理,那么即使業務流程有變化,也能夠快速適應變化。因此,在成本影響的容許范圍內可以降低需求的基線,提高客戶的滿意度。
2、如何控制需求變更
按照現代項目管理的概念,一個項目的生命周期分為啟動、實施、收尾三個過程。需求變更的控制不應該只是項目實施過程考慮的事情,而是要分布在整個項目生命周期的全過程。為了將項目變更的影響降低到最小,就需要采用綜合變更控制方法。綜合變更控制主要內容有找出影響項目變更的因素、判斷項目變更范圍是否已經發生等。
進行綜合變更控制的主要依據是項目計劃、變更請求和提供了項目執行狀況信息的績效報告。
(1)項目啟動階段的變更預防
對于任何項目,變更都無可避免,也無從逃避,只能積極應對,這個應對應該是從項目啟動的需求分析階段就開始了。對一個需求分析做得很好的項目來說,基準文件定義的范圍越詳細清晰,用戶跟項目經理扯皮的幌子就越少。如果需求沒做好,基準文件里的范圍含糊不清,被客戶抓住空子,往往要付出許多無謂的犧牲。如果需求做得好,文檔清晰且又有客戶簽字,那么后期客戶提出的變更就超出了合同范圍,需要另外收費。這個時候千萬不能手軟,這并非要刻意賺取客戶的錢財,而是不能讓客戶養成經常變更的習慣,否則后患無窮。相對于需求來說,什么WBS、風險管理、計劃進度都是次要的,只要需求做好了就會一帆風順。
(2)項目實施階段的需求變更
成功項目和失敗項目的區別就在于項目的整個過程是否是可控的。項目經理應該樹立一個理念——“需求變更是必然的、可控的、有益的”。項目實施階段的變更控制需要做的是分析變更請求,評估變更可能帶來的風險和修改基準文件??刂菩枨鬂u變需要注意以下幾點:
需求一定要與投入有聯系,如果需求變更的成本由開發方來承擔,則項目需求的變更就成為必然了。所以,在項目的開始,無論是開發方還是出資方都要明確這一條:需求變,軟件開發的投人也要變。
需求的變更要經過出資者的認可,這樣才會對需求的變更有成本的概念,能夠慎重地對待需求的變更。
小的需求變更也要經過正規的需求管理流程,否則會積少成多。在實踐中,人們往往不愿意為小的需求變更去執行正規的需求管理過程,認為降低了開發效率,浪費了時間。但正是由于這種觀念才使需求逐漸變為不可控,最終導致項目的失敗。
精確的需求與范圍定義并不會阻止需求的變更。并非對需求定義得越細,就越能避免需求的漸變,這是兩個層面的問題。太細的需求定義對需求漸變沒有任何效果。因為需求的變化是永恒的,并非需求寫細了,它就不會變化了。
注意溝通的技巧。實際情況是用戶、開發者都認識到了上面的幾點間題,但是由于需求的變更可能來自客戶方,也可能來自開發方,因此,作為需求管理者,項目經理需要采用各種溝通技巧來使項目的各方各得其所。
(3)項目收尾階段的總結
能力的提高往往不是從成功的經驗中來,而是從失敗的教訓中來。許多項目經理不注重經驗教訓總結和積累,即使在項目運作過程中碰得頭破血流,也只是抱怨運氣、環境和團隊配合不好,很少系統地分析總結,或者不知道如何分析總結,以至于同樣的問題反復出現。
事實上,項目總結工作應作為現有項目或將來項目持續改進工作的一項重要內容,同時也可以作為對項目合同、設計方案內容與目標的確認和驗證。項目總結工作包括項目中事先識別的風險和沒有預料到而發生的變更等風險的應對措施的分析和總結,也包括項目中發生的變更和項目中發生問題的分析統計的總結。
3、需求變更的處理流程
需求變更既然不可避免,那么就必須有一套規范的處理流程。對于需求變更的處理流程應該分以下步驟:提出變更à變更評估à實施變更。下圖簡要地描述了一般需求變更的處理流程:
因為現實世界的軟件系統可能有不同的嚴格程度和復雜性,所以事先預言所有的相關需求是不可能的。系統原計劃的操作環境會改變,用戶的需求會改變,甚至系統的角色也有可能改變。實現和測試系統的行為可能導致對正解決的問題產生新的理解和洞察,這種新的認識就有可能導致需求變更。CMM提出“分配需求的變更被復審,并加入到軟件項目中來”,其關鍵是在需求發生變更時,沒有必要馬上把這些變更付諸于軟件開發工作之中。實際上,堅持把需求變更付諸開發努力,企業就會形成一種混亂且不穩定的氛圍,進而嚴重破壞項目的控制和管理。需求管理關鍵過程試圖通過把分配需求的變更囤積到可管理的組中,等到開發工作允許的時候再引人相應的方法,避免產生這種混亂的氛圍。結果,需求管理創建了一個隔絕開發工作與所有真實的、潛在無序的、來自于客戶的變更。這個緩沖器允許真實的變更被注意、記錄、追蹤,同時開發工作又不會因此而被擾亂。開發項目應該周期性地暫停來吸收最新的需求變更積累,此時,所有的計劃、設計、行為都根據剛剛吸收的需求變更的影響進行更新。
需求變更的控制當然與項目管理范疇之外的純技術因素息息相關,比如面向對象的分析、面向對象的設計、面向對象的編碼方式等等。但所有技術的發展趨勢都是一樣,那就是為了使變更管理變得更容易。不論在項目變更控制中采取什么方法、策略,對于項目本身的變化一定要時時洞悉,處處留意,只有這樣才能從真正意義上對項目進行很好的變更控制。