基于UML的小型圖書管理系統的分析與設計_第1頁
基于UML的小型圖書管理系統的分析與設計_第2頁
基于UML的小型圖書管理系統的分析與設計_第3頁
基于UML的小型圖書管理系統的分析與設計_第4頁
基于UML的小型圖書管理系統的分析與設計_第5頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于UML的小型圖書管理系統的分析與設計吳培德 東華大學 工程碩士 控制工程 G11198摘要:以UML面向對象的建模技術為基礎,對圖書管理系統的典型業務流程進行了分析,采用UML用例圖對各個業務進行了描述,并給出了系統整體的用例框圖,系統的包圖,并對后續的軟件設計給出了簡單介紹。關鍵詞:圖書管理系統;UML;用例圖;Abstract: UML object-oriented modeling techniques, the typical business processes of the library management system analysis, UML use case di

2、agrams of various business and overall system block diagram, use case packageFigure, and follow-up of software design is given a brief introduction.Keywords: library management system; the UML; Use Case Diagram;1引言隨著微電子、計算機科學、信息技術的不斷進展,計算機應用已滲透到了社會生活的方方面面,給人們的工作、生活帶來了極大的便利。在信息管理領域,科學、高效、規范、簡約的計算機信息管

3、理已使人們從以往繁復砸碎的人工管理工作解放了出來。圖書管理工作中,涉及到眾多的信息管理,傳統的人工管理方式不僅費時費力,而且效果也不好。使用基于計算機的圖書管理系統來管理圖書館,有著很大的實際應用價值,目前已基本得到普及。本文試以UML面向對象的建模技術為基礎向讀者介紹簡單小型圖書管理系統的軟件建模過程。2系統需求分析2.1 UML簡介UML(Unified Modeling Language統一建模語言)是20世紀90年代中后期誕生并迅速成熟的一種面向對象的可視化建模語言,它整合了Booch、OMT等多種面向對象的分析設計技術,為用戶提供了一種穩定統一、可重用性好、表達能力強的分析方法。UM

4、L的目標是以面向對象圖的方式來描述任何類型的系統,可對任何具有靜態結構和動態行為的系統進行建模。UML用視圖構造系統模型,共定義了十種視圖來刻畫軟件模型,分別是用例圖、類圖、對象圖、包圖、狀態圖、序列圖、協作圖、活動圖、部署圖、構件圖,每個視圖代表系統不同側面,全部視圖共同構成系統的完整架構。視圖由相互關聯的模型圖來表示,這些圖抽象層次不同、所描述內容各有側重。圖與圖之間的關聯使系統成為一個有機整體。2.2 圖書管理系統功能分析 圖書管理系統涉及讀者信息管理、借閱信息管理、圖書信息管理等多方面的信息管理,系統的使用對象為圖書管理員和讀者。他們在使用系統時,各擁有不同的權限,以完成各自需要的工作

5、。下面對圖書管理系統中主要的業務流程進行簡要分析:在圖書管理系統中,圖書管理員要為每個讀者建立借閱賬戶,記錄讀者的個人信息和圖書借閱信息。讀者個人賬戶建立成功后,給讀者發借閱卡,可以通過圖書管理員借閱、歸還圖書,也可以通過相應的終端查詢個人的借閱信息,檢索圖書。讀者借閱圖書時,先輸入借閱證卡號、密碼,驗證借閱證的有效性及是否可續借,無效則向讀者提示原因,如“卡號不對”、“密碼不對”、“已借滿,不能再借”等;有效則顯示讀者的基本信息,例如讀者的個人資料、已經借閱的圖書信息等;讀者通過圖書管理員向系統提出借閱請求,管理員操作管理終端,登記讀者新借閱圖書的相關信息。相應地,讀者歸還圖書時,也需驗證借

6、閱卡號、密碼等信息,驗證借閱證的有效性,若不對,系統給出相關的提示;通過系統驗證后,顯示讀者基本信息及圖書借閱信息;讀者向圖書管理員遞交歸還的圖書,管理員驗證無誤后,刪除讀者該書的借閱信息;若讀者超期歸還,則先向管理員遞交圖書滯納費用,歸還圖書;另外,圖書館圖書資料變更,如新購進圖書或圖書被損毀不能再使用時,圖書管理員要相應的將圖書信息入庫或注銷;同理,若有新增讀者帳號或需要注銷讀者帳號的,圖書管理員應通過系統管理終端進行記錄。綜上所述,一個典型的圖書管理系統應包含圖書信息管理、借閱信息管理、讀者信息管理三部分數據管理,其中圖書管理員可實現如下操作:(1)增加、刪除圖書;(2)增加、刪除讀者;

