軟體概要設計文件
1.引言
1.1目的
該文件的目的是描述輔助選課系統的概要設計,主要內容包括系統功能簡介、系統結構設計、系統結構設計、系統介面設計、模組設計和介面設計等。
本文件預期的讀者包括設計人員、開發人員、專案管理人員、測試人員。
1.2範圍
1.2.1系統目標
開發一個支援學生選課並輔助學生選課的APP。
1.2.2主要軟體需求
該系統主要功能包括:
l 使用者登入
l 使用者選課
l 檢視課表
l 輔助選課
l 資訊更新
1.2.3軟體設計約束
軟體支援單鍵盤、單滑鼠的物理結構。
1.3縮寫
無
1.4術語
輔助選課:根據使用者的課表和使用者提供的需求,系統挑選出符合條件的課程。
1.5參考資料
[1] 需求概要設計文件格式標準[S].GB856D-1988.
[2]竇萬峰.軟體工程方法與實踐[M].北京:機械工業出版社,2016.10
[3]竇萬峰.軟體工程實驗教程[M].北京:機械工業出版社,2016.11
1.6版本資訊
具體版本資訊如表A-1所示
表A-1 具體版本資訊
修改編號 |
修改日期 |
修改後版本 |
修改位置 |
修改內容概述 |
1 |
2018-6-7 |
1.0 |
全部 |
完成第一次編寫 |
2.資料設計
2.1資料物件和形成的資料結構
輔助選課系統設計的主要資料結構如下:
l 使用者:描述使用者的基本資訊,包括使用者名稱、學號、密碼等。其資料結構是一個順序資料結構,包括使用者的基本資訊。
l 課程:描述課程的基本資訊,包括課程名稱、課程編號、上課時間、上課老師等。其資料結構是一個順序資料結構,包括課程的基本資訊。
l 選課過程:描述選課的基本資訊,包括選使用者的學號、課程名稱、上課時間、上課老師等。其資料結構是一個順序資料結構,包括選課過程的基本資訊。
2.2檔案和資料庫結構
描述檔案的資料結構或者庫表結構。
2.2.1
包括檔案的邏輯結構、邏輯記錄描述、訪問方法。輔助選課系統主要的外部檔案有:
l 使用者資訊檔案:Users.txt。
l 選課過程資訊檔案:SelectLessons.txt。
2.2.2全域性資料
輔助選課系統的全域性變數有:
l 課程資訊檔案:Lessons.txt。
2.2.3檔案和資料交叉索引
l 使用者資訊檔案用在使用者管理功能中;
l 課程資訊檔案用於使用者檢視/搜尋課程功能中;
l 選課過程資訊檔案用與選課成功功能中。
3.體系結構設計
這一部分主要描述軟體的邏輯組成介面,即軟體結構圖繪製。
3.1資料和控制流複審
對於輔助選課系統,我麼們補充了一個總體資料流圖,如圖B-1所示。
3.2得出的程式結構
根據複審的資料流圖,逐步得出軟體的邏輯組成部分。利用最佳化思想,對軟體結構圖進行最佳化設計,得出模組層次結構適中的軟體結構圖。
4.介面設計
這一部分主要給出介面設計的總體要求和介面序列,以及介面設計規約。
4.1人機介面規約
給出介面風格、約定和操作要求,設計出使用者的所有介面。輔助選課系統的介面的主要包括下面幾種。
l 使用者登入介面:該介面能夠判斷使用者輸入的使用者名稱和密碼是否正確。並且該介面有使用者登入功能。
l 系統總控介面:系統總控介面是系統的主介面,主要用於接收使用者的請求,並呼叫相應的模組。
l 課程介面:該介面主要實現使用者檢視課程的功能。顯示使用者的所有課程。
l 選課介面:該介面主要實現使用者選課的功能。並顯示使用者選課的記錄。
4.2人機介面設計規約
給出介面序列關係,以及每個介面的操作規則和處理規則。各介面轉化關係如下:
使用者登入介面->系統總控介面->課程介面->選課介面。
5.介面設計
5.1外部介面設計
5.1.1外部資料介面
暫無
5.1.2外部系統或裝置介面
滑鼠與鍵盤是USB介面連線。
5.2內部介面設計規約
5.2.1內部模組介面呼叫關係
登入模組需要呼叫與資料庫的介面,選課,退課需要呼叫程式與網路的介面
5.2.2介面資料結構
6.模組過程設計
選課系統
6.1功能:實現使用者的選課,退課以及檢視課程功能。
6.2模組分類:
網路傳輸模組:與網站進行資料互動
使用者登入模組:透過使用者名稱和密碼登陸網站
選課模組:實現選課功能
退課模組:實現課程的補退選
網路傳輸模組:顯示該使用者已選擇的課程
6.3用例模型檢視:
6.4活動圖
7.需求交叉索引
登入功能:網路傳輸模組和登入模組
使用者管理功能:使用者資訊修改模組
選課功能:網路傳輸模組和選課模組
補退選功能:網路傳輸模組和退課模組
顯示課程資訊:網路傳輸模組和網路傳輸模組
8.測試部分
8.1測試方針
首先對規定的正常的功能進行測試,以黑盒測試為主,白盒測試為輔助來設計測試用例,測試用例要儘量覆蓋所有的程式功能,記錄測試中的問題。
8.2整合策略
採用自底向上的增量式測試策略
8.3特殊考慮
無