張日如
摘要:統(tǒng)一建模語言(UML) 是一種標準的建模語言,它具有很強大的功能性。該文以圖書管理為研究背景,運用UML設計出一套完整的圖書管理系統(tǒng),從而詳細地介紹UML的基本模型。較為詳細地研究了UML的技術,并對其相關知識作了充分的闡述。通過使用UML建立模型,很大程度上解決了客戶與軟件設計人員之間的交流障礙,使得開發(fā)過程進一步加快,開發(fā)質量得到進一步提高。
關鍵詞:UML;靜態(tài)建模;動態(tài)建模;面向對象
中圖分類號:TP311 文獻標識碼:A
文章編號:1009-3044(2019)10-0081-03
開放科學(資源服務)標識碼(OSID):
圖書館是為人們提供閱讀的地方,圖書館會不斷搜集圖書,通過整理后將這些文獻展示給人們,因此圖書館日常管理工作的數(shù)量非常大。實在科技高度發(fā)展的今天,傳統(tǒng)到圖書館所提供的服務要遠低于人們的需求。因此建立一款依托于互聯(lián)網技術,能夠讓讀者更快捷、更便利地對圖書進行搜索、借閱和歸還,并且能夠根據讀者的不同需求提供對應服務,因此必須盡快建立一套實現(xiàn)圖書信息資源的共享的圖書管理系統(tǒng)。
從根本上看,圖書館里系統(tǒng)的最終目的就是為了減少成本的投入,同時大大地提高了工作效率,還要兼具系統(tǒng)在運行過程中可靠性很高、安全性穩(wěn)定、存儲容量大等特點。此外還要保證系統(tǒng)能夠簡單上手、靈活操作、實用性強。傳統(tǒng)的基于過程的系統(tǒng)分析和設計技術采用將過程和數(shù)據分離的方法,效率低、可重用性低。利用UML建立模型來描述面向對象的分析和設計思想具有較高的穩(wěn)定性和可重用性,使得產品易于維護。本篇論文以圖書信息管理系統(tǒng)開發(fā)為例,較為詳細地介紹了UML的關鍵技術以及UML建模所使用到的一些圖,這些用例圖、活動圖等具有很好的代表性,同樣適用于其他系統(tǒng)的建模操作。
1 UML建模的機制
UML主要面向的是廣大使用者,通過不同的圖形符號來表示系統(tǒng)在實際操作中的類及對象等,具有更好的可視化效果啊。一般來看,標準的UML共提供了五大類九大種模型圖:包括靜態(tài)圖、用例圖、交互圖、行為圖和實現(xiàn)圖等。
一般來講,UML的標準建模過程有以下五個步驟:1)創(chuàng)建系統(tǒng)需求模型。即建立用例模型來表達系統(tǒng)功能需求,描述系統(tǒng)的功能。2)建立對象的實例模型,在實例中包含兩種模型,一種是靜態(tài),一種是動態(tài)。在靜態(tài)模型中,常使用包圖、類圖、對象圖等來描述靜態(tài)系統(tǒng)中的關系,例如對象與對象之間的關系,將這些關系逐一構建后就形成了系統(tǒng)整體的構架。而動態(tài)模型則選擇使用順序圖、活動圖、狀態(tài)圖、合作圖等來較為詳細的描述系統(tǒng)中的動態(tài)關系,如對象的狀態(tài)轉化和對象間的相互作用的關系。3)建立系統(tǒng)的實現(xiàn)模型結構,通過使用用來表述軟硬件協(xié)作關系的配置圖來對系統(tǒng)總體軟硬件結構及它們之間的通訊機制進行詳細的展示。4)對模型之間的一致性進行檢查。這個過程具有反復性,只有多次檢查才能確保所描述的系統(tǒng)的完整性。5)根據構件圖建立相對應的代碼框架。
2 運用UML對圖書信息管理系統(tǒng)進行建模
2.1 業(yè)務描述
在調查分析圖書管理系統(tǒng)的業(yè)務流程以及用戶的需求后,得出圖書管理系統(tǒng)的主要所需業(yè)務的處理流程及詳細需求如下所示:
采編人員需對各部門的圖書征訂表進行收集,再根據收集表對新書采購計劃進行匯編處理,最后,報批通過后進行圖書的采購工作。管理員需編寫采購到新書的書目,將其登記到書目表后將新書送到書庫中的對應書架。并且,管理員還需填寫信息表記錄下借還書信息,當讀者借書時需將讀者ID號以及所借圖書的ID等借書信息進行登記處理。而當讀者還書時,則需按讀的ID號查出該讀者的借閱信息,并選擇所還圖書的信息,進行還書登記。
讀者還有查書的需求,每個讀者的ID帳號里都會有其相關信息,因此讀者首先通ID的及密碼登陸到系統(tǒng)當中,通過查看歷史記錄買查找自己需要的相關信息。同時,讀者還可以利用帳號在系統(tǒng)里查找藏書信息,根據出版社、書名、編者、書籍序列號等信息查詢圖書館中是否有該藏書,若有則告訴讀者該藏書目前所在位置以及管內庫存數(shù),方便讀者進行借閱。
管理員需要負責處理讀者信息,如辦理、登記、注銷讀者信息等。并且可對圖書館運營情況如圖書信息、讀者信息、收費信息等進行統(tǒng)計整理,輸出庫存圖書統(tǒng)計信息,如圖書總量、分類信息、庫存總量等等,同樣對于所需的讀者詳細信息也可進行按需統(tǒng)計整理。
2.2 需求模型的建立
建立需求模型,需要從系統(tǒng)的功能需求入手來建立活動對象的用例模型。從對應的角色來看,用例模型的對立角色是使用者,基于使用者的角度建立一個描述系統(tǒng)功能的高級試圖模型。從使用者的需求出發(fā),利用盒圖的方式來可視化的表達出圖書管理系統(tǒng)所要開發(fā)的必要功能。這就需要對系統(tǒng)中的各個角色的功能邊界進行科學合理的劃分。
從圖1中可以看出,在整個系統(tǒng)當中主要有四個行為者,分別是圖書管理員、系統(tǒng)管理員、管理人員、讀者。在整個系統(tǒng)操作中,讀者能夠進行的操作是查詢用例,可以對圖書館中的書籍信息進行查詢;系統(tǒng)管理員可進行的操作是管理用例,是對整個系統(tǒng)的運作進行安全維護,屬于安全管理范圍;圖書管理員可進行圖書的借還管理用例;管理人員可進行的操作也是管理用例,但是管理范疇是與讀者和圖書館信息相關。通過劃分各個活動對象的詳細用例,可以使得系統(tǒng)的功能設計更加合理可靠。
2.3 對象模型的建立
在上文我們介紹過,在對象模型中分為兩大類,分別是靜態(tài)模型和動態(tài)模型,這兩個模型分別對應于圖書管理系統(tǒng)的靜態(tài)結構和動態(tài)結構。
2.3.1 靜態(tài)模型的建立
包圖、對象圖、類圖、展開圖、組件圖等主要在靜態(tài)模型中使用,這些圖以“高內聚、低耦合”的黃金原則來描述對象與對象間的靜態(tài)關系。在圖書館里系統(tǒng)中,可細化分為五個子系統(tǒng),具體是:讀者管理系統(tǒng)、借還書管理系統(tǒng)、圖書管理系統(tǒng)、查閱統(tǒng)計報表管理系統(tǒng)、安全管理系統(tǒng),可將這五個細化的系統(tǒng)當作整體的五個小包,最終合成圖書管理系統(tǒng)大的一個包。各個子系統(tǒng)的類及其相互在包內的關聯(lián)情況如圖所示,其中依賴的類用虛線箭頭指向。系統(tǒng)包圖如下圖2所示。
除了類之間的關聯(lián)可用類圖進行表示之外,類之間的依賴、聚合等也可使用類圖進行表述。要得到邏輯上相互關聯(lián)的類,需要分析用例圖,并將這些相互關聯(lián)的類封裝成包進行下一步的操作。圖3所表示的類圖為借還書子系統(tǒng)中的類圖。
圖書屬性:圖書編號、作者、書名、出版社、譯者、出版時間、圖書分類名、圖書分類號、內容簡介、單價、數(shù)量。圖書操作:入庫、修改、出庫。
借還記錄屬性:姓名、圖書證號、書名、圖書編號、借閱日期、應還日期、還書日期、預訂日期、續(xù)借統(tǒng)計。借還記錄操作:增加、刪除、修改、查詢、統(tǒng)計報表。
藏書臺賬屬性:書名、圖書編號、作者、譯者、出版時間、出版社、內容簡介、圖書分類號、在庫數(shù)量、單價、圖書封面圖片路徑。
類圖的使用幫助軟件開發(fā)人員在進行編碼之前就能知道系統(tǒng)的結構,保障了下一步設計的合理性。鑒于篇幅原因,文中只列舉了借還書子系統(tǒng)的類圖,其他子系統(tǒng)的設計也具有相似之處。
2.3.2 動態(tài)模型的建立
在建立好系統(tǒng)的靜態(tài)模型后,就需要進行動態(tài)模型的建設。在這部分中,主要進行的是交互圖和行為圖的建立。建立交互圖和行為圖的主要目的在于用于描述對象之間的行為和對象之間交互的過程。
圖4為“查詢庫存圖書信息”的順序圖。參與者從中可以非常詳細地看出各自的業(yè)務處理流程。其中包含了三層結構,分別為:用戶界面層、系統(tǒng)事務處理層、數(shù)據層。使用三層結構可使操作和數(shù)據進行分離,增加系統(tǒng)結構的清晰度。
狀態(tài)圖、活動圖組成了行為圖,它們主要描述對象的行為及其之間的交互。在進行對象之間轉化操作時,需要對對象狀態(tài)進行描述,這是需要狀態(tài)圖進行展示。而活動圖主要是用于描述為了滿足用例要求而進行的活動。狀態(tài)圖和活動圖的實質是一種用來描述業(yè)務工作流、動作、用戶執(zhí)行流的流程圖。
以讀者借還書業(yè)務為例:首先,業(yè)務開始于讀者提出借還書的需求,因此需要圖書管理員輸入讀者的借書證件ID和借還書的書號,來檢查該書是否處于可借還狀態(tài)和借書證件是否在可使用期限內。如在借書證有效則進行借書操作。而還書時,需檢查該圖書是否過期,或圖書是否損壞,如有過期或損壞情況發(fā)生,讀者則需繳納一筆賠償費用,讀者繳費完成后才能像正常還書流程一樣進行還書操作。如讀者在圖書借閱期間提出續(xù)借要求,則根據規(guī)定決定是否延長還書期限?;顒訄D書圖5所示。
2.4 系統(tǒng)實現(xiàn)模型的建立
配置圖的使用主要從來定義系統(tǒng)的軟硬件結構及他們之間的通訊機制,以表示軟硬件系統(tǒng)之間的合作關系。
構件圖主要是對程序代碼之間的邏輯結構進行描述,對軟件的各個結構之間的接口關系進行梳理,歸納。從本質上看,軟構件就是一個文件,它既可以是對邏輯類或實現(xiàn)類相關信息進行執(zhí)行構建,同時也可以是源代碼文件。當用戶在進行登錄通過驗證后,選擇“系統(tǒng)功能主界面程序”,就可以進行“借還書”選項,從而進入借還書功能板塊,從借書\還書\預訂等選項選擇進入后均可進入相對應的功能模塊進行進一步的操作。
2.5 數(shù)據庫模型的建立
MIS的實現(xiàn)必須要有數(shù)據庫的支持,因此在圖書管理系統(tǒng)中必須要有數(shù)據庫層,以提供數(shù)據的長久存儲功能。像SQLSERVER關系型數(shù)據庫,其初始的關系模式可以在從類圖中所描述的類的屬性得到,然后就可以利用關系規(guī)范化的相關理論來進行數(shù)據的規(guī)范化整理工作,從而設計出能夠滿足相關規(guī)范要求的關系模式及基本二維表,最后根據前期的準備,建立對應的物理數(shù)據庫來將數(shù)據存儲到物理介質中,以滿足數(shù)據的長久存儲要求。
3 結束語
通過本次對圖書管理系統(tǒng)的設計,可以看出采用UML來進行建模,系統(tǒng)的相關參與者的所需功能以及各自所要操作的流程多能很好地在UML的相關圖中得到很好的表述,這樣對于系統(tǒng)的開發(fā)人員來說,就能很好地做到對系統(tǒng)需求的把握以及在接下來的軟件設計工作中避免一些不必要的錯誤產生,增加各部門之間的交互能力,加快項目開發(fā)進度,使得項目的開發(fā)更加科學、有效。
參考文獻:
[1] 董屹.基于UML的圖書管理系統(tǒng)建模[J].電腦知識與技術,2017,13(29):273-274.
[2] 吳鋒珍.高校圖書管理系統(tǒng)的UML設計[J].石家莊鐵路職業(yè)技術學院學報,2016,15(4):91-95.
[3] 彭騰.基于UML的文獻管理系統(tǒng)建模研究[J].信息與電腦:理論版,2016(20):39-41.
[4] 尹斌.基于UML的圖書管理信息系統(tǒng)分析與設計[J].電子技術與軟件工程,2016(3):205.
[5] 李文娟.基于UML的圖書管理系統(tǒng)的分析與設計[J].工業(yè)儀表與自動化裝置,2016(1):57-61.
[6] 唐紅杰.基于UML的圖書管理系統(tǒng)分析與設計[J].軟件工程師,2014,17(11):37-38,32.
[7] 路鑫. 基于UML模型的軟件測試設計策略研究[D].北京:北京郵電大學,2014.
【通聯(lián)編輯:代影】