You are on page 1of 10

需求規格書撰寫指引

From Software Engineering Lab

Jump to: navigation, search


目錄
[隱藏]
 1 需求規格書基本概念
 2 需求規格書的內容
 3 IEEE 830 軟體需求規格書建議 (英文)
o 3.1 以使用者來區分
o 3.2 以操作模式來區分
 4 IEEE 830 軟體需求規格書建議 (中文)
 5 國科會自由軟體專案研究計劃需求規格報告樣版與範例

 6 逢甲大學歷年優秀作品

需求規格書基本概念
 軟體需求規格書: Software Requirement Specification; SRS
 使用者至上 -- 所有的系統功能都是因為要滿足使用者或是開發者的需求。
 使用者的需求 = 系統要提供的功能
 唯有清楚的描述需求,我們才有設計的依據。
 需求分為兩種,使用者需求與系統需求。
o 使用者需求 是由使用者提出來的,比較抽象;
o 系統需求 是與開發端討論過的,是完整的、經過可性評估的、可作為後續
設計的依據、使用者確認過的、加上系統觀點的。
 SRS (System Requirement Specification)的內容主要以系統需求為主。
 需求的描述多半用自然語言描述,但可以輔以模組語言,例如 UML 的 use
case modeling, class diagram 等。
 SRS 與 SDD 要分開,SRS 交代系統的 WHAT (系統提供什麼功能?),SDD
交代系統的 HOW (我們如何提供這些功能?)。

需求規格書的內容
需求規格書是定義你的系統有什麼功能,也包含你的系統分析

 系統是給誰用的,用的目的是什麼?
 整個系統使用的情境為何?整體性的流程為何?(可用 UML activity
diagram 來規劃)
 使用者需求列表與說明
 針對每一個需求(功能)給一個明確的 ID,並用文字、圖形、模組說明此
需求的含意
 多利用 ER, DFD, Use case, 流程圖等來說明你的需求功能
 系統需求列表與說明 (使用者需求與系統需求的差別)
 需求追溯表 描述使用者需求與系統需求之間的關係
 系統限制(法令、規範或設計上的限制,例如一定要用 Java 實做)

IEEE 830 軟體需求規格書建議 (英文)


以使用者來區分

1. Introduction
1. Purpose
2. Scope
3. Definitions, acronyms, and abbreviations
4. References
5. Overview
2. Overall description
1. Product perspective
2. Product functions
3. User characteristics
4. Constraints
5. Assumptions and dependencies
3. Specific requirements
1. External interface requirements
1. User interfaces
2. Hardware interfaces
3. Software interfaces
4. Communications interfaces
2. Functional requirements
1. User class 1
1. Functional requirement 1.1
2. ...
3. Functional requirement 1.n
2. User class 2
1. Functional requirement 1.1
2. ...
3. Functional requirement 1.n
3. Performance requirements
4. Design constraints
5. Software system attributes
6. Other requirements
4. Appendixes

以操作模式來區分

1. Introduction
1. Purpose
2. Scope
3. Definitions, acronyms, and abbreviations
4. References
5. Overview
2. Overall description
1. Product perspective
2. Product functions
3. User characteristics
4. Constraints
5. Assumptions and dependencies
3. Specific requirements
1. External interface requirements
1. User interfaces
2. Hardware interfaces
3. Software interfaces
4. Communications interfaces
2. Functional requirements
1. Mode 1
1. Functional requirement 1.1
2. ...
3. Functional requirement 1.n
2. Mode 2
1. Functional requirement 1.1
2. ...
3. Functional requirement 1.n
3. Performance requirements
4. Design constraints
5. Software system attributes
6. Other requirements
4. Appendixes

IEEE 830 軟體需求規格書建議 (中文)


1. 簡介
1. 系統目的
2. 系統範圍
3. 名詞定義、縮寫
4. 參考
5. 系統概觀
2. 系統整體性描述
1. 產品角度
2. 產品功能
3. 系統使用者
4. 系統限制
5. 系統假設
3. 需求詳述說明
1. 外部介面需求
1. 使用者介面
2. 硬體介面
3. 軟體介面
4. 溝通介面
2. 功能性需求
1. 使用者一 (如:老師)
1. 功能性需求 R101
2. ...
3. 功能性需求 R109
2. 使用者八(如:助教)
1. 功能性需求 R801
2. ...
3. 功能性需求 R809
3. 效能需求
4. 設計限制
5. 軟體系統屬性(特性)
6. 其他需求
4. 附錄

國科會自由軟體專案研究計劃需求規格報告樣版與範

國科會自由軟體專案研究計劃需求規格報告內容包括計畫書與規格書

