圖書管理系統實驗報告

1引言

1.1編寫目的

軟件需求說明書

一個小型圖書館管理系統,

1.2作業題目

1.借書,還書;
2.在圖書館中增加/刪除一本書;
3.按照作者名或專業領域檢索一批書;
4.找出被某位讀者借出的一批書;
5.找出最近借走某本圖書的讀者 .
該系統有兩類用戶:圖書管理員與普通讀者.功能4可供普通讀者查找他們自己借 出的書目.功能1,2,5只供圖書管理員使用.
該系統必須滿足以下限制:
1.館中所有未借出的書籍能夠供讀者隨時借閱 .
2.在同一時刻,一本書不能既被借出,又可供借閱 .
3.一個讀者一次借出的書籍數目不能超過預定值 .

**大學
本科課程設計報告

   課程名稱:          	  軟件體系結構          
   專業班級:          	                        
   學    號:          	                        
   學生姓名:          	                         
   指導教師姓名:         陳 晨                  
   指導教師職稱:         講 師                  

年 月 日

目錄
1 系統概述 1
2 需求分析 1
2.1 角色分類 1
2.2 系統需求分析 1
2.2.1 需求概述 1
2.2.2 圖書管理系統功能性分析 2
2.3 功能模塊圖 2
3 場景視圖之用例建模 5
3.1 圖書管理系統用例圖 5
3.2 圖書管理系統用例描述 6
4 邏輯試圖之類圖設計建模 8
4.1 圖書管理系統實體及其屬性分析 8
4.2 圖書管理系統邏輯視圖之類圖 8
4.3 圖書管理系統關鍵類圖說明 8
5 開發視圖建模 9
5.1 包圖設計建模 9
5.2 組件圖設計建模 10
6 過程視圖之交互建模 10
6.1 借書順序圖 10
6.2 還書順序圖 11
6.3 增加圖書順序圖 12
6.4 刪除圖書順序圖 12
6.5 按作者或專業檢索圖書順序圖 13
6.6 按讀者檢索圖書順序圖 13
6.7 按圖書檢索讀者順序圖 14
7 物理視圖之部署圖 14
8 總結 15
參考文獻 15

