一的要求,對(duì)變更進(jìn)行控制、確認(rèn)與紀(jì)錄。而需求變更的控制關(guān)鍵在于建立相應(yīng)的控制組織、變更控制系統(tǒng)以及規(guī)范變更流程,主要有:
充分做好前期的需求調(diào)研、系統(tǒng)培訓(xùn)等工作。深入企業(yè)一線(xiàn),全面調(diào)查研究,最大程度地挖掘企業(yè)用戶(hù)的潛在需求,發(fā)現(xiàn)可能要需求變更的地方,讓企業(yè)用戶(hù)盡快做出是否要進(jìn)行需求變更。一般把需求變更或者新需求的確認(rèn)最遲時(shí)間定在系統(tǒng)培訓(xùn)階段。也就是說(shuō),在系統(tǒng)培訓(xùn)完成后、開(kāi)始準(zhǔn)備雙線(xiàn)并行前,企業(yè)用戶(hù)還可以提出需求變更的申請(qǐng),但是,當(dāng)系統(tǒng)開(kāi)始雙線(xiàn)運(yùn)行時(shí),就不允許用戶(hù)再提出需求變更等類(lèi)似的請(qǐng)求了,如編碼的內(nèi)容和規(guī)則、表單的數(shù)量和格式、數(shù)據(jù)流轉(zhuǎn)和統(tǒng)計(jì)方式等,否則就要付出變更的代價(jià)。
建立變更控制組織系統(tǒng)。項(xiàng)目啟動(dòng)時(shí),盡可能地與客戶(hù)溝通,盡快建立正式的對(duì)變更進(jìn)行控制的組織,通稱(chēng)變更控制委員會(huì)(CCB),成員可包括雙方高層(掛名)、甲乙雙方的項(xiàng)目負(fù)責(zé)人、相關(guān)的需求負(fù)責(zé)人等,負(fù)責(zé)裁定接受變更內(nèi)容、方法、步驟等。建立該系統(tǒng)的目的是統(tǒng)一管理需求變更和跟蹤變更的狀態(tài),便于項(xiàng)目組測(cè)試人員、開(kāi)發(fā)人員、系統(tǒng)分析員以及PM相互之間的溝通和交流。建立變更控制系統(tǒng)目的不是讓用戶(hù)不提出變更,而是讓用戶(hù)不輕易、隨便的提出變更。
嚴(yán)格規(guī)范變更流程。一旦需求分析階段結(jié)束,此后如果用戶(hù)要求有新的需求加入即將交付的軟件系統(tǒng)中,甲乙雙方的項(xiàng)目組或變更控制委員會(huì),要根據(jù)角色定義,確定變更流程,規(guī)定嚴(yán)格的變更控制流程,并控制新需求提出的頻率。
1)變更申請(qǐng)。系統(tǒng)界面如按鈕的位置、字段的位置的細(xì)微調(diào)整,不涉及到業(yè)務(wù)規(guī)則,對(duì)基線(xiàn)基本沒(méi)有影響的變更,由測(cè)試人員直接在變更控制系統(tǒng)中提出;其他如操作風(fēng)格的較大變化、編碼內(nèi)容、業(yè)務(wù)規(guī)則的變化等,均要求用戶(hù)提出電子和書(shū)面的需求變更單。
2)變更評(píng)估。由項(xiàng)目組或變更控制委員會(huì)組織人員對(duì)變更進(jìn)行變更的合理性分析,變更替換方案分析,工作量的估算以及涉及什么模塊、影響什么模塊等影響分析。
3)變更實(shí)施。由測(cè)試人員在變更控制系統(tǒng)中填寫(xiě)變更信息,由系統(tǒng)分析員填寫(xiě)處理方法和影響分析后交由開(kāi)發(fā)人員實(shí)施。
需求變更后,受影響的軟件計(jì)劃、產(chǎn)品、活動(dòng)都要進(jìn)行相應(yīng)的變更,以保持和更新的需求一致。
選用適當(dāng)?shù)拈_(kāi)發(fā)模型防止多變更。采用建立原型的開(kāi)發(fā)模型比較適合需求不明確的開(kāi)發(fā)項(xiàng)目。軟件供應(yīng)商研發(fā)人員先根據(jù)用戶(hù)對(duì)基本需求的說(shuō)明建立一個(gè)系統(tǒng)原型,再與用戶(hù)溝通。一般用戶(hù)看到一些實(shí)際的東西后,對(duì)需求會(huì)有更為詳細(xì)的解釋?zhuān)_(kāi)發(fā)人員可根據(jù)用戶(hù)的說(shuō)明進(jìn)一步完善系統(tǒng)原型。這個(gè)過(guò)程重復(fù)幾次后,系統(tǒng)原型逐漸向用戶(hù)最終、比較全面的需求靠攏,從根本上減少需求過(guò)多變更的出現(xiàn)。目前業(yè)界較為流行的疊代式開(kāi)發(fā)方法對(duì)工期緊迫的項(xiàng)目的需求變更控制較為管用。通常情況下,原型之后的需求溝通就實(shí)際得多,雙方的理解迅速向一個(gè)全面折衷的方案貼近,一個(gè)可以指導(dǎo)研發(fā)過(guò)程、有針對(duì)性的需求說(shuō)明書(shū)就可起到重要作用。
通過(guò)合同約束,建立有效的解決沖突機(jī)制。用戶(hù)、開(kāi)發(fā)商在實(shí)施、驗(yàn)收軟件項(xiàng)目過(guò)程中難免會(huì)發(fā)生沖突,而需求變更給軟件項(xiàng)目建設(shè)帶來(lái)的影響也是有目共睹,從而可能讓項(xiàng)目建設(shè)偏離軌道。關(guān)鍵是事先是否有明確的項(xiàng)目目標(biāo)和項(xiàng)目要求,是否建立起有效的沖突解決機(jī)制。所以雙方在簽訂合同時(shí),可以增加一些相關(guān)條款,主要是要明確今后雙方責(zé)權(quán)利關(guān)系,如限定用戶(hù)提出需求變更的時(shí)間,規(guī)定何種情況的變更可以接受、拒絕接受或部分接受,還可以規(guī)定發(fā)生需求變更時(shí)必