1
引言1.1 編寫目的:闡明編寫詳細設計說明書的目的,指明讀者物件。
1.2 專案背景:應包括專案的**和主管部門等。
1.3 定義:列出本文件中所用到的專門術語的定義和縮寫詞的願意。
1.4 參考資料:
● 列出有關資料的作者、標題、編號、發表日期、出版單位或資料**
●專案經核准的計畫任務書、合同或上級機關的批文;專案開發計畫;需求規格說明書;概要設計說明書;測試計畫(初稿);使用者操作手冊
● 文件所引用的資料、軟體開發的標準或規範。
2 總體設計
2.1 需求概述
2.2 軟體結構:如給出軟體系統的結構圖。
3 程式描述
3.1 逐個模組給出以下說明:
● 功能
● 效能
● 輸入專案
● 輸出專案
3.2 演算法:模組所選用的演算法。
3.3 程式邏輯:詳細描述模組實現的演算法,可採用:標準流程圖;pdl語言;n-s圖;判定表等描述演算法的圖表。
3.4 介面
● 儲存分配
● 限制條件
3.5測試要點:給出測試模組的主要測試要求。
1 概述
1.1
系統簡述
對系統要完成什麼,所面向的使用者以及系統執行的環境的簡短描述,這部分主要**於需求說明書的開始部分。
1.2
軟體設計目標
這部分論述整個系統的設計目標,明確地說明哪些功能是系統決定實現而哪些時不準備實現的。同時,對於非功能性的需求例如效能、可用性等,亦需提及。需求規格說明書對於這部分的內容來說是很重要的參考,看看其中明確了的功能性以及非功能性的需求。
這部分必須說清楚設計的全貌如何,務必使讀者看後知道將實現的系統有什麼特點和功能。在隨後的文件部分,將解釋設計是怎麼來實現這些的。
1.3
參考資料
列出本文件中所引用的參考資料。(至少要引用需求規格說明書)
1.4
修訂版本記錄
列出本文件修改的歷史紀錄。必須指明修改的內容、日期以及修改人。
2 術語表
對本文件中所使用的各種術語進行說明。如果一些術語在需求規格說明書中已經說明過了,此處不用再重複,可以指引讀者參考需求說明。
3 用例
此處要求系統用用例圖表述(uml),對每個用例(正常處理的情況)要有中文敘述。
4 設計概述
4.1
簡述這部分要求突出整個設計所採用的方法(是物件導向設計還是結構化設計)、系統的體系結構(例如客戶/伺服器結構)以及使用到的相應技術和工具(例如omt、rose)
4.2
系統結構設計
這部分要求提供高層系統結構的描述,使用方框圖來顯示主要的元件及元件間的互動。最好是把邏輯結構同物理結構分離,對前者進行描述。別忘了說明圖中用到的俗語和符號。
4.2.1
頂層系統結構
4.2.2
子系統1結構
4.2.3
子系統2結構
4.3
系統介面
各種提供給使用者的介面以及外部系統在此處要予以說明。如果在需求規格說明書中已經對使用者介面有了敘述,此處不用再重複,可以指引讀者參考需求說明。如果系統提供了對其它系統的介面,比如說從其它軟體系統匯入/匯出資料,必須在此說明。
4.4
約束和假定
描述系統設計中最主要的約束,這些是由客戶強制要求並在需求說明書寫明的。說明系統是如何來適應這些約束的。
另外如果本系統跟其它外部系統互動或者依賴其它外部系統提供一些功能輔助,那麼系統可能還受到其它的約束。這種情況下,要求清楚地描述與本系統有互動的軟體型別(比如某某某資料庫軟體,某某某email軟體)以及這樣導致的約束(比如只允許純文字的email)。
實現的語言和平台也會對系統有約束,同樣在此予以說明。
對於因選擇具體的設計實現而導致對系統的約束,簡要地描述你的想法思路,經過怎麼樣的權衡,為什麼要採取這樣的設計等等。
5 物件模型
5.1
系統物件模型
提供整個系統的物件模型,如果模型過大,按照可行的標準把它劃分成小塊,例如可以把客戶端和伺服器端的物件模型分開成兩個圖表述。
物件圖應該包含什麼呢?
在其中應該包含所有的系統物件。這些物件都是從理解需求後得到的。要明確哪些應該、哪些不應該被放進圖中。
所有物件之間的關聯必須被確定並且必須指明聯絡的基數(一對
一、一對多還是多對多,0..1,*,1..*)。聚合和繼承關係必須清楚地確定下來。每個圖必須附有簡單的說明。
可能經過多次反覆之後才能得到系統的正確的物件模型。
6 物件描述
在這個部分敘述每個物件的細節,它的屬性、它的方法。在這之前必須從邏輯上對物件進行組織。你可能需要用結構圖把物件按子系統劃分好。
為每個物件做乙個條目。在系統物件模型中簡要的描述它的用途、約束(如只能有乙個例項),列出它的屬性和方法。如果物件是儲存在持久的資料容器中,標明它是持久物件,否則說明它是個臨時物件(transient object)。
對每個物件的每個屬性詳細說明:名字、型別,如果屬性不是很直觀或者有約束(例如,每個物件的該屬性必須有乙個唯一的值或者值域是有限正整數等)。
對每個物件的每個方法詳細說明:方法名,返回型別,返回值,引數,用途以及使用的演算法的簡要說明(如果不是特別簡單的話)。如果對變數或者返回值由什麼假定的話,pre-conditions和post-conditions必須在此說明。列出它或者被它呼叫的方法需要訪問或者修改的屬性。最後,提供可以驗證實現方法的測試案例。
6.1
子系統1中的物件
6.1.1
物件:物件1
用途:約束:
永續性:
6.1.1.1
屬性描述:
1. 屬性:屬性1
型別:描述:
約束:2.
屬性:屬性2
6.1.1.2
方法描述:
1. 方法:方法1
返回型別:
引數:返回值:
pre-condition:
軟體詳細設計說明書
詳細設計說明書 1 引言 1 1編寫目的 闡明編寫詳細設計說明書的目的,指明讀者物件。1 2專案背景 應包括專案的 和主管部門等。1,3定義 列出文件中所用到的專門術語的定義和縮寫詞的原意。1 4參考資料 列出有關資料的作者 標題 編號 發表日期 出版單位或資料 可包括 a 專案的計畫任務書 合同或...
詳細設計說明書
詳細設計說明書 1 引言 1.1 編寫目的 闡明編寫詳細設計說明書的目的,指明讀者物件。1.2 專案背景 應包括專案的 和主管部門等。1.3 定義 列出本文件中所用到的專門術語的定義和縮寫詞的願意。1.4 參考資料 列出有關資料的作者 標題 編號 發表日期 出版單位或資料 專案經核准的計畫任務書 合...
詳細設計說明書
1 引言 1.1 編寫目的 說明編寫這份詳細設計說明書的目的,指出預期的讀者。1.2 背景 說明 a 待開發軟體系統的名稱 b 本專案的任務提出者 開發者 使用者和執行該程式系統的計算中心。1.3 定義 列出本檔案中用到專門術語的定義和外文首字母組詞的原片語。1.4 參考資料 列出有關的參考資料,如...