參與者必須遵照項(xiàng)目變更控制過(guò)程。這要求不放棄所有提出的變更,對(duì)每項(xiàng)要求的變更進(jìn)行分析、綜合考慮,最后做出合適的決策,以確定應(yīng)將哪些變更引入項(xiàng)目中。
20、 尊重開發(fā)人員采用的需求分析過(guò)程
軟件開發(fā)中最具挑戰(zhàn)性的莫過(guò)于收集需求并確定其正確性,分析人員采用的方法有其合理性。也許客戶認(rèn)為收集需求的過(guò)程不太劃算,但請(qǐng)相信花在需求開發(fā)上的時(shí)間是非常有價(jià)值的;如果您理解并支持分析人員為收集、編寫需求文檔和確保其質(zhì)量所采用的技術(shù),那么整個(gè)過(guò)程將會(huì)更為順利。
“需求確認(rèn)”意味著什么
在“需求分析報(bào)告”上簽字確認(rèn),通常被認(rèn)為是客戶同意需求分析的標(biāo)志行為,然而實(shí)際操作中,客戶往往把“簽字”看作是毫無(wú)意義的事情?!八麄円以谛枨笪臋n的最后一行下面簽名,于是我就簽了,否則這些開發(fā)人員不開始編碼?!?
這種態(tài)度將帶來(lái)麻煩,譬如客戶想更改需求或?qū)Ξa(chǎn)品不滿時(shí)就會(huì)說(shuō):“不錯(cuò),我是在需求分析報(bào)告上簽了字,但我并沒(méi)有時(shí)間去讀完所有的內(nèi)容,我是相信你們的,是你們非讓我簽字的?!?
同樣問(wèn)題也會(huì)發(fā)生在僅把“簽字確認(rèn)”看作是完成任務(wù)的分析人員身上,一旦有需求變更出現(xiàn),他便指著“需求分析報(bào)告”說(shuō):“您已經(jīng)在需求上簽字了,所以這些就是我們所開發(fā)的,如果您想要?jiǎng)e的什么,您應(yīng)早些告訴我們。”
這兩種態(tài)度都是不對(duì)的。因?yàn)椴豢赡茉陧?xiàng)目的早期就了解所有的需求,而且毫無(wú)疑問(wèn)地需求將會(huì)出現(xiàn)變更,在“需求分析報(bào)告”上簽字確認(rèn)是終止需求分析過(guò)程的正確方法,所以我們必須明白簽字意味著什么。
對(duì)“需求分析報(bào)告”的簽名是建立在一個(gè)需求協(xié)議的基線上,因此我們對(duì)簽名應(yīng)該這樣理解:“我同意這份需求文檔表述了我們對(duì)項(xiàng)目軟件需求的了解,進(jìn)一步的變更可在此基線上通過(guò)項(xiàng)目定義的變更過(guò)程來(lái)進(jìn)行。我知道變更可能會(huì)使我們重新協(xié)商成本、資源和項(xiàng)目階段任務(wù)等事宜?!睂?duì)需求分析達(dá)成一定的共識(shí)會(huì)使雙方易于忍受將來(lái)的摩擦,這些摩擦來(lái)源于項(xiàng)目的改進(jìn)和需求的誤差或市場(chǎng)和業(yè)務(wù)的新要求等。
需求確認(rèn)將迷霧撥散,顯現(xiàn)需求的真面目,給初步的需求開發(fā)工作畫上了雙方都明確的句號(hào),并有助于形成一個(gè)持續(xù)良好的客戶與開發(fā)人員的關(guān)系,為項(xiàng)目的成功奠定了堅(jiān)實(shí)的基礎(chǔ)。