邵靜
【摘 要】隨著信息技術的快速發(fā)展,各行業(yè)利用信息化手段提升各自的核心競爭力成為趨勢。信息系統(tǒng)建設過程中,需求是所有活動的基礎,起著極其關鍵的作用。但是在日常的項目實施推進中,往往因忽略該重要環(huán)節(jié)而給信息系統(tǒng)建設的帶來諸多問題,本文主要討論了需求工程中遇到的常見問題和預防措施。
【關鍵詞】需求工程 信息系統(tǒng)建設 需求變更
近年來,各類滿足不同領域業(yè)務發(fā)展需要的信息系統(tǒng)層出不窮,信息系統(tǒng)建設成為滿足業(yè)務需求的重要措施。信息系統(tǒng)建設由需求工程、系統(tǒng)設計、開發(fā)、測試、運護組成。系統(tǒng)建設的首要任務是明確建設的目的,因此需求工程在系統(tǒng)建設過程中具有方向性和決策性的作用。根據(jù)Standish Group的統(tǒng)計分析,信息系統(tǒng)建設未按期完成的比例占84%,超預算的比例為189%,項目的成功率僅為34%。對項目失敗的因素進行詳細分析,導致項目失敗的最重要的原因與需求有關,需求工程占了45%的失敗因素,即需求工程出現(xiàn)問題是導致系統(tǒng)建設失敗的重要原因。
1 基本概念
需求工程是指采用有效的技術、方法和工具從客戶處獲取需求,并對需求開展一系列不斷反復的分析、表示和驗證,定義目標系統(tǒng)的特征和相關的約束,了解客戶的需求和業(yè)務,使得客戶、用戶和開發(fā)者之間達成共同的理解的活動。開展需求工程的目的是準確說明系統(tǒng)建設的目標,描述客戶需要開發(fā)者“做什么(WHAT)”,確定要計算機“做什么”,要達到什么樣的效果?它是一個概念性的工作,直接影響整個項目建設周期。
2 常見問題現(xiàn)象
2.1 需求不完整、不準確
用戶在需求描述時,不能準確、完整地說出個中緣由,只提大概。大多數(shù)用戶在調研過程中只提系統(tǒng)在正常情況下出現(xiàn)的結果,但未考慮異常情況,對一些常識性的業(yè)務忽略不提;用語不準確,可能內心清楚,但缺乏表達能力;把解決方案誤認為是需求,基于個人在認識的不足所提出的解決方案往往不完善,但又被當作需求混淆在一起;功能性和非功能性需求上存在復雜的聯(lián)系。
2.2 用戶參與度不夠
用戶在整個需求開發(fā)過程中只充當旁觀者,不愿參與到需求開發(fā)活動中,認為這是項目建設方的義務和責任,這些活動都是系統(tǒng)建設方面的內容,與本人的工作無關,參與與否對整個項目沒有影響。部分建設方認為用戶參與到需求開發(fā)活動會帶來頻繁更改的問題,根據(jù)經(jīng)驗,自己可以做出讓客戶滿意的需求規(guī)格說明。
2.3 需求動態(tài)變更
對業(yè)務的熟悉程度不夠、建設者和用戶不能密切合作、需求工作不細致、接受不合理建議等都會造成需求不斷更改。用戶不能一次性全面地提出具體的需求,導致反復的訪談,在溝通過程中,用戶可能會產(chǎn)生許多新想法和新需求,為了滿足客戶的新需要,多次修改需求方案,導致背離最初的目標值。
2.4 資源不足
因項目成本不足或項目周期短的制約,建設方對需求工程階段的投入不夠,將用戶提出的需求弱化,裁剪部分功能模塊,降低產(chǎn)品的質量。導致進入到系統(tǒng)設計、程序開發(fā)階段發(fā)現(xiàn)許多工作無法開展,甚至推翻原有的需求規(guī)格。
3 解決措施
因需求工程中出現(xiàn)問題帶來了項目進度拖延、項目成本增加、項目質量失控和系統(tǒng)生命期縮短等后果,對信息系統(tǒng)建設方和客戶都會帶來巨大的損失。為預防這些問題的發(fā)生,我們應該從以下幾方面著手:
3.1 利用需求管理技術
借助先進的需求開發(fā)工具,建立需求分析模型,幫助需求分析人員對用戶的需求進行提取、整理、分析并得到完整、正確的軟件需求分析式樣,以達到滿足用戶對系統(tǒng)功能、性能方面直觀展示要求。例如:使用數(shù)據(jù)流圖(DFD)建立需求分析模型,可以將數(shù)據(jù)傳遞和加工的流向以圖形符號的方式逐層細分,可具體地描述系統(tǒng)內各個部件的功能和數(shù)據(jù)在各功能點間的傳遞情況。
3.2 加強溝通,達成共識
組建項目團隊,需建設方和用戶共同組成,制定相應的需求工程流程規(guī)范,確立用戶和建設者雙方的角色和職責,以便雙方及時溝通。由于需求獲取的范圍廣、類型多,需求收集后,需認真梳理和分析需求中是否存在沖突,是否存在定義錯誤或描述不嚴謹。只有用戶親身參與到需求開發(fā)和管理中,才能保證雙方在需求的認識上達成一致,減少需求變更的發(fā)生。
3.3 開發(fā)與管理反復迭代
編寫詳細而具體的說明材料,做到事后有據(jù)可查。在需求調查過程中的得到的需求往往是雜亂無章的,可能在需求中存在沖突,需及時把這些需求材料整理轉換為有效的用戶需求,從中提煉、分析得出相應的記錄和報告。
需求工程階段涉及的文件資料有:需求規(guī)格說明書、項目視圖與范圍文檔、需求分析說明書、調研記錄、需求討論記錄等。其中,需求規(guī)格說明書作為需求工程階段的重要輸出,系統(tǒng)設計的輸入,是項目開發(fā)的基礎,指導整個項目建設的全過程,其內容包含的需求具有最高優(yōu)先級,應保證內容的準確性、完整性和易理解性。需求評審是需求控制的關鍵環(huán)節(jié),主要檢查系統(tǒng)需求分析人員和用戶之間的溝通是否一致,雙方是否均理解和認可需求內容,用戶可在評審中提出個人建議,幫助糾正錯誤,及時進行需求變更修正,避免事倍功半的現(xiàn)象發(fā)生。通過需求開發(fā)和管理的反復迭代,為用戶找到最佳的需求解決方案,同時為系統(tǒng)實施過程中的質量提供了保障。
4 結語
需求工程是決定信息系統(tǒng)建設成敗的關鍵因素,如果我們要較好地管控信息系統(tǒng)建設的周期、成本和質量,那么就需要加大在需求開發(fā)和管理上的投入,有效地界定項目的需求范圍,分析變更的合理性和必要性,制定出合理有效的的需求工程交付物等,為整個項目順利開展奠定基礎,驅動信息系統(tǒng)的快速建成。
參考文獻:
[1]劉華航,金英,馬騰飛.一種需求變更影響分析方法計算機研究與發(fā)展[J].計算機研究與發(fā)展,2013(8):1769-1777.
[2]劉小波,郭荷清.軟件系統(tǒng)需求變更影響分析及解決方案[J].華南理工大學學報(自然科學版)2002(4):56-59.
[3]曹溫,溫麗.信息系統(tǒng)項目管理師考試輔導[D].清華大學出版社,2011.