機的認知程度的不同,使用習慣的不同,在軟件目標組織中所處的地位不同,地理位置不同,業(yè)務熟練程度不同。
不同的用戶都有自己一系列的功能需求和非功能需求。對電腦熟練程度不同的人可能就會有不同的要求,熟練程度低的用戶可能希望有一個友好的界面,熟練程度高的用戶可能更希望有快捷鍵或宏的操作以提高工作效率??紤]到用戶的差異性,將用戶分類并研究用戶類的行為特征是非常有必要的。所以在做具體的需求之前,先將用戶分局行為和特點進行分類,對于研究、收集用戶的需求是非常有幫助的。
可以利用一個簡單的表格列出一些原始的分類,然后不斷的完善這個表格。確認你的分類之間沒有交集。并充分描述用戶分類的行為,目的,要求等。在企業(yè)分析中,比較常見的分類可能包括,供應商,客戶,部門等。
就像C++中的類和對象一樣,我們把分析出的用戶分類稱為“角色類”,把實際的用戶稱為“角色實例”。在得到用戶分類之后,最重要的就是要選出用戶代表,用戶代表不僅僅是在需求階段中參與項目,還必須對項目的全過程負責。用戶代表能夠代表用戶分類的需求。抓住用戶代表的需求就大致把握住了用戶類的需求。當然,需求分析還是需要在用戶中做大規(guī)模的調(diào)查的,只是要把重點放在用戶代表上。
確保和用戶直接進行溝通!大家有沒有玩過傳話的游戲,可能看過。一群人排成一列,一句話從排頭挨個向后傳,到最后,那句話已經(jīng)是面目全非了。所以,一定要保證項目組能夠直接和用戶接觸。
對于和用戶直接溝通這一點,一般的針對特定企業(yè)的應用系統(tǒng)當然是不成問題,可是如果是開發(fā)行業(yè)軟件,和用戶直接溝通就成為一件幾乎是不可能的事情。在這種情況下,一般有幾種解決的辦法:
做大規(guī)模的市場調(diào)查,針對你的目標市場做市場調(diào)查,并根據(jù)統(tǒng)計學的理論建立你的數(shù)學模型。這部分的工作效果最好,其性質(zhì)有些象一些游戲公司會發(fā)布一些Demo版的游戲。可是對于一般的企業(yè)來說,這項工作費時費力,高昂的成本往往使大家知難而退。我的意見是,方法是非常好的,但是可以采用折衷的辦法,例如選取有代表性的企業(yè),為特定企業(yè)制作一個較小的版本并收集反饋意見等。這涉及到很多市場營銷的內(nèi)容,并不是我的專業(yè)所長,這里就不多弄斧了。
聘請行業(yè)專家,一個行業(yè)專家往往可以在項目需求方面發(fā)揮極為重要的作用。一個行業(yè)專家往往都有大量的行業(yè)經(jīng)驗和行業(yè)的人際關(guān)系網(wǎng)絡(luò)。在產(chǎn)品的設(shè)計方面,這個行業(yè)專家提供很多寶貴的意見。在目前很多的軟件的開發(fā)過程中都采用了這種方式。行業(yè)專家有兩種:一種是在這個行業(yè)中有很深的資歷,但是對軟件技術(shù)并不熟悉;第二種是開發(fā)過同類軟件的軟件專家,這種人在開發(fā)同類軟件過程中已經(jīng)積累了大量的項目經(jīng)驗,并且具有軟件開發(fā)的知識。這種方式是獲取需求的最好的方式。
分析對比同類軟件,微軟在開發(fā)Office、Visual Studio的時候,也是參照了Lotus和Borland的成熟產(chǎn)品。這種方式的特點在于成本很低,比較適合和其他的方式配合使用。但是,要注意自己有沒有觸犯專利法。
需求的沖突
有的時候,雖然已經(jīng)將用戶分類并選出了用戶代表。但是需求的來源眾多,往往會發(fā)生需求之間自相矛盾的事情。需求從四面八方收集來后,人們難以解決沖突,澄清模糊之處以及協(xié)調(diào)不一致之處。某些人還要對不可避免要發(fā)生的范圍問題單獨作出決定。在項目的早期階段,你必須決定誰是需求問題的決策者。如果不清楚誰有權(quán)并且有責任來作出決策,或者授權(quán)的個人不愿意或不能作出決策,那么決策者的角色將自然而然地落在開發(fā)者身上。這是一個非常糟糕的選擇,因為開發(fā)者通常沒有足夠多的信息和觀點來作出業(yè)務上的決策。
在軟件項目中,誰將對需求作出決策的問題并沒有統(tǒng)一的正確答案。分析員有時
項目經(jīng)理勝任力免費測評PMQ上線啦!快來測測你排多少名吧~
http://opto-elec.com.cn/pmqhd/index.html