讀過王玉榮的《客戶為什麼總是反反覆覆》,有感於自己的軟體專案管理實踐,藉此話題介紹一點軟體行業需求管理中的需求變更管理的實際經驗,與各位讀者共享。
在軟體專案的研發過程中,需求變更貫穿了軟體專案的整個生命週期,從軟體的專案立項,研發,維護,使用者的經驗在增加,對使用軟體的感受有變化,以及整 個行業的新動態,都為軟體帶來不斷完善功能,優化效能,提高使用者友好性的要求。我在自己的軟體專案管理職業過程中,幾乎天天面對使用者的需求變更,切身感受 到,如果不能有效處理這些需求變更,專案計畫會一再調整,軟體交付日期一再拖延,使用者的耐性漸漸消逝,研發人員的士氣也越來越低落,最後所有的人都在等待 乙個結果:專案最好馬上結束。所幸,在不斷的學習和實踐中,我總結了幾點比較有效的方法,在軟體研發階段能夠較好地解決這方面的問題。
1.需求分析階段採用原型方法明確使用者需求。
在軟體專案的需求分析階段,有大量需求資訊需要收集、篩選、加工,這是需求管理的開始。客戶和研發兩方面的人員對需求的理解呈現「大體上共識多,細節 上差異多」的特點。即使通過反覆溝通,最終在時間表限制之內也能拿出乙份「使用者需求說明書」,但是以實踐經驗,使用者需求的描述永遠是「不夠清晰」、「不夠 明確」的。這主要是因為在這個階段,所謂的產品都在大家的大腦中構思,正如100個人讀《射鵰英雄傳》,就有100個郭靖的形象一樣,每個人的想法都是大 致輪廓相同,而細節差異很大。在此階段,原型開發是乙個較好的輔助手段,它將存在於大家頭腦中的虛境實實在在地表達出來,乙個介面,幾個控制項,外觀形式固 定了,功能描述明確了,這就是研發部門對使用者的需求理解。此時與使用者再次溝通,使用者基本上可以說出來:「這是我想要的」,或者「不,這不是我想要的,我要 的是……」。一般情況下,原型之後的需求溝通就實際得多,雙方的理解迅速向乙個折衷方案靠攏,乙個可以指導研發過程的需求說明書正式誕生了。
2.需求分析之後的研發過程採用嚴格的需求變更管理流程。
一旦需求分析階段結束,此後如果使用者要求有新的需求加入交付的軟體系統中,需要走需求變更管理流程。這個流程必須在軟體專案成立之初與使用者約定好,一 般的軟體企業內部有需求變更的管理流程,可以向使用者解釋這種管理的必要性,直至與使用者就此問題達成共識為止。不必擔心使用者不會接受,有過多次成功研發軟體 專案經驗的需求變更管理流程,有著它不容置疑的合理性,這正是軟體企業的經驗和價值所在,使用者最終會理解和同意的。
需求變更管理流程各家企業有各家的做法,借用cmm的需求管理kpa來講,需要兩級需求變更管理委員會(以下簡稱ccb)來處理,即產品ccb和專案 ccb。產品ccb處理涉及到產品一級的需求變化,主要體現在需要多個職能部門,多個軟體專案,以及與其他產品線的協調等問題;專案ccb處理本專案內部 的需求變更,如不同小組之間的協調,介面變化等等。每乙個需求都要經過ccb的審批,決定這個需求的各種屬性描述是否合適,如時間緊迫性,採用的技術是否 有風險,對系統的重要程度,需求變更的波動分析,需求實現的資源狀況。在與會人員對需求屬性取得共識之後,規劃需求實現的版本,確定時間計畫。
在此提醒大家,切忌對使用者提出的需求拍胸脯,在此之前可以捫心自問:「如果拍了胸脯,以後不能按時完成,我能不能負擔全部責任?」這樣冷靜一下就不會 胡亂應承了。有乙個比較好的方式減少這樣的麻煩,就是在需求分析階段之後,與使用者不要親密接觸,而是按照軟體專案的週期,或者雙方在初期的約定,定時通報 軟體研發的進展。如果軟體研發採用迭代式開發,就可以在每一期交付產品發布時做這個事情,徵詢到的使用者需求將納入以後某期的軟體版本中。
3.為將要頻繁改動需求的軟體專案進行版本規劃。
如果考慮到軟體專案比較大,週期比較長,如超過一年,其間的需求變化必然多得不可勝數,建議採用迭代式開發,為每個階段的產品進行版本規劃。第乙個版 本一般是包括了軟體系統最基本的功能,使用者最關心的功能,它的研發過程實際上還為後續版本提供了系統構架和新技術探索。乙個按時交付、質量較好的版本可以 讓使用者保持對專案成功的信心,並給了使用者在最終產品未出來之前逐漸接近最終產品的機會,這個過程將使使用者需求更加明確和完善,以提高最終產品的一次成功的 機率。所以第乙個版本的完成是專案的重要里程碑,建議專案組在此時舉行慶祝會來提高凝聚力,鼓舞員工士氣。後續的版本規劃,一般是需求的分期完善,對系統 的缺陷做持續改進。這個過程將一直持續到軟體的生命週期結束。
需求管理是cmm二級就開始關注的kpa,可見其重要性。關於這方面的書籍多種多樣,不過最好的還是行之有效的實踐經驗。我在自己的專案管理中,充分應用上述經驗,可以從容面對我的客戶,希望它對您的專案成功有所幫助。
讓百會CRM幫你從容應對客戶抱怨
客戶抱怨時多是情緒化的,憤怒而激動地訴說著自己的不滿,希望直接獲得解決方案。要快速解決客戶抱怨,避免客戶抱怨公升級導致客戶流失,企業必須學會從客戶角度理解問題即客戶為中心的思想。crm軟體作為客戶中心思想的落地工具,可以幫助企業建立服務支援系統 建立合理的客戶抱怨通道 快速確認客戶價值 為客戶抱怨提...
一面 4 從容應對演算法題目
由馮 諾依曼機組成我們知道 資料儲存和運算是計算機工作的主要內容。程式 資料結構 演算法,所以計算機類工程師必須掌握一定的資料結構和演算法知識。常見演算法 演算法複雜度分析 演算法思維 高階資料結構 本小節會帶領大家快速過一遍資料結構和演算法,重點講解一些常考 前端會用到的演算法和資料結構。資料結構...
做好資料庫設計從容應對大資料量
在企業資訊化建設過程中,隨著新技術的不斷湧現 企業業務運營規模的不斷提公升以及新的業務需求的不斷提出,原有資訊系統將會不斷被功能更加強大的新系統所取代,這已經成為企業資訊化部門面臨的最嚴峻挑戰。在這種需求的大背景下,it遷移 oracle服務 在整個實現過程中處於至關重要的一環。專案初期開發,分庫分...