編寫規(guī)格說明書.doc_第1頁
編寫規(guī)格說明書.doc_第2頁
編寫規(guī)格說明書.doc_第3頁
編寫規(guī)格說明書.doc_第4頁
編寫規(guī)格說明書.doc_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

編寫規(guī)格說明書項目視圖和范圍文檔包含了業(yè)務(wù)需求,而使用實例文檔則包含了用戶需求。你必須編寫從使用實例派生出的功能需求文檔,還要編寫產(chǎn)品的非功能需求文檔,包括質(zhì)量屬性和外部接口需求。軟件需求規(guī)格說明闡述一個軟件系統(tǒng)必須提供的功能和性能以及它所要考慮的限制條件,它不僅是系統(tǒng)測試和用戶文檔的基礎(chǔ),也是所有子系列項目規(guī)劃、設(shè)計和編碼的基礎(chǔ)。它應(yīng)該盡可能完整地描述系統(tǒng)預(yù)期的外部行為和用戶可視化行為。除了設(shè)計和實現(xiàn)上的限制,軟件需求規(guī)格說明不應(yīng)該包括設(shè)計、構(gòu)造、測試或工程管理的細節(jié)。1)采用軟件需求規(guī)格說明模版: 采用需求規(guī)格說明書模板在你的組織中要為編寫軟件需求文檔定義一種標準模板。該模板為記錄功能需求和各種其它與需求相關(guān)的重要信息提供了統(tǒng)一的結(jié)構(gòu)。注意,其目的并非是創(chuàng)建一種全新的模板,而是采用一種已有的且可滿足項目需要并適合項目特點的模板。許多組織一開始都采用IEEE標準830-1998(IEEE 1998)描述的需求規(guī)格說明書模板。要相信模板是很有用的,但有時要根據(jù)項目特點進行適當?shù)母膭印?23456A引言目的 文檔約定 預(yù)期的讀者和閱讀建議 產(chǎn)品的范圍 參考文獻B綜合描述產(chǎn)品的前景產(chǎn)品的功能用戶類和特征 運行環(huán)境設(shè)計和實現(xiàn)上的限制假設(shè)和依賴附錄C外部接口需求附錄用戶界面附錄硬件接口軟件接口 通信接口D系統(tǒng)特性說明和優(yōu)先級激勵/響應(yīng)序列 功能需求 E 其它非功能需求 性能需求安全設(shè)施需求 安全性需求軟件質(zhì)量屬性 業(yè)務(wù)規(guī)則 用戶文檔F其它需求G附件詞匯表分析模型 待確定問題的列表 a. 引言引言提出了對軟件需求規(guī)格說明的縱覽,這有助于讀者理解文檔如何編寫并且如何閱讀和解釋。a . 1 目的對產(chǎn)品進行定義,在該文檔中詳盡說明了這個產(chǎn)品的軟件需求,包括修正或發(fā)行版本號。如果這個軟件需求規(guī)格說明只與整個系統(tǒng)的一部分有關(guān)系,那么就只定義文檔中說明的部分或子系統(tǒng)。a.2 文檔約定描述編寫文檔時所采用的標準或排版約定,包括正文風格、提示區(qū)或重要符號。a.3 預(yù)期的讀者和閱讀建議列舉了軟件需求規(guī)格說明所針對的不同讀者,例如開發(fā)人員、項目經(jīng)理、營銷人員、用戶、測試人員或文檔的編寫人員。描述了文檔中剩余部分的內(nèi)容及其組織結(jié)構(gòu)。提出了最適合于每一類型讀者閱讀文檔的建議。a.4 產(chǎn)品的范圍提供了對指定的軟件及其目的的簡短描述,包括利益和目標。把軟件與企業(yè)目標或業(yè)務(wù)策略相聯(lián)系??梢詤⒖柬椖恳晥D和范圍文檔而不是將其內(nèi)容復(fù)制到這里。a.5 參考文獻列舉了編寫軟件需求規(guī)格說明時所參考的資料或其它資源。這可能包括用戶界面風格指導、合同、標準、系統(tǒng)需求規(guī)格說明、使用實例文檔,或相關(guān)產(chǎn)品的軟件需求規(guī)格說明。b. 綜合描述這一部分概述了正在定義的產(chǎn)品以及它所運行的環(huán)境、使用產(chǎn)品的用戶和已知的限制、假設(shè)和依賴。b.1 產(chǎn)品的前景描述了軟件需求規(guī)格說明中所定義的產(chǎn)品的背景和起源。說明了該產(chǎn)品是否是產(chǎn)品系列中的下一成員,是否是成熟產(chǎn)品所改進的下一代產(chǎn)品、是否是現(xiàn)有應(yīng)用程序的替代品,或者是否是一個新型的、自含型產(chǎn)品。b.2 產(chǎn)品的功能概述了產(chǎn)品所具有的主要功能。其詳細內(nèi)容將在d 中描述,所以在此只需要概略地總結(jié)。很好地組織產(chǎn)品的功能,使每個讀者都易于理解。b.3 用戶類和特征確定你覺得可能使用該產(chǎn)品的不同用戶類并描述它們相關(guān)的特征。有一些需求可能只與特定的用戶類相關(guān)。b.4 運行環(huán)境描述了軟件的運行環(huán)境,包括硬件平臺、操作系統(tǒng)和版本,還有其它的軟件組件或與其共存的應(yīng)用程序。b.5 設(shè)計和實現(xiàn)上的限制確定影響開發(fā)人員自由選擇的問題,并說明這些問題為什么成為一種限制。b.6 假設(shè)和依賴列舉出在對軟件需求規(guī)格說明中影響需求陳述的假設(shè)因素(與已知因素相對立)。這可能包括你打算要用的商業(yè)組件或有關(guān)開發(fā)或運行環(huán)境的問題。你可能認為產(chǎn)品將符合一個特殊的用戶界面設(shè)計約定,但是另一個S R S 讀者卻可能不這樣認為。如果這些假設(shè)不正確、不一致或被更改,就會使項目受到影響。此外,確定項目對外部因素存在的依賴。例如,如果你打算把其它項目開發(fā)的組件集成到系統(tǒng)中,那么你就要依賴那個項目按時提供正確的操作組件。如果這些依賴已經(jīng)記錄到其它文檔(例如項目計劃)中了,那么在此就可以參考其它文檔。c. 外部接口需求利用本節(jié)來確定可以保證新產(chǎn)品與外部組件正確連接的需求。關(guān)聯(lián)圖表示了高層抽象的外部接。需要把對接口數(shù)據(jù)和控制組件的詳細描述寫入數(shù)據(jù)字典中。如果產(chǎn)品的不同部分有不同的外部接口,那么應(yīng)把這些外部接口的詳細需求并入到這一部分的實例中。c.1 用戶界面陳述所需要的用戶界面的軟件組件。描述每個用戶界面的邏輯特征。而對于用戶界面的細節(jié),例如特定對話框的布局,應(yīng)該寫入一個獨立的用戶界面規(guī)格說明中,而不能寫入軟件需求規(guī)格說明中。c.2 硬件接口描述系統(tǒng)中軟件和硬件每一接口的特征。這種描述可能包括支持的硬件類型、軟硬件之間交流的數(shù)據(jù)和控制信息的性質(zhì)以及所使用的通信協(xié)議。c.3 軟件接口描述該產(chǎn)品與其它外部組件(由名字和版本識別)的連接,包括數(shù)據(jù)庫、操作系統(tǒng)、工具、庫和集成的商業(yè)組件。明確并描述在軟件組件之間交換數(shù)據(jù)或消息的目的。描述所需要的服務(wù)以及內(nèi)部組件通信的性質(zhì)。確定將在組件之間共享的數(shù)據(jù)。c.4 通信接口描述與產(chǎn)品所使用的通信功能相關(guān)的需求,包括電子郵件、We b 瀏覽器、網(wǎng)絡(luò)通信標準或協(xié)議及電子表格等等。定義了相關(guān)的消息格式。規(guī)定通信安全或加密問題、數(shù)據(jù)傳輸速率和同步通信機制。d. 系統(tǒng)特性d.1 說明和優(yōu)先級提出了對該系統(tǒng)特性的簡短說明并指出該特性的優(yōu)先級是高、中,還是低?;蛘吣氵€可以包括對特定優(yōu)先級部分的評價,例如利益、損失、費用和風險,其相對優(yōu)先等級可以從1(低)到9 (高)。d.2 激勵/響應(yīng)序列列出輸入激勵(用戶動作、來自外部設(shè)備的信號或其它觸發(fā)器)和定義這一特性行為的系統(tǒng)響應(yīng)序列。這些序列將與使用實例相關(guān)的對話元素相對應(yīng)。d.3 功能需求詳列出與該特性相關(guān)的詳細功能需求。這些是必須提交給用戶的軟件功能,使用戶可以使用所提供的特性執(zhí)行服務(wù)或者使用所指定的使用實例執(zhí)行任務(wù)。描述產(chǎn)品如何響應(yīng)可預(yù)知的出錯條件或者非法輸入或動作。就像本章開頭所描述的那樣,你必須唯一地標識每個需求。e. 其它非功能需求這部分列舉出了所有非功能需求,如產(chǎn)品的易用程度如何,執(zhí)行速度如何,可靠性如何,當發(fā)生異常情況時,系統(tǒng)如何處理,而不是外部接口需求和限制。e.1 性能需求闡述了不同的應(yīng)用領(lǐng)域?qū)Ξa(chǎn)品性能的需求,并解釋它們的原理以幫助開發(fā)人員作出合理的設(shè)計選擇。確定相互合作的用戶數(shù)或者所支持的操作、響應(yīng)時間以及與實時系統(tǒng)的時間關(guān)系。你還可以在這里定義容量需求,例如存儲器和磁盤空間的需求或者存儲在數(shù)據(jù)庫中表的最大行數(shù)。盡可能詳細地確定性能需求??赡苄枰槍γ總€功能需求或特性分別陳述其性能需求,而不是把它們都集中在一起陳述。e.2 安全設(shè)施需求詳盡陳述與產(chǎn)品使用過程中可能發(fā)生的損失、破壞或危害相關(guān)的需求。定義必須采取的安全保護或動作,還有那些預(yù)防的潛在的危險動作。明確產(chǎn)品必須遵從的安全標準、策略或規(guī)則。e.3 安全性需求詳盡陳述與系統(tǒng)安全性、完整性或與私人問題相關(guān)的需求,這些問題將會影響到產(chǎn)品的使用和產(chǎn)品所創(chuàng)建或使用的數(shù)據(jù)的保護。定義用戶身份確認或授權(quán)需求。明確產(chǎn)品必須滿足的安全性或保密性策略。e.4 軟件質(zhì)量屬性詳盡陳述與客戶或開發(fā)人員至關(guān)重要的其它產(chǎn)品質(zhì)量特性。這些特性必須是確定、定量的并在可能時是可驗證的。至少應(yīng)指明不同屬性的相對側(cè)重點,例如易用程度優(yōu)于易學程度,或者可移植性優(yōu)于有效性。e.5 業(yè)務(wù)規(guī)則列舉出有關(guān)產(chǎn)品的所有操作規(guī)則,例如什么人在特定環(huán)境下可以進行何種操作。這些本身不是功能需求,但它們可以暗示某些功能需求執(zhí)行這些規(guī)則。e.6 用戶文檔列舉出將與軟件一同發(fā)行的用戶文檔部分,例如,用戶手冊、在線幫助和教程。明確所有已知的用戶文檔的交付格式或標準。f. 其它需求定義在軟件需求規(guī)格說明的其它部分未出現(xiàn)的需求,例如國際化需求或法律上的需求。你還可以增加有關(guān)操作、管理和維護部分來完善產(chǎn)品安裝、配置、啟動和關(guān)閉、修復(fù)和容錯,以及登錄和監(jiān)控操作等方面的需求。附錄A :詞匯表定義所有必要的術(shù)語,以便讀者可以正確地解釋軟件需求規(guī)格說明,包括詞頭和縮寫。你可能希望為整個公司創(chuàng)建一張跨越多項項目的詞匯表,并且只包括特定于單一項目的軟件需求規(guī)格說明中的術(shù)語。附錄B :分析模型這個可選部分包括或涉及到相關(guān)的分析模型的位置,例如數(shù)據(jù)流程圖、類圖、狀態(tài)轉(zhuǎn)換圖或?qū)嶓w-關(guān)系圖。附錄C :待確定問題的列表編輯一張在軟件需求規(guī)格說明中待確定問題的列表,其中每一表項都是編上號的,以便于跟蹤調(diào)查。2)指明需求來源:指明需求的來源為了讓所有項目風險承擔者明白需求規(guī)格說明書中為何提供這些功能需求,要都能追溯每項需求的來源,這可能是一種使用實例或其它客戶要求,也可能是某項更高層系統(tǒng)需求、業(yè)務(wù)規(guī)范、政府法規(guī)、標準或別的外部來源。3)為每項需求注上標號:為了滿足軟件需求規(guī)格說明的可跟蹤性和可修改性的質(zhì)量標準,必須唯一確定每個軟件需求。為每項需求注上標號制定一種慣例來為需求規(guī)格說明書中的每項需求提供一個獨立的可識別的標號或記號。這種慣例應(yīng)當很健全,允許增加、刪除和修改。作了標號的需求使得需求能被跟蹤,記錄需求變更并為需求狀態(tài)和變更活動建立度量。需求標識方法有序列號;層次化編碼;使用待確定(to be determined, TBD )符號等。4)記錄業(yè)務(wù)規(guī)范:是指關(guān)于產(chǎn)品的操作原則,比如誰能在什么情況下采取什么動作。將這些編寫成需求規(guī)格說明書中的一個獨立部分,或一獨立的業(yè)務(wù)規(guī)范文檔。某些業(yè)務(wù)規(guī)范將引出相應(yīng)的功能需求;當然這些需求也應(yīng)能追溯相應(yīng)業(yè)務(wù)規(guī)范。5)創(chuàng)建需求跟蹤能力矩陣:建立一個矩陣把每項需求與實現(xiàn)、測試它的設(shè)計和代碼部分聯(lián)系起來。這樣的需求跟蹤能力矩陣同時也把功能需求和高層的需求及其它相關(guān)需求聯(lián)系起來了。在開發(fā)過程中建立這個矩陣,而不要等到最后才去補建。這里還要介紹需求規(guī)格說明書中設(shè)計階段,用到的圖形模型-數(shù)據(jù)字典、數(shù)據(jù)流圖、實體聯(lián)系圖、狀態(tài)轉(zhuǎn)換圖、對話圖和類圖。數(shù)據(jù)字典:一個定義應(yīng)用程序中使用的所有數(shù)據(jù)元素和結(jié)構(gòu)的含義、類型、數(shù)據(jù)大小、格式、度量單位、精度以及允許取值范圍的共享倉庫。數(shù)據(jù)字典的維護獨立于軟件需求規(guī)格說明,并且在產(chǎn)品的開發(fā)和維護的任何階段,各個風險承擔者都可以訪問數(shù)據(jù)字典。它定義了原數(shù)據(jù)元素、組成結(jié)構(gòu)體的復(fù)雜數(shù)據(jù)元素、重復(fù)的數(shù)據(jù)項、一個數(shù)據(jù)項的枚舉值以及可選的數(shù)據(jù)項。數(shù)據(jù)流圖:是結(jié)構(gòu)化系統(tǒng)分析的基本工具。一個數(shù)據(jù)流圖確定了系統(tǒng)的轉(zhuǎn)化過程、系統(tǒng)所操縱的數(shù)據(jù)或物質(zhì)的收集(存儲),還有過程、存儲、外部世界之間的數(shù)據(jù)流或物質(zhì)流。數(shù)據(jù)流模型把層次分解方法運用到系統(tǒng)分析上,這種方法很適用于事務(wù)處理系統(tǒng)和其它功能密集型應(yīng)用程序。實體聯(lián)系圖:描繪了系統(tǒng)的數(shù)據(jù)關(guān)系。分析實體聯(lián)系圖有助于對業(yè)務(wù)或系統(tǒng)數(shù)據(jù)組成的理解和交互,并暗示產(chǎn)品將有必要包含一個數(shù)據(jù)庫。相反,當你在系統(tǒng)設(shè)計階段建立實體聯(lián)系圖時,通常要定義系統(tǒng)數(shù)據(jù)庫的物理結(jié)構(gòu)。狀態(tài)轉(zhuǎn)換圖:實時系統(tǒng)和過程控制應(yīng)用程序可以在任何給定的時間內(nèi)以有限的狀態(tài)存在。當滿足所定義的標準時,狀態(tài)就會發(fā)生改變,例如在特定條件下,接收到一個特定的輸入激勵。這樣的系統(tǒng)是有限狀態(tài)機的例子。大多數(shù)軟件系統(tǒng)需要一些狀態(tài)建模或分析,就像大多數(shù)系統(tǒng)涉及到轉(zhuǎn)換過程、數(shù)據(jù)實體和業(yè)務(wù)對象。對話圖:在許多應(yīng)用程序中,用戶界面可以看作是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論