作
俗話說,“百聞不如一見”,對于一些較為復雜的流程和操作而言,是比較難以用語言和文字進行表達的,對于這種情況,可以采用到客戶的工作現(xiàn)場,一邊觀察,一邊聽客戶講解,從而更直觀的了解客戶需求。
4) 從行業(yè)標準、規(guī)則中提取需求
如果用戶要求所開發(fā)的軟件產(chǎn)品必須滿足一定的行業(yè)標準和業(yè)務規(guī)則,需求分析師可以通過閱讀政策法規(guī)、業(yè)務規(guī)則以及行業(yè)標準等各類相關(guān)的文檔,并與相關(guān)領(lǐng)域的業(yè)務專家進行業(yè)務交流來了解客戶的需求。
這種方法要求需求分析師有一定的行業(yè)從業(yè)經(jīng)驗,能夠了解行業(yè)的發(fā)展動向,這對從技術(shù)出生的需求分析師來說是一個巨大的考驗。
5) 文檔考古
對于一些數(shù)據(jù)流比較復雜的、工作表單較多的項目,有時是難以通過說或者觀察來了解需求細節(jié)的。這個時候就可以通過對歷史存在的一些文檔進行研究,考古一詞非常形象地說明了其主要的工作重心是通過已經(jīng)填寫完畢的、也就是帶有數(shù)據(jù)的文件、表單、報告,獲得所需的信息。
6) 需求討論會
這是一種相對來說成本較高的需求獲取方法,但也是十分有效的一種。它通過聯(lián)合各個關(guān)鍵客戶代表,分析人員,開發(fā)人員,通過有組織的會議來討論需求。
在會議之前,應該將與討論主體相關(guān)的材料提前分發(fā)給所有將要參加會議的人。在會議開始之后,先針對材料所列舉的問題進行逐項專題討論,然后對原有系統(tǒng)、類似系統(tǒng)的不足進行開放性交流,并在此基礎上對新的解決方案進行構(gòu)思,在此過程中將所有的想法、問題和不足記錄下來,形成一個要點清單,作為后續(xù)需求分析的依據(jù)。
7) 原型法
原型(prototype)即把系統(tǒng)主要功能和接口通過快速開發(fā)制作為“軟件樣機”,以可視化的形式展現(xiàn)給用戶,及時征求用戶意見,從而明確無誤地確定用戶需求。同時,原型也可用于征求內(nèi)部意見,作為分析和設計的接口之一,可方便于溝通。原型法主要價值是可視化,強化溝通,降低風險,節(jié)省后期變更成本,提高項目成功率。
原型法的優(yōu)點是:
i)鼓勵業(yè)務管理者的積極參與;
ii)有助于解決業(yè)務管理者之間的差異;
iii)能給業(yè)務管理者一個對最終系統(tǒng)的直觀感受;4)周期短;5)成本低;6)用戶較滿意。
但原型法也有缺點,主要為:
i)導致人們認為最終系統(tǒng)將很快產(chǎn)生;
ii)對系統(tǒng)操作權(quán)限的說明較弱;
iii)不適合于開發(fā)大系統(tǒng);
iv)開發(fā)過程管理困難。
在實際開發(fā)過程中,筆者所在公司一般比較常用的需求獲取方法是用戶訪談、需求討論會和原型法。對于相對較小的項目,筆者極力推薦原型法,因為通過可視化的界面,可更容易的、更快的挖掘客戶的需求。
二、人員配置
在整個項目的生命周期中,可能涉及到開發(fā)方的角色如下:
1、需求分析師
完成產(chǎn)品或項目的需求調(diào)研和開發(fā),將客戶的需求變成產(chǎn)品需求,參與需求的討論和分析,完成需求規(guī)格說明書等的編寫。
2、系統(tǒng)架構(gòu)師
系統(tǒng)架構(gòu)師負責理解系統(tǒng)的業(yè)務需求,并創(chuàng)建合理、完善的系統(tǒng)體系架構(gòu)。架構(gòu)師也負責通過軟件架構(gòu)來決定主要的技術(shù)選擇。這典型的包括識別和文檔化系統(tǒng)的重要架構(gòu)方面,他側(cè)重于系統(tǒng)的質(zhì)量屬性設計,包括系統(tǒng)的可靠性、可測試性、可重用性、可維護性、可重用性、可擴展性、性能指標、組件框架設計、共用基礎結(jié)構(gòu)等。
3、系統(tǒng)分析員
該角色是系統(tǒng)設計中的一個主要角色,他參與需求分析、系統(tǒng)功能設計、系統(tǒng)質(zhì)量屬性設計等過程。
4、項目經(jīng)理
項目經(jīng)理是項目溝通的紐帶,他執(zhí)行項目的進度跟蹤、質(zhì)量管理、客戶非技術(shù)人員業(yè)務交流、項目成員共同、非技術(shù)風險管理等職責。
5、配置管理員
該角色的職責是完成項目中各文檔的管理等。
6、QA
重點關(guān)注軟件過程的質(zhì)量,在項目