㈠ 軟體需求說明怎麼寫
近來學校的一些科研項目又在申報了,一些學弟開始Q我一些軟體工程上書面的問題。大概的總結了下,寫到這里。本文涉及到的是需求分析部分的書寫,主要是根據國家標准文檔中的要求來的。
在互聯網公司或者一些敏捷開發的公司里,其實大家都是秉承著重開發,重討論,而輕文檔的態度。這個輕文檔並不是指沒有文檔或者幾乎不做文檔,而是在嚴格的文檔流程中解脫出來,只把最最實際的部分寫出來。這個特徵是有互聯網本身迭代周期短,版本發布快等特點決定的。而在實際的兼職項目的時候,同學們就要注意了,最重要的應該就是在簽合同的時候一定要附上最清楚的一份需求分析,雖然這份需求說明可能不是按照某些標准文檔而來的,描述清楚每個功能達到的效果,而這個效果一定要讓客戶點頭確認,而不能出現「應該是」、「可能是」、「也許是」這樣的模糊回答。否則在項目後期就會比較難過了。在學校申請的項目和大型公司項目開發中,是重視文檔流程的,一部一部來。所以還是看情況來對待文檔的深度和標准。
一、目錄:目錄要用word的「引用」—>」目錄」,自動生成目錄,一般都是要三級目錄。通常這部分基本都不需要改結構,直接更新頁碼即可。
二、內容部分。國家標准軟體需求說明書G856T-88下載
1引言
1.1編寫目的
說明編寫這份軟體需求說明書的目的,指出預期的讀者。
(這部分說明需求分析報告的概況,例如:本X需求分析報告是為S系統而編寫的。+S系統的兩句話概述。+本X報告旨在使U1(需求者)明確S系統的要求和細節,給U2(開發人員)了解需求實現的難度和困難,最終提供給U3(審核人、管理者)討論和審核,達到溝通效果)
1.2背景
說明:
a.待開發的軟體系統的名稱;
b.本項目的任務提出者、開發者、用戶及實現該軟體的計算中心或計算機網路;
c.該軟體系統同其他系統或其他機構的基本的相互來往關系。
(這部分可以將a,b,c分為2部分,例子如下:
1.2.1項目概況
本需求分析報告所預期開發的軟體系統是:S。S是(不是則無)SS系統的某一個功能子模塊,S和S1、S2等系統之間的聯系,以及概述其他系統的狀態等等。
1.2.2任務分配
a.任務提出者:xxx
b.軟體開發者:xx
c.產品使用者:xx
d.文檔編寫者:xx
e.預期產品使用者:xx
)
1.3定義
列出本文件中用到的專門術語的定義和外文首字母組詞的原片語。
(這部分很簡單,就是描述專業詞彙,比如
1. XML(Extensible Markup Language)即可擴展標記語言,它與HTML一樣,都是SGML(Standard Generalized Markup Language,標准通用標記語言)。
2. Word2,解釋。。。
)
1.4參考資料
列出用得著的參考資料,如:
a.本項目的經核準的計劃任務書或合同、上級機關的批文;
b.屬於本項目的其他已發表的文件;
c.本文件中各處引用的文件、資料、包括所要用到的軟體開發標准。列出這些文件資料的標題、文件編號、發表日期和出版單位,說明能夠得到這些文件資料的來源。
2任務概述
2.1目標
敘述該項軟體開發的意圖、應用目標、作用范圍以及其他應向讀者說明的有關該軟體開發的背景材料。解釋被開發軟體與其他有關軟體之間的關系。如果本軟體產品是一項獨立的軟體,而且全部內容自含,則說明這一點。如果所定義的產品是一個更大的系統的一個組成部分,則應說明本產品與該系統中其他各組成部分之間的關系,為此可使用一張方框圖來說明該系統的組成和本產品同其他各部分的聯系和介面。|
(
本模塊開發主要是為SS的整體服務,完成SS工作中的XX部分以及相關的工作。其涉及的范圍就是,從下達A、B命令後,到給出C結果的過程。具體描述:B1,來完成B11功能;B2,來完成B22功能;等等。本部分是(否)耦合在分詞工具包其他部分中的,主要為嵌入方式和先後方式相互交互。
圖
圖1.該系統的組成同其他各部分的聯系和介面
)
2.2用戶的特點
列出本軟體的最終用戶的特點,充分說明操作人員、維護人員的教育水平和技術專長,以及本軟體的預期使甩頻度。這些是軟體設計工作的重要約束
(例如:二次開發和系統調用人員:具有很高的專業知識水平,理解XX的運行機制。可以對開放代碼進行閱讀和分析,以完成其系統獨特的需求,提供給這部分用戶開放API手冊和Debug版本的源代碼即可;預期這部分用戶會占本系統總用戶量的多大部分。
xx使用者:具有一定的計算機操作能力和知識,了解xx領域的相關概念和用途。提供給這部分用戶操作手冊即可。預期這部分使用者主要是來簡單的xx操作。
維護人員:具有較高的計算機專業水平,可以對常見的系統Bug進行追蹤和分析,具有一定的測試能力。這部分用戶主要是採用了本系統之後的後期工作維護者。
等等
)
2.3假定和約束
列出進行本軟體開發工作的假定和約束,例如經費限制、開發期限等。
(這部分重要是對你有的技術力量、資金狀況、人力資源等情況的假設,以使得你可以在什麼樣的情況和時間范圍內完成工作。工期約束,經費約束,人員約束,地理約束,設備約束等幾個方面列舉說明。)
3需求規定
3.1對功能的規定
用列表的方式(例如IPO表即輸入、處理、輸出表的形式),逐項定量和定性地敘述對軟體所提出的功能要求,說明輸入什麼量、經怎樣的處理、得到什麼輸出,說明軟體應支持的終端數和應支持的並行操作的用戶數。
(例如:
INPUT輸入
PROCESS處理
OUTPUT輸出
LOAD負載量
A
預處理,做怎樣的動作,
AA
CC
B
BBBB
Bb
v
C
CCCC
cc
v
表一、xx模塊IPO表
對IPO表的簡單文字描述。
)
3.2對性能的規定
3.2.1精度
說明對該軟體的輸入、輸出數據精度的要求,可能包括傳輸過程中的精度。
(例如:
Xx目標處理:1Byt–10M,包括左右邊界值。
yy精度范圍:….
ZZ的精度:由於xx的特殊性,本系統均採用xx型來進行字元統計運算,概率部分以及其他比率部分精度精確到0.0x%。
)
3.2.2時間特性要求
說明對於該軟體的時間特性要求,如對:
a.響應時間;
b.更新處理時間;
c.數據的轉換和傳送時間;
d.解題時間;等的要求。
(這部分只要一一列舉就可以:
由於xxx過程中,需要大量xxxx操作或怎樣,故xx解題時間占總時間的最大部分。其次就是xx轉換和存儲的開銷。其具體時間特性要求,如下:
a.xx響應時間:xxms左右;
b.yy更新處理時間:yy;
c.zz數據的轉換和傳送時間:zz;
d.vv解題時間:vv。
等等
)
3.2.3靈活性
說明對該軟體的靈活性的要求,即當需求發生某些變化時,該軟體對這些變化的適應能力,如:
a.操作方式上的變化;
b.運行環境的變化;
c.同其他軟體的介面的變化;
d.精度和有效時限的變化;
e.計劃的變化或改進。
對於為了提供這些靈活性而進行的專門設計的部分應該加以標明。
(這部分按列舉來即可,由於本模塊第一目的是用於xxx,其次則是xxxx。故本模塊的靈活性在於實際應用者的不同。當需求發生某些變化時,該軟體對這些變化的適應能力。具體情況如下:
f.操作方式上的變化:採用集成運行制和獨立運行制兩種模式,集成運行制是把本模塊嵌入到分詞工具包的主框架中,提供給用戶具有一定UI的可操作軟體;獨立運行制是可以獨立運行於後台,並提供給各種程序調用的模式的工作方式,以增強其生命力。
g.運行環境的變化:主採用Windows平台的編譯版本運行和調試,在時間允許的情況下,同步開發支持SUSE Linux的伺服器版本。;
h.同其他軟體的介面的變化:在盡量保證介面不出現變動的情況下,允許介面的重載和再定義。但介面的命名規則是統一的;
i.精度和有效時限的變化:精度在必須調整的條件下,可以上下浮動10個百分點;有效時限則依據現實的測試情況允許稍大范圍的變化。
j.計劃的變化或改進:工作時間安排會存在必然的浮動,這部分要協同分詞工具包課題設計組其他成員一同來進行商定,前期的計劃可以稍微有些變動,後期的安排盡量按照計劃執行。
等等
)
3.3輸人輸出要求
解釋各輸入輸出數據類型,並逐項說明其媒體、格式、數值范圍、精度等。對軟體的數據輸出及必須標明的控制輸出量進行解釋並舉例,包括對硬拷貝報告(正常結果輸出、狀態輸出及異常輸出)以及圖形或顯示報告的描述。
(這部分可以把輸入輸出分為3.3.1輸入要求和3.3.2輸出要求,如下給出一個單元的例子。
XXX輸出
數據名稱:XXX輸出數據
實際含義:用於XX,表示XXXX
數據類型:Character(字元串)
數據格式:XX
數據約束:由於xxx,,大小在xx以內
)
3.4數據管理能力要求
說明需要管理的文卷和記錄的個數、表和文卷的大小規模,要按可預見的增長對數據及其分量的存儲要求作出估算。
(
根據實際系統要求列舉即可
Name名稱
Number數量
Size大小
Increase增長
詞典xx
xx
xxxx
並行執行,其大小依據實際xx大文本而增長
)
3.5故障處理要求
列出可能的軟體、硬體故障以及對各項性能而言所產生的後果和對故障處理的要求。
(包括軟體壓力,內存不足,硬體損壞等,這部分可以根據網路到其常見故障。)
3.6其他專門要求
如用戶單位對安全保密的要求,對使用方便的要求,對可維護性、可補充性、易讀性、可靠性、運行環境可轉換性的特殊要求等。
(例如安全保密性:密鑰更換等;預期擴展:擴展兼容等;OS更換:Slackware轉SUSE等
)
4運行環境規定
4.1設備
列出運行該軟體所需要的硬設備。說明其中的新型設備及其專門功能,包括:
a.處理器型號及內存容量;
b.外存容量、聯機或離線、媒體及其存儲格式,設備的型號及數量;
c.輸入及輸出設備的型號和數量,聯機或離線;
d.數據通信設備的型號和數量;
e.功能鍵及其他專用硬體
(列舉說明即可)
4.2支持軟體
列出支持軟體,包括要用到的操作系統、編譯(或匯編)程序、測試支持軟體等。
(操作系統和版本:xxxx
支撐環境和版本:xxxx
備用IDE環境和版本:xxxx
與該軟體有關的軟體組件:xxxx
後續可能擴展環境:xxxx
)
4.3介面
說明該軟體同其他軟體之間的介面、數據通信協議等。
(例如:
a.用戶和主程序調用介面(圖中介面1)。這個介面採用封裝API形式和函數調用形式,分別以外部調用和內部調用的方式為不同用戶提供使用本機械分詞工具的入口。例如以xxxx方式調用DLL文件,以xxxx方式調用函數。如下圖2所示。
圖2.軟體介面調用圖
b.xx介面(圖中介面2)。這里是一個xxx的介面調用過程。xxxx
)
4.4控制
說明控制該軟體的運行的方法和控制信號,並說明這些控制信號的來源。
(例如:
下面通過圖表的形式,將本模塊以及涉及到本模塊的軟體模塊的運行方法、控制信號,以及這些控制信號的來源,其中箭頭所指方向對應的模塊的控制信號來自箭頭另一方向的模塊,具體情況如下:
圖3 .控制流程圖
圖3的具體說明情況如下表所示:
Name模塊名稱
Method運行方式
Signal控制信號
Forward控制去向
主程序模塊
運行框架
用戶調用或運行
1.調用xx模塊
2.調用xx方法
3.調用標准輸出模塊
xxx模塊
xxx
xxx調用
Xxx模塊
)
附錄:軟體設計文檔國家標准(GB8567–88)軟體設計文檔國家標准(GB8567–88)GB8567——88
操作手冊(GB8567——88).doc 資料庫設計說明書(GB8567——88).doc
測試分析報告(GB8567——88).doc 數據要求說明書(GB856T——88).doc
測試計劃(GB8567——88).doc 圖1.doc
概要設計說明書(GB8567——88).doc 文件給制實施規定的實例(GB8567-88).doc
開發進度月報(GB8567——88).doc 詳細設計說明書(GB8567——88).doc
可行性研究報告(GB8567——88).doc 項目開發計劃(GB856T——88).doc
模塊開發卷宗(GB8567——88).doc 項目開發總結報告(GB8567——88).doc
軟體需求說明書(GB856T——88).doc 用戶手冊(GB8567——88).doc
㈡ 軟體工程詳細設計說明書
詳細設計說明書?請問您的具體問題和實例是什麼?
㈢ 軟體工程需求分析說明書論文怎麼寫
1引言 2
1.1編寫目的 2
1.2背景 2
1.3定義 2
1.4參考資料 2
2任務概述 2
2.1目標 2
2.2用戶的特點 3
2.3假定和約束 3
3需求規定 3
3.1對功能的規定 3
3.2對性能的規定 3
3.2.1精度 3
3.2.2時間特性要求 3
3.2.3靈活性 4
3.3輸人輸出要求 4
3.4數據管理能力要求 4
3.5故障處理要求 4
3.6其他專門要求 5
4運行環境規定 5
4.1設備 5
4.2支持軟體 5
4.3介面 5
4.4控制 5
軟體需求說明書的編寫提示
1引言
1.1編寫目的
說明編寫這份軟體需求說明書的目的,指出預期的讀者。
1.2背景
說明:
a. 待開發的軟體系統的名稱;
b. 本項目的任務提出者、開發者、用戶及實現該軟體的計算中心或計算機網路;
c. 該軟體系統同其他系統或其他機構的基本的相互來往關系。
1.3定義
列出本文件中用到的專門術語的定義和外文首字母組詞的原片語。
1.4參考資料
列出用得著的參考資料,如:
a. 本項目的經核準的計劃任務書或合同、上級機關的批文;
b. 屬於本項目的其他已發表的文件;
c. 本文件中各處引用的文件、資料、包括所要用到的軟體開發標准。 列出這些文件資料的標題、文件編號、發表日期和出版單位,說明能夠得到這些文件資料的來源。
2任務概述
2.1目標
敘述該項軟體開發的意圖、應用目標、作用范圍以及其他應向讀者說明的有關該軟體開發的背景材料。解釋被開發軟體與其他有關軟體之間的關系。如果本軟體產品是一項獨立的軟體,而且全部內容自含,則說明這一點。如果所定義的產品是一個更大的系統的一個組成部分,則應說明本產品與該系統中其他各組成部分之間的關系,為此可使用一張方框圖來說明該系統的組成和本產品同其他各部分的聯系和介面。|
2.2用戶的特點
列出本軟體的最終用戶的特點,充分說明操作人員、維護人員的教育水平和技術專長,以及本軟體的預期使甩頻度。這些是軟體設計工作的重要約束
2.3假定和約束
列出進行本軟體開發工作的假定和約束,例如經費限制、開發期限等。
3需求規定
3.1對功能的規定
用列表的方式(例如IPO表即輸入、處理、輸出表的形式),逐項定量和定性地敘述對軟體所提出的功能要求,說明輸入什麼量、經怎樣的處理、得到什麼輸出,說明軟體應支持的終端數和應支持的並行操作的用戶數。
3.2對性能的規定
3.2.1精度
說明對該軟體的輸入、輸出數據精度的要求,可能包括傳輸過程中的精度。
3.2.2時間特性要求
說明對於該軟體的時間特性要求,如對:
a. 響應時間;
b. 更新處理時間;
c. 數據的轉換和傳送時間;
d. 解題時間;等的要求。
3.2.3靈活性
說明對該軟體的靈活性的要求,即當需求發生某些變化時,該軟體對這些變化的適應能力,如:
a. 操作方式上的變化;
b. 運行環境的變化;
c. 同其他軟體的介面的變化;
d. 精度和有效時限的變化;
e. 計劃的變化或改進。
對於為了提供這些靈活性而進行的專門設計的部分應該加以標明。
3.3輸人輸出要求
解釋各輸入輸出數據類型,並逐項說明其媒體、格式、數值范圍、精度等。對軟體的數據輸出及必須標明的控制輸出量進行解釋並舉例,包括對硬拷貝報告(正常結果輸出、狀態輸出及異常輸出)以及圖形或顯示報告的描述。
3.4數據管理能力要求
說明需要管理的文卷和記錄的個數、表和文卷的大小規模,要按可預見的增長對數據及其分量的存儲要求作出估算。
3.5故障處理要求
列出可能的軟體、硬體故障以及對各項性能而言所產生的後果和對故障處理的要求。
3.6其他專門要求
如用戶單位對安全保密的要求,對使用方便的要求,對可維護性、可補充性、易讀性、可靠性、運行環境可轉換性的特殊要求等。
4運行環境規定
4.1設備
列出運行該軟體所需要的硬設備。說明其中的新型設備及其專門功能,包括:
a. 處理器型號及內存容量;
b. 外存容量、聯機或離線、媒體及其存儲格式,設備的型號及數量;
c. 輸入及輸出設備的型號和數量,聯機或離線;
d. 數據通信設備的型號和數量;
e. 功能鍵及其他專用硬體
4.2支持軟體
列出支持軟體,包括要用到的操作系統、編譯(或匯編)程序、測試支持軟體等。
4.3介面
說明該軟體同其他軟體之間的介面、數據通信協議等。
4.4控制
說明控制該軟體的運行的方法和控制信號,並說明這些控制信號的來源。
㈣ 軟體工程需求規格說明書項目主題有哪些
軟體需求規格說明書大綱標題如下:
1.引言
1.1編寫目的
1.2背景
1.3定義
1.4 參考資料
2.任務概述
2.1目標
2.2用戶特點
2.3 假定和約束
3.需求規定
3.1 對功能的規定
3.1.1 主要功能
3.1.2 功能描述(概要)
3.1.3 用戶界面
3.1.4 用戶場景
3.1.5 典型用戶
3.2 對性能的規定
3.2.1 精度
3.2.2 時間特性要求
3.2.3 靈活性
3.3 輸入輸出要求
3.4 數據管理能力要求
3.5 故障處理要求
3.6 其他專門要求
4.運行環境規定
4.1 設備
4.2 開發環境
4.3 介面
4.4 控制
5.驗收標准
6.附錄
㈤ 軟體使用說明書如何寫(包含哪些內容)有沒有模板的
有的,網上可以搜到挺多,我不知道怎麼提供給你下載,這個你可以參考參考。
軟體使用說明書模板
1. 引言
1.1編寫目的【闡明編寫手冊的目的。指明讀者對象。】
1.2項目背景【說明項目來源、委託單位、開發單位及主管部門】
1.3 定義【列出手冊中使用的專門術語的定義和縮寫詞的原意】
1.4參考資料【列出有關資料的作者、標題、編號、發表日期、出版單位或資料來源,
可包括:a.項目的計劃任務書、合同或批文;b.項目開發計劃;C. 需求規格說
明書;d.概要設計說明書;e。詳細設計說明書;f.測試計劃;g。手冊中引用
的其他資料、採用的軟體工程標准或軟體工程規范。】
2. 軟體概述
2.1目標
2.2功能
2.3 性能
a.數據精確度【包括輸入、輸出及處理數據的精度】
b.時間特性【如響應時間、處理時間、數據傳輸時間等。】
c.靈活性【在操作方式、運行環境需做某些變更時軟體的適應能力。】
3. 運行環境
3.1硬體【列出軟體系統運行時所需的硬體最小配置,如a. 計算機型號、主存容量;b.
外存儲器、媒體、記錄格式、設備型號及數量;c。輸入、輸出設備;d.數據傳輸設
備及數據轉換設備的型號及數量。】
3.2支持軟體【如:a。操作系統名稱及版本號;b. 語言編譯系統或匯編系統的名稱及版
本號;C。資料庫管理系統的名稱及版本號;d.其他必要的支持軟體。】
4. 使用說明
4.1安裝和初始化【給出程序的存儲形式、操作命令、反饋信息及其含意、表明安裝完成
的測試實例以及安裝所需的軟體工具等。】
4.2輸入【給出輸入數據或參數的要求。】
4.2.1數據背景【說明數據來源、存儲媒體、出現頻度、限制和質量管理等。】
4.2.2數據格式【如:a。長度;b.格式基準;C,標號;d.順序;e。分隔符;f.
詞彙表;g. 省略和重復;h.控制。】
4.2.3輸入舉例
4.3輸出【給出每項輸出數據的說明】
4.3.l數據背景【說明輸出數據的去向使用頻度、存放媒體及質量管理等。】
4.3.2數據格式【詳細闡明每一輸出數據的格式,如:首部、主體和尾部的具體形式。】
4.3.3舉例
4.4出錯和恢復【給出:a。出錯信息及其含意;b.用戶應採取的措施,如修改、恢復、
再啟動.】
4.5求助查詢【說明如何操作】
5. 運行說明
5.1運行表【列出每種可能的運行情況,說明其運行目的。】
5.2運行步驟【按順序說明每種運行的步驟,應包括:】
5.2.1運行控制
5.2.2操作信息
a. 運行目的;b.操作要求;C。啟動方法; d.預計運行時間;e。操作命令格
式及格式說明;f.其他事項。
5.2.3輸入/輸出文件【給出建立或更新文件的有關信息,如:】
a.文件的名稱及編號;b.記錄媒體;C。存留的目錄;d.文件的支配
【說明確定保留文件或廢棄文件的准則,分發文件的對象,佔用硬體的優先
級及保密控制等.】
5.2.4啟動或恢復過程
6. 非常規過程
【提供應急或非常規操作的必要信息及操作步驟,如出錯處理操作、向後備系統切換操作以
及維護人員須知的操作和注意事項。】
7. 操作命令一覽表
【按字母順序逐個列出全部操作命令的格式、功能及參數說明。】
8. 程序文件(或命令文件)和數據文件一覽表
【按文件名字母順序或按功能與模塊分類順序逐個列出文件名稱、標識符及說明。】
9. 用戶操作舉例
㈥ 軟體工程中《軟體需求規格說明書》和《詳細設計說明書》區別。
需求規格說明書在前,詳細設計說明書在後.
需求規格說明書要界定用戶的最終需求,建立軟體的功能框架.
詳細設計說明書在概要設計的基礎上要深化設計,介面\內容都要具體化.
㈦ 一道軟體工程的題,讓編寫《軟體需求規格說明書》,誰會啊謝謝啦
軟體需求說明書描述的是目標系統的系統邊界,包括輸入、輸出、進行如何加工(要明確加工流程)、相關的事件(包括異常事件)。
就是把每個功能相關的這些信息都列出來而已,不過寫這個說明書之前作者是應該已經完成了系統設計的。要不然是不可能把這些功能的輸入、輸出、加工都弄清楚的。