一份事實(shí)上的技術(shù)合同。
然而,由于以下幾方面的原因,開發(fā)人員對(duì)《軟件需求規(guī)格說明書》理解不準(zhǔn)確,使得軟件開發(fā)過程中和交付使用之后不斷出現(xiàn)用戶不期望出現(xiàn)的問題,軟件產(chǎn)品不能準(zhǔn)確地按用戶的期望工作。
(2) 不嚴(yán)格按需求開發(fā),自以為是。業(yè)務(wù)人員和技術(shù)人員由于知識(shí)背景各異,長(zhǎng)期受到的訓(xùn)練不同,有很多差別。業(yè)務(wù)人員在描述問題時(shí)常常根據(jù)當(dāng)前的實(shí)際做法簡(jiǎn)略描述,許多細(xì)節(jié)被忽略。
在實(shí)際開發(fā)中,個(gè)別開發(fā)人員可能對(duì)業(yè)務(wù)需求中的一些提法和做法不愿接受,覺得從技術(shù)角度看,換一種處理方式可能更合理、更簡(jiǎn)單。因此,有時(shí)個(gè)別開發(fā)人員可能會(huì)在某些處理中按自己“更為合理”的理解去做,其結(jié)果是開發(fā)的產(chǎn)品不符合業(yè)務(wù)需求。
(3)不堅(jiān)持原則,根據(jù)個(gè)別人的要求變動(dòng)需求。業(yè)務(wù)需求是一個(gè)業(yè)務(wù)處理的全面約定,對(duì)需求的確認(rèn)和修改是嚴(yán)肅的事情,不能隨意變動(dòng)需求。在金融軟件開發(fā)實(shí)踐中,開發(fā)人員有時(shí)不能堅(jiān)持這項(xiàng)原則,對(duì)業(yè)務(wù)人員的一些個(gè)別要求不經(jīng)過管理程序就隨意答應(yīng)。
結(jié)果是,最終提交的產(chǎn)品不符合《軟件需求規(guī)格說明書》的要求,其中變動(dòng)部分有時(shí)連需求提出者和相關(guān)管理部門也不掌握。
3、解決的辦法
多換位思考,注意溝通的技巧
需求的復(fù)雜性是固有的,是無法避免的。每個(gè)人的知識(shí)都是有限的,所以不要苛求業(yè)務(wù)人員對(duì)IT技術(shù)非常精通,交流時(shí)盡量使用通俗用語而不是IT術(shù)語。在規(guī)定時(shí)間內(nèi),用有限的資源來保質(zhì)保量地完成項(xiàng)目,讓業(yè)務(wù)部門滿意是開發(fā)部門的職責(zé)。
開發(fā)部門應(yīng)當(dāng)想盡一切辦法克服需求開發(fā)和需求管理過程中的困難,而不是找借口推卸責(zé)任。在與業(yè)務(wù)人員的溝通中,應(yīng)當(dāng)更多地從業(yè)務(wù)人員的角度考慮問題,應(yīng)當(dāng)盡量避免正面沖突,耐心傾聽意見,多問一問“您還有什么想法?”,
等業(yè)務(wù)人員把他的想法都表述清楚以后,開發(fā)人員可以迅速評(píng)估一下他們的建議,如果實(shí)現(xiàn)起來太困難,可以給業(yè)務(wù)人員一些更加中肯的提議,多用“您看這樣行不行?”、“這樣也可以達(dá)到同樣的目的”之類的語言。
當(dāng)業(yè)務(wù)人員提出需求變更時(shí),可以站在業(yè)務(wù)人員的角度來說明需求對(duì)整個(gè)項(xiàng)目的重要性,比如對(duì)項(xiàng)目進(jìn)度的影響、對(duì)系統(tǒng)架構(gòu)的影響、對(duì)系統(tǒng)穩(wěn)定性的影響以及對(duì)系統(tǒng)用戶的操作習(xí)慣的影響等。
當(dāng)與業(yè)務(wù)人員的爭(zhēng)議不可避免時(shí),項(xiàng)目經(jīng)理一定要堅(jiān)持原則。如果遇到爭(zhēng)議不下的問題,可以提交雙方部門領(lǐng)導(dǎo)進(jìn)行裁決。
(1)業(yè)務(wù)培訓(xùn)。由于金融領(lǐng)域的業(yè)務(wù)知識(shí)專業(yè)性非常強(qiáng),因此完全有必要在項(xiàng)目初期,聘請(qǐng)既懂技術(shù)又懂業(yè)務(wù)的專家,組織開發(fā)人員進(jìn)行有針對(duì)性的業(yè)務(wù)知識(shí)培訓(xùn),避免出現(xiàn)因不熟悉業(yè)務(wù)知識(shí),而導(dǎo)致需求理解上的失誤。
(2)需求調(diào)研。需求調(diào)研有幾種方式,常見的有需求討論會(huì)和跟班作業(yè)。跟班作業(yè)是最有效的方式,但消耗資源較多,且受項(xiàng)目成本和項(xiàng)目時(shí)間的約束,很少有項(xiàng)目采用。召開需求討論會(huì),是需求調(diào)研的常見做法。
會(huì)前應(yīng)做好充分的準(zhǔn)備,起草需求調(diào)查問題表,將調(diào)查重點(diǎn)鎖定在該問題表內(nèi),否則討論將會(huì)變得漫無邊際。在討論會(huì)上要耐心聆聽,同時(shí)要善于提問,并且要主導(dǎo)討論內(nèi)容,否則將無法保證討論進(jìn)度。問題表可以有多份,隨著調(diào)查的深入,問題表將不斷地被細(xì)化。
根據(jù)經(jīng)驗(yàn),業(yè)務(wù)人員通常沒有耐心回答復(fù)雜的論述題,所以問題表應(yīng)當(dāng)以選擇題、是非題和簡(jiǎn)答題為主。
(3) 需求評(píng)審。在需求整理完畢形成文檔以后,開發(fā)人員最好把自己總結(jié)的需求,向業(yè)務(wù)人員比較詳細(xì)地講解一遍。這種做法不僅能夠大大減少技術(shù)人員與業(yè)務(wù)人員在業(yè)務(wù)層面的歧義,還可以及時(shí)準(zhǔn)確地發(fā)現(xiàn)潛在的問題。
開發(fā)部門和業(yè)務(wù)部門共同對(duì)需求文檔進(jìn)行評(píng)審,雙方對(duì)需求達(dá)成共識(shí)后做出書面承諾,使需求文檔具有一定的約束力。即便因?yàn)闃I(yè)務(wù)變化,不得不對(duì)項(xiàng)目需求進(jìn)行大的調(diào)整,以