技術(shù)經(jīng)理必須學會認真聽取用戶的要求、考慮和設(shè)想,并加以分析和整理。同時,軟件開發(fā)方應(yīng)鄭重向用戶說明,進入設(shè)計階段以后,再提出需求變更會給整個開發(fā)工作帶來什么樣的沖擊和不良后果,全面權(quán)衡輕重。
區(qū)別對待,折衷求同。隨著項目不斷進展,不少企業(yè)用戶會不斷提出一些在項目實施組看來確實無法實現(xiàn)或工作量比較大、對項目進度有重大影響的需求。
新需求,可以建議用戶將新需求按重要和緊迫程度劃分檔次,作為需求變更評估的重要依據(jù)。如遇到有些需求無法在短時間內(nèi)解決、需要花個把月才能解決的時候,那就不要硬拼,不要讓項目因此僵住,而要通盤考慮一下,有否臨時的折中方案可以先“應(yīng)付”一下?如讓用戶先使用現(xiàn)有系統(tǒng),等過一段時期,技術(shù)解決或二次開發(fā)成功后再給用戶免費升級安裝。
3、如何診治需求變更不斷之痛?
每做一次項目計劃變更,都會影響到日后的成本估算、活動順序、行程日期、資源需求及風險控管的決策,因此甲乙雙方的項目經(jīng)理、IT經(jīng)理都必須以整體的視野、統(tǒng)一的要求,對變更進行控制、確認與紀錄。而需求變更的控制關(guān)鍵在于建立相應(yīng)的控制組織、變更控制系統(tǒng)以及規(guī)范變更流程,主要有:
充分做好前期的需求調(diào)研、系統(tǒng)培訓等工作。深入企業(yè)一線,全面調(diào)查研究,最大程度地挖掘企業(yè)用戶的潛在需求,發(fā)現(xiàn)可能要需求變更的地方,讓企業(yè)用戶盡快做出是否要進行需求變更。一般把需求變更或者新需求的確認最遲時間定在系統(tǒng)培訓階段。也就是說,在系統(tǒng)培訓完成后、開始準備雙線并行前,企業(yè)用戶還可以提出需求變更的申請,但是,當系統(tǒng)開始雙線運行時,就不允許用戶再提出需求變更等類似的請求了,如編碼的內(nèi)容和規(guī)則、表單的數(shù)量和格式、數(shù)據(jù)流轉(zhuǎn)和統(tǒng)計方式等,否則就要付出變更的代價。
建立變更控制組織系統(tǒng)。項目啟動時,盡可能地與客戶溝通,盡快建立正式的對變更進行控制的組織,通稱變更控制委員會(CCB),成員可包括雙方高層(掛名)、甲乙雙方的項目負責人、相關(guān)的需求負責人等,負責裁定接受變更內(nèi)容、方法、步驟等。建立該系統(tǒng)的目的是統(tǒng)一管理需求變更和跟蹤變更的狀態(tài),便于項目組測試人員、開發(fā)人員、系統(tǒng)分析員以及PM相互之間的溝通和交流。建立變更控制系統(tǒng)目的不是讓用戶不提出變更,而是讓用戶不輕易、隨便的提出變更。
嚴格規(guī)范變更流程。一旦需求分析階段結(jié)束,此后如果用戶要求有新的需求加入即將交付的軟件系統(tǒng)中,甲乙雙方的項目組或變更控制委員會,要根據(jù)角色定義,確定變更流程,規(guī)定嚴格的變更控制流程,并控制新需求提出的頻率。
1)變更申請。系統(tǒng)界面如按鈕的位置、字段的位置的細微調(diào)整,不涉及到業(yè)務(wù)規(guī)則,對基線基本沒有影響的變更,由測試人員直接在變更控制系統(tǒng)中提出;其他如操作風格的較大變化、編碼內(nèi)容、業(yè)務(wù)規(guī)則的變化等,均要求用戶提出電子和書面的需求變更單。
2)變更評估。由項目組或變更控制委員會組織人員對變更進行變更的合理性分析,變更替換方案分析,工作量的估算以及涉及什么模塊、影響什么模塊等影響分析。
3)變更實施。由測試人員在變更控制系統(tǒng)中填寫變更信息,由系統(tǒng)分析員填寫處理方法和影響分析后交由開發(fā)人員實施。
需求變更后,受影響的軟件計劃、產(chǎn)品、活動都要進行相應(yīng)的變更,以保持和更新的需求一致。
選用適當?shù)拈_發(fā)模型防止多變更。采用建立原型的開發(fā)模型比較適合需求不明確的開發(fā)項目。軟件供應(yīng)商研發(fā)人員先根據(jù)用戶對基本需求的說明建立一個系統(tǒng)原型,再與用戶溝通。一般用戶看到一些實際的東西后,對