7、(3)借出、歸還圖書記錄;(4)查詢讀者信息、圖書信息;普通讀者可以實現如下操作:(1)修改個人信息(如登陸密碼,或其他個人信息等)(2)查詢個人借閱信息和檢索圖書;如下圖1示,簡要的表達了上述圖書管理系統的基本功能。圖書管理系統圖書借閱管理讀者信息管理書籍信息管理借出超期丟失增加讀者刪除讀者新書入庫注銷圖書正常歸還圖1 圖書管理系統整體功能圖示3圖書管理系統重要用例的實現Use Case圖即用例圖,是從外部用戶的角度來描述系統功能的一種需求表達方式。一個系統常常包含了眾多的用例,每個用例表達了用戶對系統的一項需求或描述了人們使用系統某項功能的途徑。使用系統的不同功能,其操作的場景不同。而使用

8、相同的功能,其場景則相似。將同一用例的場景用文字描述出來就得到了系統用例描述。完整的描述用例,通常包括用例名稱、參與執行者、前置條件、事件流、后置條件等。若用UML圖形機制表達,便是系統的用例圖。通常,我們將二者相結合,能清晰的表達出系統的用例。下面將對圖書管理中常見的借書、還書、新增入庫書、注銷圖書、新增讀者、刪除讀者等典型的用例進行詳細描述,并給出用例圖。3.1借閱圖書用例3.1.1借閱圖書用例描述從圖書館借閱圖書,是圖書館提供的一項基本服務。在圖書館里系統的建模過程中,將這一行為抽象為一個用例。在不考慮軟件的具體實現細節基礎上,給出如下的用例描述。Use Case 名稱借書執行者讀者前置

9、條件讀者通過系統驗證后,成功登陸借閱系統事件流A輸入讀者的借閱證號; 若輸入不正確,則提示“您輸入的借閱證號碼有誤,請重新輸入!” 輸入正確,則提示“請您輸入您的密碼!”B輸入借閱證密碼; 若輸入不正確,則提示“您輸入的密碼有誤,請重新輸入!” 成功登陸系統后,顯示讀者已借閱圖書信息,提示超期未歸還的圖書;C輸入要借閱圖書的編號; 若讀者已借滿,提示“您已借滿,請先歸還部分圖書再來借,謝謝!” 若讀者可以正常借閱,提示“您確定要借閱這本書嗎?是,請點確定!”D. 讀者點擊“確定”,借閱證號增加一條借閱信息記錄; 讀者點擊“放棄”,回到步驟C.重新選擇圖書;E. 借閱完成,點擊“退出”,退出系統

10、。后置條件讀者成功借閱圖書,圖書管理系統保存借閱記錄并修改庫存圖書數量,讀者借出數量。3.1.2借閱圖書用例圖根據3.1.1的用例描述,畫出借閱圖書用例圖,見圖2。圖2 借閱圖書用例圖3.2歸還圖書用例3.2.1歸還圖書用例描述如同借閱圖書一樣,歸還圖書同樣是圖書館的一項業務,將其抽象為一個用例,并對此用例的外部實現過程進行描述。Use Case 名稱還書執行者讀者前置條件讀者通過系統驗證后,成功登陸借閱系統事件流A輸入讀者的借閱證號; 若輸入不正確,則提示“您輸入的借閱證號碼有誤,請重新輸入!” 輸入正確,則提示“請您輸入您的密碼!”B輸入借閱證密碼; 若輸入不正確,則提示“您輸入的密碼有誤

11、,請重新輸入!” 成功登陸系統后,顯示讀者已借閱圖書信息,提示超期未歸還的圖書;有超期未還的圖書,調用“計算超期罰款金額” 丟失圖書,調用“計算丟失罰款金額”C輸入要還的圖書編號; 若輸入錯誤,提示“您未借閱該圖書!” 若輸入正確,提示“您確定要歸還這本書嗎?”D讀者點擊“確定”,讀者借閱的圖書信息記錄消失; 讀者點擊“放棄”,返回到步驟C.E完成還書,點擊“退出”,退出系統;后置條件若讀者成功完成還書,在圖書管理系統中刪除借閱記錄,并修改圖書庫庫存圖書數量和讀者借出數量。3.2.2歸還圖書用例圖基于3.2.1的用例描述,畫出其用例圖,見圖3示。圖3 歸還圖書用例圖3.3新增入庫圖書用例3.3

12、.1新增入庫圖書用例描述圖書館里的圖書根據館藏需求進行更新是一項日常業務,因此在設計圖書管理系統時,也要為此設計用例。Use Case 名稱新增圖書入庫執行者管理員前置條件管理員成功登陸圖書管理系統的書籍信息管理子系統事件流A.點擊“新增”;B.登記圖書的信息,作者,出版社; C.給圖書進行編號,并記錄條形編碼信息;D.張貼“條形碼”;E.檢查圖書編號是否入庫;F.完成,退出系統。后置條件新增圖書入庫成功,圖書管理系統可以查詢到圖書信息。3.3.2新增入庫圖書用例圖基于3.3.1的用例描述,畫出用例圖,見圖4示。 圖4 新增入庫圖書用例圖3.4注銷庫存圖書用例3.4.1注銷庫存圖書用例描述當圖

