摘 要:圖書管理系統(tǒng)是信息化時代有效管理圖書的重要手段,根據(jù)不同的權(quán)限,讀者、管理員、系統(tǒng)管理員可以完成各自的操作。文中借助UML技術(shù)對圖書管理系統(tǒng)進行了面向?qū)ο蠓治雠c設(shè)計,在需求分析階段給出了系統(tǒng)用例圖,在類設(shè)計階段給出了系統(tǒng)類圖,在交互性設(shè)計階段給出了借書時序圖。
關(guān)鍵詞:圖書管理系統(tǒng);UML;分析;設(shè)計
中圖分類號:TP311.5 文獻標識碼:A
1 引言(Introduction)
隨著信息技術(shù)的飛速發(fā)展,電子化的管理方法逐步取代了傳統(tǒng)的手工管理方法,圖書的信息化管理系統(tǒng)成為提高圖書館工作效率,有效管理圖書的重要手段[1]。基于此,本文借助UML技術(shù),對圖書管理系統(tǒng)進行了分析和設(shè)計。
2 需求分析(Requirement analysis)
(1)分析系統(tǒng)參與者
遵循識別參與者的方法,可以分析出“圖書管理系統(tǒng)”中的參與者有:Administrator(系統(tǒng)管理員)、Librarian(圖書管理員)、Reader(讀者)[2]。
Administrator:通過使用系統(tǒng)進行用戶管理。
Librarian:通過使用系統(tǒng)進行讀者管理、圖書管理、借閱管理等。
Reader:通過使用系統(tǒng)進行讀者信息查詢、預訂圖書、取消預訂等。
(2)分析系統(tǒng)用例
針對分析出的系統(tǒng)主要參與者(系統(tǒng)管理員、圖書管理員、讀者),可以分析出“圖書管理系統(tǒng)”中主要用例包括:Manage User(用戶管理)、Manage Book(圖書管理)、Manage Reader(讀者管理)、Borrow-Lend(借閱管理)等[3],詳細說明如下。
Manage User:完成系統(tǒng)用戶的增加、刪除、修改、查詢等功能。
Manage Book:完成基本信息設(shè)置(圖書類型設(shè)置、借閱種類設(shè)置)和圖書信息管理(圖書信息設(shè)置、圖書信息查詢)功能。
Manage Reader:完成讀者辦證、讀者信息查詢、讀者證掛失功能。
Borrow-Lend:完成借書、還書、續(xù)借、超期罰款、圖書預訂、取消預訂、圖書掛失等功能。
用例圖是需求分析階段主要采用的UML圖示[4]。根據(jù)以上分析,借助Rational Rose工具繪制出“圖書管理系統(tǒng)”用例圖,如圖1所示。
圖1 系統(tǒng)用例圖
Fig.1 System use-case diagram
3 類設(shè)計(Design of class)
在“圖書管理系統(tǒng)”的用例圖中已經(jīng)知道,系統(tǒng)需要為每個讀者建立一個賬戶,并給讀者發(fā)放讀者證(讀者證可以提供讀者證號、讀者姓名),賬戶中存儲讀者的個人信息、借閱信息以及預訂信息等[5],持有讀者證的讀者可以借閱書刊、返還書刊、查詢書刊信息、預訂書刊并取消預訂。
在借閱書刊時,需要輸入所借閱的書刊名、書刊的ISBN號,然后輸入讀者的讀者證號和讀者姓名,完成后提交所填表格,系統(tǒng)驗證讀者是否有效。若讀者有效,借閱請求被接受,系統(tǒng)查詢讀者所借閱的書刊是否存在,若存在,則讀者可借出書刊,系統(tǒng)記錄借閱記錄;如果讀者所借書刊已被借出,讀者還可預訂該書刊。讀者如期還書后,系統(tǒng)清除借閱記錄,否則需繳納罰金。
同時,以上部分操作可能還需要系統(tǒng)管理員和圖書管理員進行參與。
結(jié)合以上分析,遵循前面敘述的識別類的方法,暫時可以識別出“圖書管理系統(tǒng)”中的類有:Admin、Administrator、Librarian、Reader、ReaderType、Book、BookType、Borrow、BorrowType、Store、Reserve、Fine,其詳細說明見表1,類之間的關(guān)系詳見圖2。
表1 “圖書管理系統(tǒng)”中的類
Tab.1 Classes of “book management system”
序號 類名稱 類說明
1 Admin 抽象出來的管理員
2 Administrator 進行系統(tǒng)管理的管理員
3 Librarian 進行讀者管理、圖書管理、借閱管理的圖書管理員
4 Reader 讀者基本信息
5 ReaderType 讀者類別信息
6 Book 圖書基本信息
7 BookType 圖書類別信息
8 Borrow 讀者借閱圖書信息
9 BorrowType 讀者借閱類型信息
10 Store 圖書在圖書館中的存放位置信息
11 Reserve 讀者預訂圖書信息
12 Fine 讀者罰款信息
圖2 實體類及其關(guān)系
Fig.2 Entity classes and relations
以上各個類默認情況下都屬于實體類,可以參照繪制實體類的方法繪制系統(tǒng)的邊界類和控制類。接下來依次添加Main、SystemManage、ReaderManage、BookManage、BorrowManage、FineManage等邊界類,如圖3所示。
圖3 邊界類及其關(guān)系
Fig.3 Boundary classes and relations
4 交互性設(shè)計(Interactive design)
以“借書”場景為例,使用Rational Rose工具實現(xiàn)“BorrowBook”時序圖如圖4所示。
圖4 “BorrowBook”時序圖
Fig.4 “BorrowBook”sequence diagramendprint
該時序圖中涉及到的對象說明如下:
(1)Librarian對象:Librarian類即圖書管理員類創(chuàng)建的一個對象。
(2)Reader對象:讀者對象。
(3)Book對象:圖書對象。
(4)ReaderType對象:讀者類型對象。
(5)BorrowManage對象:借閱管理對象。
該時序圖中涉及的消息說明如下:
(1)getReaderInfo消息:獲取讀者基本信息,如辦證日期、借閱數(shù)量、掛失標志,用處理圖書證過期、借閱數(shù)量已滿等問題
(2)getReaderType消息:獲取讀者類型信息。
(3)getBookFlag消息:獲取圖書借閱標志,用于判斷圖書是否可借閱。
(4)InputBorrowInfo消息:輸入借閱信息,如讀者編號、圖書編號、借還日期等。
(5)modifyBookFlag消息:修改圖書借閱標志。
(6)addBorrowBook消息:增加讀者已借閱圖書數(shù)量。
5 結(jié)論(Conclusion)
本文借助UML技術(shù)對圖書管理系統(tǒng)進行了需求分析、類設(shè)計和交互性設(shè)計。在需求分析階段,按照捕獲參與者、捕獲用例以及捕獲關(guān)系的步驟,完成用例圖;在類設(shè)計階段,按照捕獲實體類、捕獲邊界類、捕獲關(guān)系的步驟,完成類圖;在交互性設(shè)計階段,以圖書管理系統(tǒng)中的“借書”場景
為例,按照捕獲對象、捕獲消息的步驟,完成時序圖。進一步的工作就是在分析和設(shè)計的基礎(chǔ)上,搭建開發(fā)環(huán)境、使用編程語言進行代碼實現(xiàn),此處不再細述。
參考文獻(References)
[1] 杜洋.圖書館圖書管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技
大學,2013.
[2] 張廣泉,劉艷.基于UML的圖書管理系統(tǒng)提攜結(jié)構(gòu)模型及實
現(xiàn)[J].重慶師范大學學報(自然科學版),2005(2):1-4.
[3] 唐紅杰.UML基礎(chǔ)與Rose建模實訓教程[M].北京:清華大學
出版社,2011.
[4] Craig Larman.李洋,鄭,譯.UML和模式應用[M].北京:機械
工業(yè)出版社,2009.
[5] 李春雷,陳萍.基于.net平臺的圖書管理系統(tǒng)[J].職大學報,
20011(4):84-86.
作者簡介:
唐紅杰(1979-),女,碩士,講師.研究領(lǐng)域:網(wǎng)絡(luò)與通信,
Web技術(shù).endprint
該時序圖中涉及到的對象說明如下:
(1)Librarian對象:Librarian類即圖書管理員類創(chuàng)建的一個對象。
(2)Reader對象:讀者對象。
(3)Book對象:圖書對象。
(4)ReaderType對象:讀者類型對象。
(5)BorrowManage對象:借閱管理對象。
該時序圖中涉及的消息說明如下:
(1)getReaderInfo消息:獲取讀者基本信息,如辦證日期、借閱數(shù)量、掛失標志,用處理圖書證過期、借閱數(shù)量已滿等問題
(2)getReaderType消息:獲取讀者類型信息。
(3)getBookFlag消息:獲取圖書借閱標志,用于判斷圖書是否可借閱。
(4)InputBorrowInfo消息:輸入借閱信息,如讀者編號、圖書編號、借還日期等。
(5)modifyBookFlag消息:修改圖書借閱標志。
(6)addBorrowBook消息:增加讀者已借閱圖書數(shù)量。
5 結(jié)論(Conclusion)
本文借助UML技術(shù)對圖書管理系統(tǒng)進行了需求分析、類設(shè)計和交互性設(shè)計。在需求分析階段,按照捕獲參與者、捕獲用例以及捕獲關(guān)系的步驟,完成用例圖;在類設(shè)計階段,按照捕獲實體類、捕獲邊界類、捕獲關(guān)系的步驟,完成類圖;在交互性設(shè)計階段,以圖書管理系統(tǒng)中的“借書”場景
為例,按照捕獲對象、捕獲消息的步驟,完成時序圖。進一步的工作就是在分析和設(shè)計的基礎(chǔ)上,搭建開發(fā)環(huán)境、使用編程語言進行代碼實現(xiàn),此處不再細述。
參考文獻(References)
[1] 杜洋.圖書館圖書管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技
大學,2013.
[2] 張廣泉,劉艷.基于UML的圖書管理系統(tǒng)提攜結(jié)構(gòu)模型及實
現(xiàn)[J].重慶師范大學學報(自然科學版),2005(2):1-4.
[3] 唐紅杰.UML基礎(chǔ)與Rose建模實訓教程[M].北京:清華大學
出版社,2011.
[4] Craig Larman.李洋,鄭,譯.UML和模式應用[M].北京:機械
工業(yè)出版社,2009.
[5] 李春雷,陳萍.基于.net平臺的圖書管理系統(tǒng)[J].職大學報,
20011(4):84-86.
作者簡介:
唐紅杰(1979-),女,碩士,講師.研究領(lǐng)域:網(wǎng)絡(luò)與通信,
Web技術(shù).endprint
該時序圖中涉及到的對象說明如下:
(1)Librarian對象:Librarian類即圖書管理員類創(chuàng)建的一個對象。
(2)Reader對象:讀者對象。
(3)Book對象:圖書對象。
(4)ReaderType對象:讀者類型對象。
(5)BorrowManage對象:借閱管理對象。
該時序圖中涉及的消息說明如下:
(1)getReaderInfo消息:獲取讀者基本信息,如辦證日期、借閱數(shù)量、掛失標志,用處理圖書證過期、借閱數(shù)量已滿等問題
(2)getReaderType消息:獲取讀者類型信息。
(3)getBookFlag消息:獲取圖書借閱標志,用于判斷圖書是否可借閱。
(4)InputBorrowInfo消息:輸入借閱信息,如讀者編號、圖書編號、借還日期等。
(5)modifyBookFlag消息:修改圖書借閱標志。
(6)addBorrowBook消息:增加讀者已借閱圖書數(shù)量。
5 結(jié)論(Conclusion)
本文借助UML技術(shù)對圖書管理系統(tǒng)進行了需求分析、類設(shè)計和交互性設(shè)計。在需求分析階段,按照捕獲參與者、捕獲用例以及捕獲關(guān)系的步驟,完成用例圖;在類設(shè)計階段,按照捕獲實體類、捕獲邊界類、捕獲關(guān)系的步驟,完成類圖;在交互性設(shè)計階段,以圖書管理系統(tǒng)中的“借書”場景
為例,按照捕獲對象、捕獲消息的步驟,完成時序圖。進一步的工作就是在分析和設(shè)計的基礎(chǔ)上,搭建開發(fā)環(huán)境、使用編程語言進行代碼實現(xiàn),此處不再細述。
參考文獻(References)
[1] 杜洋.圖書館圖書管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技
大學,2013.
[2] 張廣泉,劉艷.基于UML的圖書管理系統(tǒng)提攜結(jié)構(gòu)模型及實
現(xiàn)[J].重慶師范大學學報(自然科學版),2005(2):1-4.
[3] 唐紅杰.UML基礎(chǔ)與Rose建模實訓教程[M].北京:清華大學
出版社,2011.
[4] Craig Larman.李洋,鄭,譯.UML和模式應用[M].北京:機械
工業(yè)出版社,2009.
[5] 李春雷,陳萍.基于.net平臺的圖書管理系統(tǒng)[J].職大學報,
20011(4):84-86.
作者簡介:
唐紅杰(1979-),女,碩士,講師.研究領(lǐng)域:網(wǎng)絡(luò)與通信,
Web技術(shù).endprint