1 軟件需求獲取的任務
軟件需求:是為了解決用戶的問題和實現(xiàn)用戶的目標,用戶所需的軟件必須滿足的能力和條件。
每種人員對需求的描敘是不同的。
不同的抽象層次或角度列舉的需求:
業(yè)務需求:描敘使用軟件系統(tǒng)要達到什么目標。例如,使用軟件系統(tǒng)要提高工作效率多少倍,節(jié)省多少費用等。
用戶需求:描述用戶要求系統(tǒng)必須能完成的任務,或者說描述能用系統(tǒng)做什么。
系統(tǒng)需求:為了滿足需求,系統(tǒng)或系統(tǒng)成分必須滿足或具有的條件或能力。該項需求中通常包括軟件和硬件需求,且對需求的描述層次是頂級的。
功能需求:規(guī)定軟件必須實現(xiàn)的功能性需求。該項需求規(guī)定開發(fā)人員必須要實現(xiàn)的軟件功能,供用戶使用。該項需求基于系統(tǒng)需求得到。
非功能需求
2 軟件需求的獲取與確認過程
獲?。?/P>
協(xié)商:
說明與定義:
確認:需求間無沖突、內容一致。
3 快速原型化方法
先實現(xiàn)一部分軟件,展現(xiàn)需求提出方的要求,往往會減少軟件供需雙方對需求理解上的差異,而且會提高需求提出方交流需求的積極性。
演示原型
技術驗證原型:該原型在技術層上實現(xiàn)軟件的部分功能,以驗證技術上的可行性。在不能確定所要實現(xiàn)的需求項是否可行時,或者要優(yōu)化算法、評估所要采用的技術時,就可以開發(fā)技術驗證原型,以減少開發(fā)風險
4 基于用況的方法
在建立用況模型時,要確定系統(tǒng)邊界,找出在系統(tǒng)邊界以外與系統(tǒng)交互的事物,然后從這些事物與系統(tǒng)交互的角度,通過用況來描述這些事物怎樣使用系統(tǒng),以及系統(tǒng)向它們提供什么功能。
系統(tǒng)邊界
系統(tǒng)的所有內部成分與系統(tǒng)以外各種事物的分界線。
參與者
一組在功能上密切相關的角色,當一個事物與系統(tǒng)交互時,該事務可以扮演這樣的角色。————>人員、外部系統(tǒng)、設備。(啟動系統(tǒng)的參與者。)
用況:是描述系統(tǒng)的一項功能的一組動作系列,這樣的動作序列表示參與者與系統(tǒng)間的交互
包含 基用況在它內部說明的某一(些)位置上顯式的使用供應者用況的行為的結果。
擴展
<執(zhí)行完擴展用況后,其用況繼續(xù)執(zhí)行擴展點下面的行為。>
<可選的交互行為、例外處理建模>
繼承
5 需求管理
需求標識和分類
變更管理
需求基線是經過正式評審與同意、用作下一步開發(fā)的基礎的軟件需求。后續(xù)的需求變更必須遵循正式的變更控制過程。
需求跟蹤:建立需求跟蹤矩陣