1. 專案範圍(Project Scope)
1. Identification
2. 概觀(Overview)
3. 系統描述(System Description)
4. 子系統 SAS 描述(Subsystem SAS
Description)
5. 子系統 TAS 描述(Subsystem TAS
Description)
6. 子系統 TES 描述(Subsystem TES
Description)
7. 子系統 DBS 描述(Subsystem DBS
Description)
2. 背景資訊(Background Information)
1. 文件範圍(Document Scope)
2. 文件控管(Controlling Document)
3. 方法(Method)
3. 系統(System)
1. 系統開發與介面(System Development
and Interfaces)
1. 環境圖(Context Diagram)
2. 介面需求(Interface
Requirements)
3. 操作概念與腳本(Operational
Concepts and Scenarios)
2. 功能性需求(Functional
Requirements)
3. 非功能性需求(Non-Functional
Requirements)
1. 效能、安全性、可靠性與可維護
性的需求(Performance, Safety,
Reliability and Maintainability
Requirements)
2. 交付、安裝與環境需求
(Delivery, Installation, and
Environmental Requirements)
3. 設計與實做限制
gk4ru4m3g6yji4vu0454(Design
and Implementation Constraints)
4. 測試需求與驗收標準(Test
Requirement and Acceptance
Criteria)
5. 技術限制(Technical
Limitations)
6. 風險控管(Risk Management)
4. 子系統 SAS(Subsystem SAS (System
Administrator Subsystem))
1. 子系統開發與介面(Subsystem
Development and Interfaces)
1. 環境圖(Context Diagram)
2. 介面需求(Interface
Requirements)
3. 操作概念與腳本(Operational
Concepts and Scenarios)
2. 功能性需求(Functional
Requirements)
1. 登入管理模組(Login
Management Module)
2. 帳號管理模組(Account
Management Module)
3. 測試團隊管理模組(Test Group
Management Module)
4. 測試主題管理模組(Test
Subject Management Module)
3. 非功能性需求(Non-Functional
Requirements)
1. 效能、安全性、可靠性與可維護
性的需求(Performance, Safety,
Reliability and Maintainability
Requirements)
2. 交付、安裝與環境需求
(Delivery, Installation, and
Environmental Requirements)
3. 設計與實做限制(Design and
Implementation Constraints)
4. 測試需求與驗收標準(Test
Requirement and Acceptance
Criteria)
5. 技術限制(Technical
Limitations)
6. 風險控管(Risk Management)
4. 需求對於使用者案例追蹤表(The
Traceability Matrix of Requirements v.s.
Use Cases)
5. 需求對需求追蹤表(The Traceability
Matrix of Requirements v.s.
Requirements)
5. 子系統 TAS(Subsystem TAS (Test
Administrator Subsystem))
1. 子系統開發與介面(Subsystem
Development and Interfaces)
1. 環境圖(Context Diagram)
2. 介面需求(Interface
Requirements)
3. 操作概念與腳本(Operational
Concepts and Scenarios)
2. 功能性需求(Functional
Requirements)
1. 測試銀行管理模組(Test Bank
Management Module)
2. 測試管理模組(Test
Management Module)
3. 測試與分數查詢管理模組
(Test and Grade Querying
Module)
3. 非功能性需求(Non-Functional
Requirements)
1. 效能、安全性、可靠性與可維護
性的需求(Performance, Safety,
Reliability and Maintainability
Requirements)
2. 交付、安裝與環境需求
(Delivery, Installation, and
Environmental Requirements)
3. 設計與實做限制(Design and
Implementation Constraints)
4. 測試需求與驗收標準(Test
Requirement and Acceptance
Criteria)
5. 技術限制(Technical
Limitations)
6. 風險控管(Risk Management)
4. 需求對於使用者案例追蹤表(The
Tracability Matrix of Requirements v.s.
Use Cases)
5. 需求對需求追蹤表(The Traceability
Matrix of Requirements v.s.
Requirements)
6. 子系統 TES(Subsystem TES (Testing and
Exercising Subsystem))
1. 子系統開發與介面(Subsystem
Development and Interfaces)
1. 環境圖(Context Diagram)
2. 介面需求(Interface
Requirements)
3. 操作概念與腳本(Operational
Concepts and Scenarios)
2. 功能性需求(Functional
Requirements)
1. 測試模組(Testing Module)
2. 習題模組(Exercising Module)
3. 分數檢查模組(Grade Checkng
Module)
4. 帳號變更模組(Account Change
Module)
3. 非功能性需求(Non-Functional
Requirements)
1. 效能、安全性、可靠性與可維護
性的需求(Performance, Safety,
Reliability and Maintainability
Requirements)
2. 交付、安裝與環境需求
(Delivery, Installation, and
Environmental Requirements)
3. 設計與實做限制(Design and
Implementation Constraints)
4. 測試需求與驗收標準(Test
Requirement and Acceptance
Criteria)
5. 技術限制(Technical
Limitations)
6. 風險控管(Risk Management)
4. 需求對於使用者案例追蹤表(The
Traceability Matrix of Requirements v.s.
Use Cases)
5. 需求對需求追蹤表(The Traceability
Matrix of Requirements v.s.
Requirements)
7. 子系統 DBS(Subsystem DBS (Database
Subsystem))
1. 子系統開發與介面(Subsystem
Development and Interfaces)
1. 環境圖(Context Diagram)
2. 介面需求(Interface
Requirements)
3. 操作概念與腳本(Operational
Concepts and Scenarios)
2. 功能性需求(Functional
Requirements)
3. 非功能性需求(Non-Functional
Requirements)
1. 效能、安全性、可靠性與可維護
性的需求(Performance, Safety,
Reliability and Maintainability
Requirements)
2. 交付、安裝與環境需求
(Delivery, Installation, and
Environmental Requirements)
3. 設計與實做限制(Design and
Implementation Constraints)
4. 測試需求與驗收標準(Test
Requirement and Acceptance
Criteria)
5. 技術限制(Technical
Limitations)
6. 風險控管(Risk Management)
8. 專案執行計畫(Project Execution Plan)
1. 線上測試與練習系統(Online Testing
and Exercising System (OTES))
1. 專案成功與否的準則(Success
Criteria)
2. 專案範圍(任務分析結構圖)
(Project Scope (Work
Breakdown Structure))
3. 建立專案屬性評估(Establish
Estimates of Project Attributes)
4. 專案生命週期(Project Life
Cycle)
5. 專案時程(Project Schedule)
6. 資源(Resources)
7. 風險控管(Risk Management)
8. 資料控管計畫(Data
Management Plan)
9. 詞彙表(Glossary)
10. 參考資料(References)
11. 附錄(Appendix)

You might also like