隨著對(duì)項(xiàng)目管理理解的深入,自己對(duì)項(xiàng)目管理的兩點(diǎn)有了深刻理解:需求開(kāi)發(fā)與管理、項(xiàng)目組織結(jié)構(gòu)。
一、需求開(kāi)發(fā)與管理
寬泛地講,需求來(lái)源于用戶的一些“需要”,這些“需要”被分析、確認(rèn)后形成完整的文檔,該文檔詳細(xì)地說(shuō)明了產(chǎn)品“必須或應(yīng)當(dāng)”做什么。所以如果只有一些零碎的對(duì)話、資料或郵件,你以為自己已經(jīng)掌握了需求,那是自欺欺人。需求是產(chǎn)品的根源,需求工作的優(yōu)劣對(duì)產(chǎn)品影響大。像一條河流,如果源頭被污染了,那么整條河流也被污染了。 我們經(jīng)?吹降氖牵喝藗儾⒉磺宄烤乖撟鍪裁,但卻一直忙碌不停地開(kāi)發(fā)。
需求開(kāi)發(fā)與管理面臨普遍的問(wèn)題是:用戶說(shuō)不清楚需求。
有些用戶真的不知道需求是什么,或者對(duì)需求只有朦朧的感覺(jué),他當(dāng)然說(shuō)不清楚需求。例如,早期的政府信息化項(xiàng)目用戶通常只有一個(gè)朦朧的信息化感覺(jué)而已,需求分析中會(huì)這樣寫(xiě):"總之,要實(shí)現(xiàn)那種能夠想到能做到功能。"。如果開(kāi)發(fā)方的營(yíng)銷(xiāo)人員水平比較高,他能夠在用戶不清楚自己要什么的情況下引導(dǎo)用戶“消費(fèi)”。
有些用戶雖然心里明白想要什么,但卻說(shuō)不清楚需求。 比如說(shuō)買(mǎi)鞋子。我們非常了解自已的腳,但很難用語(yǔ)言說(shuō)清楚腳的大小和形狀。通常拿鞋子去試,試穿時(shí)感覺(jué)到舒服才會(huì)買(mǎi)鞋。一些企業(yè)的信息化項(xiàng)目,每個(gè)子部門(mén)對(duì)自身的需要很清楚,但不知道如何從系統(tǒng)角度來(lái)要求。
因此,我們可以說(shuō)項(xiàng)目開(kāi)發(fā)困難的部分也是準(zhǔn)確說(shuō)明開(kāi)發(fā)什么。困難的概念性工作是編寫(xiě)出詳細(xì)的需求,包括所有面向用戶、面向機(jī)器和其它軟件系統(tǒng)的接口。此工作一旦做錯(cuò),將會(huì)給系統(tǒng)帶來(lái)極大的損害,并且以后對(duì)它修改也極為困難。為此,需求分析員絕不能以用戶說(shuō)不清楚需求為借口而草率地對(duì)待需求開(kāi)發(fā)工作,否則會(huì)連累整個(gè)開(kāi)發(fā)團(tuán)隊(duì)的。
業(yè)內(nèi)來(lái)看,一個(gè)成熟、成功的項(xiàng)目,通常它在前期需求、系統(tǒng)設(shè)計(jì)投入的工作量比例會(huì)大于30%。
1、需求開(kāi)發(fā) 與分析
需求開(kāi)發(fā)的目的是通過(guò)調(diào)查與分析,獲取用戶需求并定義產(chǎn)品需求。根據(jù)需求調(diào)查和需求分析的結(jié)果,進(jìn)一步定義準(zhǔn)確無(wú)誤的產(chǎn)品需求,產(chǎn)生《產(chǎn)品需求規(guī)格說(shuō)明書(shū)》。系統(tǒng)設(shè)計(jì)人員將依據(jù)《產(chǎn)品需求規(guī)格說(shuō)明書(shū)》開(kāi)展系統(tǒng)設(shè)計(jì)工作。 一個(gè)良好的需求說(shuō)明書(shū),應(yīng)該有如下特征:
1.1 正確
需求規(guī)格說(shuō)明書(shū)應(yīng)當(dāng)正確地反映用戶的真實(shí)意圖,開(kāi)發(fā)者和用戶自己都不明白用戶究竟“想要什么”和“不要什么”。為確保需求是正確的,開(kāi)發(fā)方和用戶必須對(duì)《需求規(guī)格說(shuō)明書(shū)》進(jìn)行確認(rèn)。
1.2 清楚
清楚的需求讓人易讀易懂,包括文檔的結(jié)構(gòu)、段落等是否清晰。
1.3 無(wú)二義性
“無(wú)二義性” 是指每個(gè)需求只有的含義。
1.4 一致
“一致”(Consistent)是指各個(gè)需求之間不會(huì)發(fā)生矛盾。矛盾常常潛伏在需求文檔的上下文中。
1.5 必要
開(kāi)發(fā)者應(yīng)當(dāng)集中精力先完成必要的需求,如果條件允許則再做“錦上添花”的需求。為了避免主次顛倒,應(yīng)當(dāng)在《產(chǎn)品需求規(guī)格說(shuō)明書(shū)》中將那些“錦上添花”的需求設(shè)置為較低的優(yōu)先級(jí)。
1.6 完備
“完備”(Complete)是指《產(chǎn)品需求規(guī)格說(shuō)明書(shū)》中沒(méi)有遺漏一些必要的需求,比如是否覆蓋了所有的功能、性能、交叉、安全等需求。
1.7 可實(shí)現(xiàn)
《產(chǎn)品需求規(guī)格說(shuō)明書(shū)》中的各項(xiàng)需求對(duì)開(kāi)發(fā)方而言應(yīng)當(dāng)都是可實(shí)現(xiàn)的(Attainable)。
“可實(shí)現(xiàn)”意味著在技術(shù)上是可行的,并且滿足時(shí)間、費(fèi)用、質(zhì)量等約束。
1.8 可驗(yàn)證
《產(chǎn)品需求規(guī)格說(shuō)明書(shū)》中的各項(xiàng)需求對(duì)用戶方而言應(yīng)當(dāng)都是可驗(yàn)證的(Verifiable)。如果需求是不可驗(yàn)證的,那么用戶無(wú)法驗(yàn)收軟件,可能會(huì)發(fā)生商業(yè)糾紛。
1.9 確定優(yōu)先級(jí)
需求的優(yōu)先級(jí)其實(shí)是需求“輕重緩急”的分級(jí)表述,例如劃分為“高、中、低”三級(jí)。一般地,由用戶和開(kāi)發(fā)方共同確定需求的優(yōu)先級(jí)。
1.10 闡述“做什么”而不是“怎么做”
開(kāi)發(fā)人員常常身兼數(shù)職,可能把需求開(kāi)發(fā)、系統(tǒng)設(shè)計(jì)、編程等工作從頭做到尾。他們經(jīng)常在整理需求的時(shí)候習(xí)慣性將如何實(shí)現(xiàn)的信息涵蓋在需求中,導(dǎo)致需求可讀性、可驗(yàn)證性無(wú)法保證。