1系統概述
移動互聯網技術在圖書館數字化進程中應用廣泛、效果顯著,這不僅彌補了傳統圖書管理模式效率低下、難於管理的不足,還方便了衆多讀者用戶,而圖書館全盤數字化也是未來的發展趨勢。圖書管理系統可以極大地提高圖書館日常的運作效率,圖書管理員和讀者使用此係統進行圖書管理、讀者管理、圖書借還、圖書查找、查看借閱記錄等功能,增強各方用戶體驗感,可以將用戶從冗雜的數據處理中解放出來。本文以圖書館管理實際需求出發,分析了具體的需求,設計了各個模塊,實現圖書借閱管理的人性化、智能化,使圖書管理更加規範、方便、快捷,更貼近人們的生活。
本文運用4+1視圖方法,針對不同需求進行架構設計。“4+1”視圖模型是一個十分通用的模型,可以在每個視圖裏面定義體系結構的各種組成元素,對於不同的視圖還可以選擇不同的體系結構風格。在本文中,“4+1”模型採用UML作爲各視圖的表達和解釋環境, 統一各部分的建模描述語言, 有利於合作開發以及各層次、各環節開發人員之間的溝通, 建立切合實際的模型, 平衡軟件質量與開發週期間的矛盾, 加速軟件的開發和推廣。“4+1”體系結構描述方法與統一建模語言UML的結合, 可以克服目前軟件開發兩難境地, 提高軟件開發和構件重用的效率。
2需求分析
2.1角色分類
我們大致擬定圖書館系統有關角色有以下兩種:
1圖書管理員是管理系統的角色功能有:1.借書、還書 2.在圖書館中增加或刪除一本書 3.按照作者或者專業領域查找一批書 4.找出最近借出某本書的讀者
2普通讀者是借書人角色功能有:1.按照作者或者專業領域查找一批書 2.找出被某位讀者借出的一批書
2.2系統需求分析
2.2.1需求概述
在本圖書管理系統中,最終用戶爲圖書館管理員以及借書人,其中,借書人只能進行圖書書目查詢、圖書管理員能進行全部操作,所以要求圖書管理員能充分掌握該系統。讀者通過圖書證可以進行查詢圖書館書目,查詢自己的借閱信息。管理員可以通過此係統對書進行借出登記、增加/刪除新書、查詢書目信息 、查詢借閱信息的功能。
2.2.2圖書管理系統功能性分析
圖書管理系統系統的功能性分析可以反映這個系統能夠完成的各項功能,它能夠清晰、明確地把這個系統要完成的功能展示給後續的設計人員和使用者。圖書管理系統系統的具體功能如下:
系統允許普通讀者查找自己借出的書
系統允許普通讀者按照作者查找一批書
系統允許普通讀者按照專業領域查找一批書
系統允許管理員借書
系統允許管理員還書
系統允許管理員在圖書館中增加一本書
系統允許管理員在圖書館中刪除一本書
系統允許管理員按照作者查找一批書
系統允許管理員按照專業領域查找一批書
系統允許管理員找出最近借出某本書的讀者
圖書管理系統非功能性分析如下:
性能需求
數據精確度:保證查詢的查全率和查準率爲100%,所有在相應域中包含查詢關鍵字的記錄都 能查到,所有在相應域中不包含查詢關鍵字的記錄都不能查到。
系統響應時間:系統對大部分操作的相應時間應在1—2秒內。
適應性:滿足運行環境在允許操作系統之間的安全轉換和與其他應用軟件的獨立運行要求。
運行需求
用戶界面:系統採用對話框方式,多功能窗口運行。
硬件接口:支持各種X86系列的PC機和手機等嵌入式設備。
軟件接口:運行於Windows2000操作系統、安卓9、ios系統之上。
故障處理:正常使用時不出錯,對於用戶的輸入錯誤給出適當的改正提示信息,遇不可恢復的 系統錯誤時,保證數據庫的完好無損。

2.3功能模塊圖

在這裏插入圖片描述
圖 1 主模塊圖
主模塊
功能
建立與數據庫連接
獲取系統設置
運行主對話框
根據輸入調用子模塊
退出系統時斷開與數據庫的連接
輸入項目
用戶鼠標點擊輸入

在這裏插入圖片描述
圖 2 借書模塊圖
借書模塊
功能
查驗輸入的讀者證號
運行借書對話框
獲取該讀者的相關信息
查驗輸入的圖書號
登記借書
輸入項目
讀者證號、圖書書號 (用戶輸入)
輸出項目
讀者信息(姓名);讀者已借圖書信息 (書名、借書日期);

在這裏插入圖片描述
圖3 還書模塊圖
還書模塊
功能
運行還書對話框
查驗輸入的圖書書號
對合法輸入登錄還書信息
顯示相關信息(本次還書操作信息,尚未歸還圖書的相關信息,讀者信息 ) 輸入項目
圖書書號(用戶輸入)
輸出項目
相關信息(本次還書操作信息,尚未歸還的圖書信息,讀者信息 )

