簡介
軟體需求說明書,又稱為軟體規格說明書,是分析員在需求分析階段需要完成的文檔,是軟體需求分析的最終結果。它的作用主要是:作為軟體人員與用戶之間事實上的技術契約說明;作為軟體人員下一步進行設計和編碼的基礎;作為測試和驗收的依據。SRS必須用統一格式的文檔進行描述,為了使需求分析描述具有統一的風格,可以採用已有的且能滿足項目需要的模板,也可以根據項目特點和軟體開發小組的特點對標準進行適當的改動,形成自己的模板。軟體需求說明主要包括引言、任務概述、需求規定、運行環境規定和附錄等內容。
軟體需求說明書應該完整、一致、精確、無二義性,同時又要簡明、易懂、易修改。由於軟體需求說明書最終要得到開發者和用戶雙方的認可,所以用戶要能看得懂,並且還能發現和指出其中的錯誤,這對於保證軟體系統的質量有很大的作用。這就要求需求說明書儘可能少用或不用計算機領域的概念和術語。
功能
需求說明書是由開發人員經需求分析後形成的軟體文檔,是對
需求分析工作的全面總結。其作用有以下幾點。
(1)便於用戶、分析人員和軟體設計人員進行理解和交流用戶通過需求規格說明書在分析階段即可初步判定目標
軟體能否滿足其原來的期望,設計人員則將需求規格說明書作為
軟體設計的基本出發點。
(2)支持目標軟體系統的確認
在軟體的測試階段,根據需求說明書中確定的可測試標準設計測試用例,確認軟體是否滿足需求說明書中規定的功能和性能等。
(3)控制系統進化過程
在需求分析完成之後,如果用戶追加需求,那么需求說明書將用於確定是否為新需求。
內容
軟體需求說明書的內容應包含如下幾部分內容:
1.概述
·說明開發軟體系統的目的、意義和背景
·說明用戶的特點、約束
2.需求說明
·功能說明,逐項列出各功能需求的序號、名稱和簡要說明
·性能說明,說明處理速度、回響時間、精度等
·輸入輸出要求·數據管理要求·故障處理要求
3.數據描述
·數據流圖·數據字典·接口說明
4.運行環境規定
·說明軟體運行所需的硬體設備
·說明軟體運行所需的系統軟體和軟體工具
5.限制
·說明軟體開發在成本、進度、設計和實現方面的限制。
衡量標準
(1)完整性
每一項需求都必須將所要實現的功能描述清楚,以使開發人員獲得設計和實現這些功能所需的所有必要信息。不遺漏任何必要的需求信息,即目標軟體的所有功能、性能、設計約束,以及所有的可能情況下的預期行為,均完整地體現在需求說明書中。
(2)正確性
每一項需求都必須準確地陳述其要開發的功能。需求說明書中的功能、性能等描述與用
戶對軟體的期望相一致。
(3)可行性
每一項需求都必須是在已知系統和環境的權能和限制範圍內可以實施的。
(4)無二義性
對所有需求說明的讀者都只能有一個明確統一的解釋,由於自然語言極易導致二義性,所以儘量把每項需求用簡潔明了的用戶性的語言表達出來。另外,需求說明書的各部分之間不能相互矛盾。
(5)可驗證性
需求說明書中的任意一項需求,都存在技術和經濟上可行的手段進行驗證和確認。
(6)可修改性
需求說明書的格式和組織方式應該保證能夠比較容易地增、刪和修改,並使修改後的需求說明書能夠軟較好地保持其他各項屬性。
(7)可跟蹤性
應能在每項軟體需求與它的根源和設計元素、原始碼、測試用例之間建立起連結鏈,使每項需求與用戶的原始需求連起來,並為後續開發和其他文檔引用這些需求項提供便利。這種可跟蹤性要求每項需求以一種結構化的,粒度好的方式編寫並單獨標明,而不是大段大段的敘述。