13、書館里藏書,由于受到毀損或其他意外的破壞而無法再使用的情況下,需要對館藏圖書進行注銷。下面給出其用例描述。Use Case 名稱注銷庫存圖書執行者管理員前置條件管理員成功登陸圖書管理系統的書籍信息管理子系統事件流A.點擊“注銷圖書”B.查詢要注銷的圖書借閱信息; 若該書借閱出庫,則暫時不能注銷,提示“該書借閱中,不能注銷”; 若該書未被借閱,提示“確定要注銷此書嗎?”C.點擊“確定”注銷圖書; 若不能肯定是否該注銷,點擊“放棄”,返回上級界面;后置條件成功注銷圖書后,圖書管理系統中不能查詢到圖書信息。3.4.2注銷庫存圖書用例圖基于3.4.1的用例描述,畫出用例圖,見圖5示。圖5 圖書注銷用例

14、圖3.5 新增讀者用例3.5.1新增讀者用例描述讀者第一次來辦理圖書借閱業務,應當辦理圖書借閱卡,圖書管理員將其讀者信息登記入讀者數據庫,便于對讀者借閱信息進行統一管理,其用例描述如下。Use Case 名稱新增讀者執行者管理員前置條件管理員成功登陸圖書管理系統讀者信息管理子系統事件流A.點擊“創建讀者”;B.將讀者姓名,年齡,單位,聯系電話等基本信息記錄;C.將以上信息存入讀者信息庫,并發放借閱卡,卡上記錄讀者個人信息;D.創建完成,退出系統;后置條件成功創建讀者,讀者信息可以被管理員查詢到,讀者可以正常借閱圖書。3.5.2新增讀者用例圖基于3.5.1的用例描述,畫出其用例圖,見圖6示。 圖

15、6 增加讀者用例圖3.6 刪除讀者用例3.6.1刪除讀者用例描述當讀者由于工作地點變化或其他原因,無需再使用圖書館的圖書資料時,應當為其辦理注銷,即從讀者數據庫中刪除其信息。對此業務抽象出用例,并給出用例描述。Use Case 名稱刪除讀者執行者管理員前置條件管理員成功登陸圖書管理系統讀者信息管理子系統事件流A.查詢讀者的借閱信息記錄; 讀者有未歸還的圖書,提示“讀者有借閱圖書未還,暫時不能刪除”B.點擊“刪除讀者”; 提示“刪除讀者后,將不能借閱本館圖書,您確定嗎?”C.點擊“確定刪除”; 若不確定,點擊“放棄”,返回上層界面;D.注銷讀者的借閱卡;E.刪除完成,退出系統;后置條件成功刪除讀

16、者,讀者信息從數據庫中刪除,不能借閱圖書。3.6.2刪除讀者用例圖基于3.6.1的用力描述,畫出用例圖,見圖7示。 圖7 刪除讀者用例圖3.7整體用例框圖結合以上典型用例圖及用例圖之間的關系,畫出如下系統的整體框圖見圖8。圖書管理系統新增入庫圖書借書還書借閱情況查詢包含包含包含丟失罰款讀者管理借閱管理注銷圖書管理員超期罰款款擴展擴展讀者圖書信息查詢刪除讀者增加讀者圖書管理包含圖8 圖書管理系統的整體用例框圖4系統的設計在以外部用戶的角度對圖書管理系統進行了初步需求分析之后,得到了系統各個業務的用例圖,系統的頂層架構,初步得到了目標系統的模型。不難想象,一個大型的軟件系統,其具體的用例必然會眾多

17、而復雜,為了進一步簡化分析,依據具體用例之間的關系,對用例進行分類。經過分類之后,系統化為了各個更小的子系統。在UML中,采用包圖的語言機制來實現這種子系統的描述。圖9所示,即用包圖描述了本文所述的圖書館里系統的基本功能。 圖書管理系統查詢與借閱子系統借閱管理子系統信息管理子系統圖書檢索圖書新增/注銷借書還書讀者增加/刪除借閱情況查詢圖9“圖書管理系統”包圖接下來需要對各個子系統中的具體用例的實現進行更深層次的刻畫,即考慮到軟件的具體實現。一個系統用例,對外部用戶而言是系統為其提供的一項“服務”,而為了實現這個“服務”,則需要系統內部眾多對象之間相互合作來共同完成。如何精確刻畫這些幕后的軟件行

18、為,順序圖便是UML描述軟件行為圖的一種,它可以對對象之間消息傳遞的先后的動態交互過程進行精確描述。選擇本文所述目標系統的典型用例“借閱圖書”,畫出其順序圖,見圖10示。讀者借閱記錄圖書1:獲取讀者信息7:獲取圖書信息對話框2:顯示讀者信息8:顯示圖書信息4:顯示借閱記錄3:查找某個讀者借閱記錄5:判定某個讀者能否繼續借閱6:提示能否繼續借閱9:添加借閱記錄10:顯示借閱記錄圖10“借書”順序圖由以上順序圖,能較容易的理解“借書”的過程的背后的對象之間的協作關系。在從系統的角度描述了用例實現之后,需要進一步考慮系統的技術支撐方案,并將其與用例的實現相結合。在此基礎上,從人機交互的角度考慮,設計友好的用戶界面。至此,已基本完成了軟

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論