引言
金融全球化和網(wǎng)絡化加劇了商業(yè)銀行的國際競爭,中國按照WID的要求逐步對外開放了自己的金融市場。為了與國際金融市場接軌,我國的國有和商業(yè)銀行正在逐步地改變以往傳統(tǒng)的服務方式,轉(zhuǎn)變經(jīng)營機制,采用先進技術,金融創(chuàng)新產(chǎn)品不斷應運而生,從而進一步提高國際市場競爭力。隨著國內(nèi)幾大商業(yè)銀行逐步實現(xiàn)數(shù)據(jù)大集中,軟件規(guī)模也越來越大,核心銀行業(yè)務系統(tǒng)更是要數(shù)百人做上一兩年。
金融軟件素以高質(zhì)量,高可靠,高安全等著稱,如何提高軟件開發(fā)的質(zhì)量和效率已經(jīng)成為金融軟件開發(fā)的核心問題。圍其實沒有一個明確和固定的說法,只有靠核心企業(yè)和成員企業(yè)在項目的前期充分溝通,填密規(guī)劃才能保證項目的相關信息充分而高效的流通。
軟件需求管理是關系到金融軟件產(chǎn)品質(zhì)量的關鍵,軟件需求的質(zhì)量直接關系到軟件項目能否高質(zhì)量地按期完成,也是評判客戶滿意度的重要指標。本文以銀行軟件開發(fā)項目為背景,對銀行軟件項目管理中的需求管理進行研究,希望能對提高金融軟件項目的成功率有所幫助。
1、需求管理的重要性
在軟件生命周期中,需求分析是最重要的一個階段。軟件需求分析的質(zhì)量對軟件開發(fā)的影響是深遠的、全局性的,高質(zhì)量需求對軟件開發(fā)往往起到事半功倍的效果,越早在需求管理中解決錯誤,就越節(jié)約項目成本。
系統(tǒng)分析時犯下的錯誤,會在接下來的階段被成倍地放大,越是在開發(fā)的后期,糾正分析時犯下的錯誤所花費的代價越是昂貴,也越會影響系統(tǒng)的工期和系統(tǒng)的質(zhì)量。需求分析的過程,是分析用戶的需求的過程,是全面理解用戶的各項要求,并且準確地表達所接受的用戶需求的過程。如果投入了大量的人力、物力、財力和時間開發(fā)出來的軟件并不是用戶真正需要的東西,那么所有投人都是徒勞,開發(fā)出來的東西不能得到用戶的認可,從而造成重新開發(fā)過,這樣不僅影響項目進度,而且嚴重影響項目組人員的積極性。
需求分析之所以重要,還因為它具有政策性,方向性,策略性的作用,對于整個項目的成功與否起到了舉足輕重的作用,所以一定要對需求分析有足夠的重視,在大型的金融軟件項目中,它的作用要遠遠大于程序設計。
2、需求工程的內(nèi)容
需求分析是指理解用戶需求,就軟件功能與用戶達成一致的過程,是開發(fā)人員對系統(tǒng)需要做什么和如何做的定義過程。研究人員對需求分析的過程進行了長期深人的研究,并將需求分析逐漸發(fā)展成一個獨立的分支—需求工程(Requi~ntsEngineering)。需求工程的主要內(nèi)容有需求開發(fā)和需求管理兩部分,其中需求開發(fā)又可以分為問題獲取、需求分析、編寫規(guī)格說明和需求驗證等幾個階段。本文也是依據(jù)此結(jié)構(gòu)展開論述,探討金融軟件項目的需求管理。
3、需求開發(fā)的流程
3.1 問題獲取
問題獲取是需求分析人員與系統(tǒng)用戶一起工作以明確用戶需求的過程。一個軟件開發(fā)部門的業(yè)務分析人員要和金融軟件業(yè)務部門的領導、主管、業(yè)務人員進行訪談和討論,從而在宏觀上把握需求,同時逐步了解客戶需要及業(yè)務流程,與業(yè)務人員通過不斷的交流溝通對項目需求達成一致。
在問題獲取階段,銀行軟件的項目組人員往往派出熟悉銀行業(yè)務的分析人員,就軟件系統(tǒng)的功能不斷地開會,討論,逐步確定項目的業(yè)務需求、用戶需求。業(yè)務分析人員有良好的溝通技巧和軟件業(yè)務系統(tǒng)背景,往往能夠更順利地挖掘到系統(tǒng)的明示需求和隱含需求。
在很多情況下,對于一些較大的銀行業(yè)務系統(tǒng)的項目需求,業(yè)務部門往往也很難給出一個完整的正確可行的需求,通常的解決辦法是采用快速原型法。開發(fā)方根據(jù)以往的經(jīng)驗提供給用戶一個需求原型,用以啟發(fā)用戶的需求,在國內(nèi)外銀行項目需求分析過程中,經(jīng)常會提供給用戶一個通用的基礎功能描述,基礎功能包含了銀行