例如國際化需求或法律上的需求。你還可以增加有關(guān)操作、管理和維護(hù)部分來完善產(chǎn)品安裝、配置、啟動(dòng)和關(guān)閉、修復(fù)和容錯(cuò),以及登錄和監(jiān)控操作等方面的需求。
附錄A :詞匯表
定義所有必要的術(shù)語,以便讀者可以正確地解釋軟件需求規(guī)格說明,包括詞頭和縮寫。你可能希望為整個(gè)公司創(chuàng)建一張跨越多項(xiàng)項(xiàng)目的詞匯表,并且只包括特定于單一項(xiàng)目的軟件需求規(guī)格說明中的術(shù)語。
附錄B :分析模型
這個(gè)可選部分包括或涉及到相關(guān)的分析模型的位置,例如數(shù)據(jù)流程圖、類圖、狀態(tài)轉(zhuǎn)換圖或?qū)嶓w-關(guān)系圖。
附錄C :待確定問題的列表
編輯一張?jiān)谲浖枨笠?guī)格說明中待確定問題的列表,其中每一表項(xiàng)都是編上號(hào)的,以便于跟蹤調(diào)查。
2)指明需求來源:指明需求的來源為了讓所有項(xiàng)目風(fēng)險(xiǎn)承擔(dān)者明白需求規(guī)格說明書中為何提供這些功能需求,要都能追溯每項(xiàng)需求的來源,這可能是一種使用實(shí)例或其它客戶要求,也可能是某項(xiàng)更高層系統(tǒng)需求、業(yè)務(wù)規(guī)范、政府法規(guī)、標(biāo)準(zhǔn)或別的外部來源。
3)為每項(xiàng)需求注上標(biāo)號(hào):為了滿足軟件需求規(guī)格說明的可跟蹤性和可修改性的質(zhì)量標(biāo)準(zhǔn),必須唯一確定每個(gè)軟件需求。為每項(xiàng)需求注上標(biāo)號(hào)制定一種慣例來為需求規(guī)格說明書中的每項(xiàng)需求提供一個(gè)獨(dú)立的可識(shí)別的標(biāo)號(hào)或記號(hào)。這種慣例應(yīng)當(dāng)很健全,允許增加、刪除和修改。作了標(biāo)號(hào)的需求使得需求能被跟蹤,記錄需求變更并為需求狀態(tài)和變更活動(dòng)建立度量。需求標(biāo)識(shí)方法有序列號(hào);層次化編碼;使用"待確定"(to be determined, TBD )符號(hào)等。
4)記錄業(yè)務(wù)規(guī)范:是指關(guān)于產(chǎn)品的操作原則,比如誰能在什么情況下采取什么動(dòng)作。將這些編寫成需求規(guī)格說明書中的一個(gè)獨(dú)立部分,或一獨(dú)立的業(yè)務(wù)規(guī)范文檔。某些業(yè)務(wù)規(guī)范將引出相應(yīng)的功能需求;當(dāng)然這些需求也應(yīng)能追溯相應(yīng)業(yè)務(wù)規(guī)范。
5)創(chuàng)建需求跟蹤能力矩陣:建立一個(gè)矩陣把每項(xiàng)需求與實(shí)現(xiàn)、測試它的設(shè)計(jì)和代碼部分聯(lián)系起來。這樣的需求跟蹤能力矩陣同時(shí)也把功能需求和高層的需求及其它相關(guān)需求聯(lián)系起來了。在開發(fā)過程中建立這個(gè)矩陣,而不要等到最后才去補(bǔ)建。
這里我們還要介紹需求規(guī)格說明書中設(shè)計(jì)階段,用到的圖形模型--數(shù)據(jù)字典、數(shù)據(jù)流圖、數(shù)據(jù)流圖、狀態(tài)轉(zhuǎn)換圖、對(duì)話圖和類圖。
數(shù)據(jù)字典:一個(gè)定義應(yīng)用程序中使用的所有數(shù)據(jù)元素和結(jié)構(gòu)的含義、類型、數(shù)據(jù)大小、格式、度量單位、精度以及允許取值范圍的共享倉庫。數(shù)據(jù)字典的維護(hù)獨(dú)立于軟件需求規(guī)格說明,并且在產(chǎn)品的開發(fā)和維護(hù)的任何階段,各個(gè)風(fēng)險(xiǎn)承擔(dān)者都可以訪問數(shù)據(jù)字典。它定義了原數(shù)據(jù)元素、組成結(jié)構(gòu)體的復(fù)雜數(shù)據(jù)元素、重復(fù)的數(shù)據(jù)項(xiàng)、一個(gè)數(shù)據(jù)項(xiàng)的枚舉值以及可選的數(shù)據(jù)項(xiàng)。
數(shù)據(jù)流圖:是結(jié)構(gòu)化系統(tǒng)分析的基本工具。一個(gè)數(shù)據(jù)流圖確定了系統(tǒng)的轉(zhuǎn)化過程、系統(tǒng)所操縱的數(shù)據(jù)或物質(zhì)的收集(存儲(chǔ)),還有過程、存儲(chǔ)、外部世界之間的數(shù)據(jù)流或物質(zhì)流。數(shù)據(jù)流模型把層次分解方法運(yùn)用到系統(tǒng)分析上,這種方法很適用于事務(wù)處理系統(tǒng)和其它功能密集型應(yīng)用程序。
數(shù)據(jù)流圖:描繪了系統(tǒng)的數(shù)據(jù)關(guān)系。分析實(shí)體聯(lián)系圖有助于對(duì)業(yè)務(wù)或系統(tǒng)數(shù)據(jù)組成的理解和交互,并暗示產(chǎn)品將有必要包含一個(gè)數(shù)據(jù)庫。相反,當(dāng)你在系統(tǒng)設(shè)計(jì)階段建立實(shí)體聯(lián)系圖時(shí),通常要定義系統(tǒng)數(shù)據(jù)庫的物理結(jié)構(gòu)。
狀態(tài)轉(zhuǎn)換圖:實(shí)時(shí)系統(tǒng)和過程控制應(yīng)用程序可以在任何給定的時(shí)間內(nèi)以有限的狀態(tài)存在。當(dāng)滿足所定義的標(biāo)準(zhǔn)時(shí),狀態(tài)就會(huì)發(fā)生改變,例如在特定條件下,接收到一個(gè)特定的輸入激勵(lì)。這樣的系統(tǒng)是有限狀態(tài)機(jī)的例子。大多數(shù)軟件系統(tǒng)需要一些狀態(tài)建?;蚍治?,就像大多數(shù)系統(tǒng)涉及到轉(zhuǎn)換過程、數(shù)據(jù)實(shí)體和業(yè)務(wù)對(duì)象。
對(duì)話圖:在許多應(yīng)用程序中,用戶界面可以看作是一個(gè)有限狀態(tài)機(jī)。在任何情況下僅有一個(gè)對(duì)話元素(例如一個(gè)菜單,工作區(qū),行提示符或?qū)υ捒颍?duì)用戶輸