一、業務需求算法
(1) 時間需求:輸入、輸出頻率,輸入、輸出響應時間,各類功能恢復時間等;數據庫
(2) 處理容限、精度、採樣參數的分辨率,偏差處理等;安全
(3) 可靠性的MTBF要求,可維護性、安全性要求等。(對可能的不正常的輸入給以正常響應是可靠性的重要內容,這屬於功能性需求。)數據結構
二、用戶需求併發
1)誘導客戶需求函數
2)確認客戶需求工具
三、功能需求spa
1)功能需求的完整性和一致性設計
對功能的描述應包含與功能相關的信息,並應具備內在的一致性(即各類描述之間不矛盾、不衝突)。應注意如下幾點:接口
(1) 給出觸發功能的各類條件(如:控制流、運行狀態、運行模式等);
(2) 定義各類可能性條件下的全部可能的輸入(包括合法的輸入空間和非法的輸入空間);
(3) 給出各類功能間可能的相互關係(如各個功能間的控制流、數據流、信息流,功能運行關係:順序、重複、選擇、併發、同步);
(4) 給出功能性的主要級別(如:基本功能、可由設計者選擇逐步實現的功能、可由設計者改變實現的功能等);
(5) 儘量不使用「待定」這樣的詞。全部含有待定內容的需求都不是完整的文件,若是出現待定的部分,必須進行待定部份內容說明,落實負責人員、落實實施日期。
2)功能描述的無岔意性和可追蹤性
需求功能描述的無岔意性、可追蹤性和規範化:
(1) 功能描述必須清晰地描述出怎樣輸入到怎樣輸出,而且輸入、輸出描述應對應有數據流描述、控制流描述圖,這些描述必須與其它地方描述一致;
(2) 能夠用語言、方程式、決策表、矩陣或圖等對功能的描述。若是選用語言描述必須使用結構化的語言,描述前必須說明該步驟(或子功能)的執行是順序,選擇,重複,仍是併發,而後說明步驟邏輯。整個描述必須單入單出。
(3) 描述時,每個功能名稱和參照編號必須惟一,且不要將多個功能混在一塊兒進行描述,這樣便於功能的追蹤和修改。
(4) 功能描述應注意需求說明和程序設計的區別。需求設計僅僅是軟件的功能設計,它給出軟件運行的的外部功能描述,以及爲了實現這一外部功能必須作哪些事情(採用和種數據結構,定義多個模塊,接口間的接口等)是設計階段的事情,功能描述不該涉及到那些細節問題,以免給軟件設計帶來沒必要要的約束。
四、需求分析相關工具
l 效果圖描述。主要是用戶UI界面的描述反映用戶需求功能;
l 邏輯圖描述。根據用戶需求功能,使用抽象化理論,以及需求分析理論,對用戶需求功能進行全面的分析,創建功能性邏輯關係圖,流程邏輯關係圖等;
l 關係圖表描述。主要是對信息關係、數據庫表格、接口函數等描述;
l 工程數學描述。分析用戶需求,分析用戶需求信息,運用工程數學進行算法推導,進行合理化需求分析推導;
l 甘地圖描述。主要是軟件項目工做安排,開發週期預估;
l 其它方法描述。保證完整性合理性的有效描述
五、需求評估
1)知足客戶需求
2)保證可實施
3)工做週期
4)需求不可更改性