很多人認(rèn)為,軟件的需求過程只有在做企業(yè)的軟件時(shí)才用的上,因?yàn)橐涂蛻舸蚪坏?要定需求才開發(fā)系統(tǒng),原則上這樣去做企業(yè)軟件是沒有問題,需求的過程管理,更多的是為了界定需求的邊界防止客戶扯皮的問題,也為以后的系統(tǒng)現(xiàn)實(shí)階段奠基石.而網(wǎng)站,互聯(lián)網(wǎng)的產(chǎn)品更多的好像沒有這個(gè)需求的過程,我做的那個(gè)JJY的產(chǎn)品,基本上需求是是大家湊出來(lái),過程基本上沒有,需求的過程控制的很一般.沒有內(nèi)功,不知道以后在產(chǎn)品需求發(fā)生變化或擴(kuò)大時(shí)會(huì)有什么問題發(fā)生.
以下是做企業(yè)軟件的需求過程管理以作為參考:
眾所周期,軟件需求分析是軟件生命周期的第二階段,主要對(duì)前期軟件定義及計(jì)劃階段提到的任務(wù)及計(jì)劃進(jìn)行概要的補(bǔ)充,需求分析的主要任務(wù)不是確定將來(lái)的系統(tǒng)怎么完成某項(xiàng)工作,這是設(shè)計(jì)階段的事情,而是明確系統(tǒng)將要完成什么功能,對(duì)目標(biāo)系統(tǒng)將要完成的功能提出完整、準(zhǔn)確的描述等;在我們國(guó)內(nèi)很多軟件公司里,需求分析階段與設(shè)計(jì)階段沒有明確的界線,需求分析階段的很多工作,都會(huì)放到設(shè)計(jì)階段來(lái)做或干脆不做,一般很少嚴(yán)格按照軟件工程的方法來(lái)執(zhí)行(通過CMM認(rèn)證的軟件公司還好些),大多數(shù)人理解下的需求分析階段的任務(wù)主要還是分三部分:需求的收集、需求整理與編寫及最終的評(píng)審,在此就這幾個(gè)階段中經(jīng)常遇到的問題作一下大體描述。
一、 需求的收集
無(wú)論是老產(chǎn)品的改造還是新產(chǎn)品的開發(fā),都需要收集大量的需求作為改造的重點(diǎn)對(duì)象,需求的收集也可籠統(tǒng)的分二大部分:內(nèi)部需求與外部需求;內(nèi)部需求一般包括軟件在維護(hù)過程中客戶反饋的未處理的需求、公司內(nèi)部其它各部門在實(shí)施軟件過程中反饋的需求及設(shè)計(jì)或研發(fā)人員在工作當(dāng)中總結(jié)的對(duì)軟件易用性、效率等方面的需求,還包括研究競(jìng)爭(zhēng)對(duì)手的軟件而得出的需求等;外部需求一般包括軟件實(shí)施人員或代理商對(duì)產(chǎn)品提出的改造建議、設(shè)計(jì)人員直接到客戶現(xiàn)場(chǎng)調(diào)研、通過與客戶溝通而得到的需求等。在收集需求的過程中常會(huì)遇到以下幾方面的問題:
1、 誤解客戶需求,一般情況下需求分析人員與客戶在業(yè)務(wù)術(shù)語(yǔ)表達(dá)上有所不同,交流過程中可能會(huì)理解有誤,特別對(duì)于有二義性的需求,會(huì)導(dǎo)致分析人員誤解客戶的需求,也可以理解為需求表達(dá)比較模糊,不同的人有不同的理解。
2、 需求的不確定性,一是分析人員對(duì)需求把握不準(zhǔn),有些從各個(gè)渠道反饋回來(lái)的需求有些失真,不能完全表達(dá)客戶的意愿;二是客戶需求的變動(dòng)較大,不確定,不到真正實(shí)用很難表達(dá)清楚要實(shí)現(xiàn)的功能。
3、 對(duì)時(shí)間的合理規(guī)劃,收集過程中經(jīng)常感覺時(shí)間太緊,無(wú)法完整的收集到客戶的需求,這一點(diǎn)主要還是跟事先沒有計(jì)劃好有關(guān),需求的收集是一個(gè)長(zhǎng)期的過程,而不是在某一時(shí)間段內(nèi)就能收集完的,好的需求在于平時(shí)的積累,是在日常維護(hù)工作中逐漸收集形成的。
4、 善于主動(dòng)尋找需求,而不是坐等需求,收集需求的過程中,要通過各種途徑來(lái)收集,主動(dòng)跟客戶或同事交流,這樣才能在溝通過程中得到很多需求,這點(diǎn)主要還是在于分析人員的溝通能力。
二、 需求的整理與編寫
需求收集完成后,此階段的任務(wù)主要對(duì)需求進(jìn)行過慮、分類整理及編寫需求規(guī)格,需求的整理不權(quán)是分分類、寫寫需求規(guī)格,還要對(duì)每個(gè)需求進(jìn)行分析,確定這個(gè)需求將來(lái)做不做,及實(shí)現(xiàn)的優(yōu)先級(jí)是什么(是高、中還是低),這一階段對(duì)分析人員的要求比較高,要縱觀全局來(lái)考慮,充分考慮到每個(gè)需求點(diǎn)對(duì)整個(gè)系統(tǒng)的影響等,最終形成軟件需求規(guī)格說(shuō)明書。這一階段常見的問題有以下幾方面:
1、 缺乏對(duì)需求的深入理解,需求分析這個(gè)崗位在很多軟件公司都是虛擬的,沒有專人負(fù)責(zé),一般由設(shè)計(jì)或開發(fā)人員來(lái)負(fù)責(zé),這樣往往會(huì)導(dǎo)致對(duì)業(yè)務(wù)的需求不能深入理解,在系統(tǒng)把握能力上略顯不足,導(dǎo)