[需求是軟件的核心部分,就像發動機沒有汽油不能運行一樣。軟件沒有需求就沒有存在的價值,需求就是軟件的土壤或基石,一樣的需求或許因為不同額理解和解釋會開發出個性迥異的軟件,這就像是相同的種子在不同其中的種植下,長出不同差異的果實一樣。]
安菲科技根據多年服務企業軟件開發的項目經驗,總結出做好需求工作需要做好以下幾點:
一、分析軟件開發的需求特點
1、目的性:希望得到什么,有明確的的要求,
2、描述性:可描述的需求內容,可以詳細解釋的
3、操作性:有步驟、可進行操作,哪怕只有一個步驟,
4、條件性:在一定條件下可實現的需求,
5、計算性:需要有固定算法,不然無法實現,即使人工智能、人工模擬也是通過最基本的算法而成的;
6、驗證性:需求最終實現后怎樣判斷結果是否正確?需求是否可被驗證,
二、在實踐過程中,用戶一開始提出的需求,往往是模糊的,不明確的,畢竟大部分的用戶都不是信息系統的專業人士。開發設計人員需要分化分解才能夠理解需求的內在本質。需要從以下幾方面考慮問題:
1、客戶的現狀是什么:用戶目前的現狀、用的什么系統,市場情況、使用材料、設備、方法、人員、技術和流程,和有什么缺陷、錯誤、抱怨或損失,數據量、使用頻率、用戶量、使用范圍、業務相關性和重要如何;
2、客戶的期望是什么:什么樣的問題最需要迫切解決,用戶系統提升到什么程度,需求的便利性和拓展性怎樣?
3、客戶有沒有替代方案:如沒有解決方案,可以代替的方案有幾種,方案之間的優缺點是什么?
4、客戶的預算范圍:開發預算決定開發量和使用技術的成本。
5、需求的范圍:公開、內部、多廠區、多語言使用還是分階段使用?使用的用戶量是多少、是否需要控制權限;
6、需求的內容是什么:結構圖、流程圖、操作說明、數據報表等具體內容;
7、需求的樣本:如用戶、材料清單、服務器配置、數據接口參數、數據格式和報告說明等需求的實例文件。
綜上:需求清楚是軟件設計與軟件開發的工作依據,是決定軟件成果能否落地的關鍵。所以選擇軟件開發公司時,對軟件開發公司安排的梳理需求的人員的專業和經驗需要重點評估。