你要做一個(gè)ERP項(xiàng)目就意味著你必須優(yōu)化業(yè)務(wù)流程,而上一個(gè)部門級(jí)MIS項(xiàng)目就沒(méi)有必要用牛刀了)。然后你會(huì)得到一個(gè)叫做業(yè)務(wù)前景(Business Vision)的東西,其實(shí)就是項(xiàng)目成功后會(huì)是個(gè)什么樣子,并在涉眾范圍內(nèi)達(dá)成一致。業(yè)務(wù)需求層次需要投入的精力視具體項(xiàng)目而定,而業(yè)務(wù)需求的確定對(duì)之后的用戶需求和功能需求起了限定作用,業(yè)務(wù)需求就是需求過(guò)程的憲法,任何需求不得與之相違背。
到了用戶需求層次上(RUP的需求工作流程),重心就轉(zhuǎn)移到如何收集用戶的需求上,即確定角色和角色的用例,需求分析是很難的,因?yàn)楹芏嘈枨笫请[性的,很難獲取,更難保證需求完整,而需求又是易變的。一般來(lái)說(shuō),在過(guò)去作需求分析的時(shí)候,更多依靠的是閱讀企業(yè)的文件,但是企業(yè)的文件往往有局限性,例如落后于當(dāng)前的業(yè)務(wù),不夠明確,依賴于管理水平的高低,所以后來(lái)獲取需求的方法逐漸傾向組織訪談會(huì)(Interview)。
功能需求依賴于用戶需求,可以說(shuō)是用戶需求在系統(tǒng)上的一個(gè)映射(Mapping)。開(kāi)發(fā)者思考的角度從用戶轉(zhuǎn)移到開(kāi)發(fā)者。在這個(gè)層次上,為用戶做一個(gè)軟件原型是一個(gè)很不錯(cuò)的主意。直到現(xiàn)在,用戶對(duì)軟件還是沒(méi)有一個(gè)實(shí)實(shí)在在的概念,如果你給用戶一個(gè)原型,用戶就會(huì)說(shuō),"哦,我的XX系統(tǒng)原來(lái)就是這樣的。"這就避免了用戶在軟件開(kāi)發(fā)完成后才看到軟件所帶來(lái)的一些風(fēng)險(xiǎn)。是否有必要采用快速原型開(kāi)發(fā)法和原型應(yīng)開(kāi)發(fā)到何種地步取決于具體的項(xiàng)目,很多時(shí)候,用一些非正規(guī)的方法來(lái)生成原型:如果你要開(kāi)發(fā)一個(gè)WEB系統(tǒng),讓你的美工做幾個(gè)頁(yè)面給用戶看看,如果你做一個(gè)C/S系統(tǒng),做一個(gè)界面給用戶,都已經(jīng)足夠用了,甚至你完全可以在黑板上畫(huà)一畫(huà)你將來(lái)的軟件的面貌都可以。用戶大都是比較友善的,不要把問(wèn)題想的過(guò)于復(fù)雜。 需求的標(biāo)準(zhǔn)討論軟件需求的文章有很多,對(duì)于需求的標(biāo)準(zhǔn)也不盡相同,但是在思想上是相同,都是為了保證項(xiàng)目的順利進(jìn)行。這里我總結(jié)一些比較通用的標(biāo)準(zhǔn),可能并不完善,但你只要能保證做到這幾點(diǎn),你的項(xiàng)目就不容易失?。好鞔_(Clear)、完整(Complete)、一致(Consistent)、可測(cè)試(Testable),此外還有其他的概念,如可跟蹤、可修改等等。
明確:目前大多數(shù)的需求分析采用的仍然是自然語(yǔ)言(因?yàn)槿绻捎眯问交Z(yǔ)言的話,和用戶的溝通將成為一個(gè)大問(wèn)題,這意味著客戶在開(kāi)發(fā)軟件之前必須先進(jìn)行形式化語(yǔ)言培訓(xùn),這是不現(xiàn)實(shí)的)。自然語(yǔ)言對(duì)需求分析最大的弊病就是它的二義性。所以我們不得不對(duì)需求分析中采用的語(yǔ)言做某些限制。例如盡量采用主語(yǔ)+動(dòng)作的簡(jiǎn)單表達(dá)方式。說(shuō)白了,需求分析中的描述讓人看上去像是剛學(xué)習(xí)寫(xiě)作的小孩子就對(duì)了,千萬(wàn)不要采用疑問(wèn)句、修飾這些華麗的表達(dá)方式。
除了語(yǔ)言的二義性之外,注意不要使用行話,就是計(jì)算機(jī)術(shù)語(yǔ)。需求分析最重要的是和用戶溝通,可是用戶多半不是計(jì)算機(jī)的專業(yè)人士,如果在需求分析中使用了行話,就會(huì)造成用戶理解上的困難。
打個(gè)比方,如果你要做一個(gè)銀行的信用卡系統(tǒng),你就可以這樣描述軟件需求:銀行的卡部管理信用卡,每張信用卡只屬于一個(gè)帳戶。信用卡有卡號(hào)、余額。一張信用卡有多筆的交易記錄。
完整:再也沒(méi)有什么比軟件開(kāi)發(fā)接近完成時(shí)才發(fā)現(xiàn)遺漏了一項(xiàng)需求更糟的事情了。需求的完整性是非常非常重要的,想象一下遺漏需求而不得不返工,這簡(jiǎn)直就是惡夢(mèng)??墒橇钊诉z憾的是,需求的遺漏是很經(jīng)常發(fā)生的事情,不僅僅是你的問(wèn)題,更多的問(wèn)題發(fā)生在用戶那里,他們不知道該做些什么。要做到需求的完整性是很艱難的一件事情,它涉及到需求分析過(guò)程的各方各面,貫穿了整個(gè)過(guò)程,從最初的計(jì)劃制定到最后的需求評(píng)審。
一致:一致性也是一個(gè)比較大的概念,很難用幾
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線啦!快來(lái)測(cè)測(cè)你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html