在這裏插入圖片描述
圖 4系統操作模塊圖
在這裏插入圖片描述
圖 5圖書查詢模塊圖
圖書查詢模塊
功能
根據給定查詢條件,查詢數據庫,獲取圖書信息 輸入項目
查詢方式指定以及查詢關鍵字
輸出項目
查詢結果列表顯示 程序邏輯
3場景視圖之用例建模
3.1圖書管理系統用例圖
從以上需求分析中可以看出,本系統有以下幾類參與者:
圖書管理員Admin
讀者Reader
讀卡器CardReader
服務器System
在上述參與者中,圖書管理員和讀者與系統進行交互,通過對交互場景進行歸類和抽象,本系統應具有以下用例:
借書lendBook
還書returnBook
增加圖書addBook
刪除圖書delBook
按作者、專業檢索圖書findBook_Author
按讀者檢索圖書findBook_Reader
按書檢索讀者findReader_Book
在這裏插入圖片描述
圖 6用例圖
3.2圖書管理系統用例描述
1用例名稱:按作者、專業檢索圖書
用例描述:由讀者進行操作,查詢圖書館中有沒有需要圖書,如果有,顯示該圖書編號、書名、 作者、出版日期、當前借閱狀態等信息。
前置條件:以顧客身份登錄
後置條件:無
基本流程:
1以讀者身份登錄。
2輸入專業的名稱或作者名稱。
3顯示相關圖書的信息。
可選流程:如果沒有該圖書,返回提示信息:“沒有找到圖書”。
2用例名稱:借書
用例描述:由圖書管理員把讀者的借書卡的條碼讀入計算機,再將讀者所選圖
書的條碼讀入計算機,在不超過讀者允許借書的情況下,累計該讀者所借的書;
否則提示超過借書數量。
前置條件:以圖書管理員的身份登錄系統。
後置條件:圖書信息中相應記錄的還書日期值做改變;將借書明細加入借書記錄中。
基本操作流程:
1以圖書管理員身份登錄系統。
2進入借書功能。
3錄入讀者的借書卡條碼。
4識別讀者類別,提示讀者可以借閱圖書的數量及借閱時間
等。如果允許借閱,繼續4,否則提示已達到借書數量。
5錄入圖書的條碼,顯示該圖書的信息。
6還有其他圖書,重複步驟3。
7保存操作。
可選流程在保存之前,可以取消操作。
3用例名稱:還書
用例描述:由圖書管理員把圖書的條碼讀入計算機,系統顯示該書的讀者資料, 提示是否超出借 閱期限。如未超出則顯示還書成功
前置條件:以圖書管理員的身份登錄系統。
後置條件:圖書信息中相應記錄的狀態值做改變;將還書明細加入還書記錄中。
基本操作流程:
1以圖書管理員身份登錄系統。
2進入還書功能。
3錄入讀者的借書卡條碼。
4系統顯示該書的讀者資料,提示是否超出借閱期限。
5如未超出則顯示還書成功;
可選流程: 在保存之前,可以取消操作。
4用例名稱:增加圖書
用例描述:由管理員將新書的信息錄入計算機中,進行保存。
前置條件:以圖書管理員的身份登錄系統。
後置條件:圖書信息中增加一條記錄。
基本操作流程:
1以管理員的身份登錄系統。
2進入增加圖書功能。
3輸入新書的相應信息。
4保存操作。
可選流程:在保存之前,可以取消操作。
5用例名稱:刪除圖書
用例描述:由管理員刪除圖書,進行保存。
前置條件:以圖書管理員的身份登錄系統。
後置條件:圖書分類中相應記錄更新或刪除。
基本操作流程:
1以圖書管理員的身份登錄系統。
2進入圖書管理功能。
3選定需要刪除的書目。
4刪除書目。
5保存操作。
可選流程:在保存之前,可以取消操作。
6用例名稱:按讀者檢索書籍
用例描述:由管理員進行操作,查詢讀者借閱信息。
前置條件:以管理員身份登錄
後置條件:無
基本流程:
1以管理員身份登錄。
2選擇按讀者檢索圖書
3輸入讀者借書卡id,密碼
4返回借閱信息
7用例名稱:按圖書檢索讀者
用例描述:由管理員進行操作,查詢借閱圖書的讀者身份,如果有,顯示該讀者信息
前置條件:以管理員身份登錄
後置條件:無
基本流程:
1以管理員身份登錄。
2輸入索書號。
3顯示相關讀者的信息。
可選流程:如果沒有人借閱該圖書,返回提示信息:“沒有人借閱”。
4邏輯試圖之類圖設計建模
4.1圖書管理系統實體及其屬性分析
在這裏插入圖片描述
圖 7實體屬性圖
4.2圖書管理系統邏輯視圖之類圖
在這裏插入圖片描述
圖 8類圖
4.3圖書管理系統關鍵類圖說明
說明:該圖書管理系統中有參與者類:圖書管理員( Admin )、讀者( Reader);業務實體類有書籍( Book)、借還記錄(Records);圖書管理員可以對讀者類、借閱信息和書籍類進行管理操作;讀者者可以對書籍類進行查詢等操作。
5開發視圖建模
5.1包圖設計建模
在這裏插入圖片描述
圖 9 管理員界面包圖
在這裏插入圖片描述
圖 10 讀者界面包圖
【說明】:
1圖書管理系統主要由“管理員界面”和“讀者界面”兩個包組成。
2管理員界面包括增刪圖書類和借還信息類以及查找類組成,主要是管理員的操作
3讀者界面包括查詢和輸入類,主要是讀者的操作
5.2組件圖設計建模
在這裏插入圖片描述
圖 11 組件圖
【說明】:
1項目數據庫依賴用戶數據庫,圖書數據庫,借閱信息數據庫
2用戶管理依賴用戶數據庫
3圖書管理依賴圖書數據庫
4借還記錄管理依賴借閱信息數據庫
5用戶管理組件由管理員組件和讀者組件組成
6過程視圖之交互建模
6.1借書順序圖
在這裏插入圖片描述
圖 12 借書順序圖
6.2還書順序圖
在這裏插入圖片描述
圖 13 還書順序圖
6.3增加圖書順序圖
在這裏插入圖片描述
圖 14 增加圖書順序圖
6.4刪除圖書順序圖
在這裏插入圖片描述
圖 15 刪除圖書順序圖
6.5按作者或專業檢索圖書順序圖
在這裏插入圖片描述
圖 16 按作者或專業檢索圖書順序圖
6.6按讀者檢索圖書順序圖
在這裏插入圖片描述
圖 17 按讀者檢索圖書順序圖
6.7按圖書檢索讀者順序圖
在這裏插入圖片描述
圖 18 按圖書檢索讀者順序圖
7物理視圖之部署圖
在這裏插入圖片描述
圖 19 部署圖
【說明】
1.圖書管理系統部署圖主要由客戶計算機、應用服務器以及數據庫服務器三個部分組成。
2.客戶計算機主要包括方便攜帶查看的手機客戶端和方便操作處理的web瀏覽器端。
3.用戶管理、圖書管理、借閱管理等一些列系統管理組件都部署在應用服務器上,以供圖書管理員操作管理。
4.用戶數據庫、消息記錄數據庫和圖書數據庫都部署在數據庫服務器上,爲其他節點提供數據內容支持。
8總結
本次課程設計利用“4+1”視圖建模方法進行“圖書管理系統”的軟件架構設計。架構內容以及設計流程爲圖書管理系統系統概述、需求分析、場景視圖之用例圖設計建模、邏輯視圖之類圖設計建模、發開視圖設計建模、過程視圖之交互圖設計建模、物理視圖之部署圖設計建模。其中需求分析包括角色分析、系統需求分析以及系統功能模塊圖三個部分;開發視圖設計建模包括包圖設計建模和組件圖設計建模。
本次課程設計的完成主要依賴於軟件體系結構課程所學的相關知識,再加上適當的相關參考文獻的閱讀,才得以將整個軟件架構課程設計很好的完成。整個課程設計的過程中,除了對“4+1”視圖建模方法的具體使用以及對設計模式的理解,還非常考驗對整個軟件從需求的提出到整個架構建模實現的流程思路和處理邏輯。是在設計的過程中,加深了我對課堂所學知識的理解,通過實際的練習,熟練的掌握了整個軟件架構設計的思路、流程以及方法,收穫豐碩。
參考文獻
[1] Ian Sommerville,軟件工程,機械工業出版社出版,2011
[2] 陳永峯.“4+1”視圖模型在精準扶貧系統設計中的應用[J].河北軟件職業技術學院學報,2019
[3]王津津. 一種基於“4+1”視圖模型的生產線過程實時監控和追溯系統架構設計[C]. 天津市電子工業協會.天津市電子工業協會2019年年會論文集.天津市電子工業協會:天津市電子工業協會,2019:
[4]柳丹,陳志剛,雷衛軍.基於UML描述的“4+1”視圖模型及應用[J].計算技術與自動化,2001
[5]周奕.圖書管理系統[J].數字技術與應用,2020

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章