|
||||
|
《項目名稱》
軟件概要設計說明書
2020-04
版本變更歷史
版本 |
提交日期 |
主要編制人 |
審核人 |
版本說明 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1引言... 4
1.1編寫目的... 4
1.2范圍... 4
1.2.1系統目標.. 4
1.2.2主要軟件需求.. 4
1.2.3軟件設計約束、限制... 4
1.3術語和縮略詞.. 4
1.4參考資料... 4
2體系結構設計... 5
2.1 需求復審... 5
2.2 軟件體系結構... 5
2.3 模塊設計... 5
3接口設計.. 5
3.1用戶接口... 5
3.2外部接口... 5
3.3內部接口... 6
3.3.1 內部模塊間關系.. 6
3.3.2 接口數據描述... 6
4數據設計.. 6
4.1 數據結構... 6
4.2 文件和數據庫結構.. 6
5 需求交叉索引... 6
6 測試部分... 6
1引言
1.1編寫目的
該文檔旨在明確預設計的小程序的目的、范圍、定義和功能,作為小程序所有需求陳述的正式文檔和概念模型,可為后續概要設計和詳細設計階段提供依據。為了描述華農圖書館占座小程序的功能和性能描述,重點描述了小程序的功能需求,並作為系統設計階段的主要輸入。
預期讀者包括需求分析人員,設計人員,開發人員,項目管理人員,測試人員,用戶。
1.2范圍
1.2.1系統目標
開發此系統,目的在於緩解同學們在圖書館自習時出現的一些問題例如“進圖書館發現沒座位”、“空座位上放置了許多書籍但是沒有人”等等。
在用戶遵守規則,合理使用的前提下,達到座位使用最大化,減少空間的浪費。
1.2.2主要軟件需求
功能:占座-取消占座、查看空座位。
1.2.3軟件設計約束、限制
為使軟件得到同學們的認可並良好運行,在軟件投入使用時需得到學校的大力支持。
技術上,編者多對C++有初步掌握,故在編寫此適用於微信QQ的小程序可能會出現一些問題。
1.3術語和縮略詞
小程序:小程序(Mini Program)是一種不需要下載安裝即可使用的應用,由騰訊於2017年1月9日首次推出。這一應用形式能使用戶不用再關心應用安裝太多的問題,實現了應用“觸手可及”的夢想,也體現了“用完即走”的理念。
1.4參考資料
[1]竇萬峰.軟件工程方法與實踐(第三版).北京:機械工業出版社,2016
[2]竇萬峰.軟件工程實驗教程 (第三版).北京:機械工業出版社,2016
2體系結構設計
2.1 需求復審
對於軟件需求規格說明書中的數據流,實踐過程中發現:違約、控制占座時間和檢索讀者位置較為困難,故將其取消。目前新數據流圖如下
圖1:頂層數據流圖
圖2:0層數據流圖
圖3:1層數據流圖
2.2 軟件體系結構
給出相應的軟件體系結構圖的表示,並使用文字描述對結構圖進行總體解釋說明。
如果采用結構化設計方法,采用合適的變換或事務設計方法,將數據流圖映射得到軟件模塊結構圖,並對其精化和優化。若采用面向對象設計方法,依據用例圖及活動圖的功能描述,給出包圖、類圖等描繪的軟件體系結構。
2.3 模塊設計
模塊1:占座
模塊2:取消占座
模塊3:查看空座位
|
模塊1:占座 |
模塊2:取消占座 |
模塊3:查看空座位 |
功能 |
用於同學們占座操作 |
用於同學們取消占座操作 |
用於同學們占座前查看空余空座位 |
輸入數據 |
用戶想要占座的位置 |
用戶已占座的位置 |
無 |
處理過程 |
|
1.調用后台座位信息數據庫 |
|
輸出數據 |
占座成功 |
取消成功 |
顯示空余座位 |
調用關系 |
后台座位信息數據庫 |
后台座位信息數據庫、占座用戶狀態 |
后台座位信息數據庫 |
3接口設計
3.1用戶接口
給出人機界面設計,包括界面風格、界面內容設計、界面序列關系、每個界面的操作規則和處理規則等。
3.2外部接口
說明本系統同外界的所有接口的交互包括軟件與硬件之間的接口、本系統與各支持軟件之間的接口關系。需要給出外部數據接口的描述(如數據格式和規范等)、與外部系統或設備接口的連接方式和通信方式。
3.3內部接口
3.3.1 內部模塊間關系
一切模塊的調用以及功能的實現均需調用座位信息數據庫。
“占座”與“查看空座位”僅依賴於“座位信息數據庫”;取消占座依賴於“座位信息數據庫”與“占座的同學的占座詳情”。
3.3.2 接口數據描述
1.座位均為實體,我們將空座位賦值為1,已占座位賦值為0。
2.程序啟動,所有座位賦值為1,查看空座位不改變賦值信息。占座和取消占座改變賦值並更新至座位信息數據庫
4數據設計
4.1 數據結構
用戶基本信息,包括用戶名、密碼,用順序數據結構。
座位:圖書館信息化的座位的空閑與否,用鏈式存儲結構。
4.2 文件和數據庫結構
使用數據庫結構:
所有用戶信息封裝在一個靜態表中,表中每一行對應一位用戶的信息,每行記錄用戶的姓名、學號、手機號。
圖書館中所有座位的占座情況存放在一個動態表中,表中的每一行對應一個座位,每行記錄不同座位的占座情況,以0、1代表已占和空余並進行動態更新。
5 需求交叉索引
占座以 占座模塊 實現
取消占座以 取消占座模塊 實現
新增查看空座位以 查看空座位模塊實現
時間空間定位已刪除,無對應模塊。
6 測試部分
白盒測試由編寫者自行檢查
黑盒測試用編者手機以及虛擬手機運行,查看其運行結果。