舒玉坤,張國祥
(1.湖北師范學院 數(shù)學與統(tǒng)計學院,湖北 黃石 435002;2.湖北師范學院 物理與電子科學學院,湖北 黃石 435002)
UML在儲值卡收銀管理信息系統(tǒng)建模中的應用與研究
舒玉坤1,張國祥2
(1.湖北師范學院 數(shù)學與統(tǒng)計學院,湖北 黃石 435002;2.湖北師范學院 物理與電子科學學院,湖北 黃石 435002)
面向?qū)ο蟮奶攸c之一是抽象,通過提升抽象級別能夠構(gòu)造更強大、更復雜的系統(tǒng)。而采用UML建模能夠把復雜的系統(tǒng)用可視化的語言直觀地描述出來,使得用戶更易理解,后期更易維護。以儲值卡收銀管理信息系統(tǒng)的開發(fā)為背景,探討了UML在系統(tǒng)中的建模過程。實踐表明統(tǒng)一建模語言能極大地提高系統(tǒng)的開發(fā)效率和成功率。
UML;儲值卡;面向?qū)ο?;建?/p>
統(tǒng)一建模語言UML(Unified Modeling Language)融合了Booch、Jacobson和Rumbaugh的共同理念,是一種標準的、被軟件界廣泛認可的、基于面向?qū)ο蟮目梢暬慕UZ言。它定義了建立模型所需要的基本元素(如用例)和模型之間相互關(guān)系的規(guī)則,以及通過如何使用這些元素和規(guī)則繪制建模圖形來描述現(xiàn)實世界[1]。UML貫穿于系統(tǒng)開發(fā)的各個階段;UML核心視圖[2]包括用例圖、類圖、包圖、狀態(tài)圖、時序圖、協(xié)作圖、活動圖、組件圖以及部署圖,用戶可以根據(jù)系統(tǒng)的特點自由選擇視圖及模型[3];UML通過將文字變成圖形,使復雜的系統(tǒng)變得簡單直觀、易于理解,從而很容易發(fā)現(xiàn)被忽略了的問題,降低軟件開發(fā)的風險,提高軟件開發(fā)的質(zhì)量。UML對系統(tǒng)的建模分為需求建模、設計建模和實施建模[4]。需求建模是通過需求調(diào)研分析,從客戶的角度進行建模,其結(jié)果是得到系統(tǒng)用例圖。設計建模是在系統(tǒng)需求分析的基礎之上進行的靜態(tài)與動態(tài)建模,分別得到類圖、活動圖、協(xié)作圖等。實施建模是對系統(tǒng)的部署和配置建模,得到組件圖和部署圖。
隨著大數(shù)據(jù)時代的來臨,數(shù)據(jù)處理進入智能時代。儲值卡因便捷、成本低廉成為一種重要的支付工具,可廣泛應用于公共交通、超市、餐飲、文化娛樂、醫(yī)療衛(wèi)生等行業(yè)。儲值卡收銀管理信息系統(tǒng)主要涉及創(chuàng)建客戶、客戶信息管理、收存流水賬管理、操作員信息管理以及系統(tǒng)內(nèi)部的信息傳遞,儲值卡收銀管理信息系統(tǒng)要求各個模塊能準確及時地生成各種報表[5~7](如日報、月報)、客戶能方便地查詢各種明細以及能為管理人員采集企業(yè)運營信息、提供決策依據(jù),從而提高企業(yè)的信息化管理水平。
1.1需求建模
用例圖(use case diagram)由參與者和用例組成,是我們了解系統(tǒng)的首要關(guān)口,是系統(tǒng)模型的核心,直接驅(qū)動后續(xù)模型的建立[8]。用例是建模最佳的迭代點,通過反復迭代得出系統(tǒng)的理想模型。對系統(tǒng)進行需求建模首先是明確用戶的需求。
儲值卡收銀管理信息系統(tǒng)的需求目標是對顧客和商品信息進行管理、系統(tǒng)維護及管理、新建客戶處理以及付款處理。這些需求目標都是系統(tǒng)用例。儲值卡收銀管理信息系統(tǒng)涉及的角色都位于系統(tǒng)邊界之外,主要有客戶和操作員。通過角色分析和需求分析后,抽象出儲值卡收銀管理信息系統(tǒng)的用例模型(如圖1)。
圖1 系統(tǒng)用例圖
2.2設計建模
1)靜態(tài)建模
類圖(class diagram)用于描述系統(tǒng)中的類及其相互之間的各種靜態(tài)結(jié)構(gòu)關(guān)系,它是現(xiàn)實世界抽象對象的結(jié)構(gòu)化、概念化、邏輯化描述。類圖包括三個部分:類名稱、屬性和操作。類與類之間的關(guān)系有關(guān)聯(lián)關(guān)系、依賴關(guān)系、擴展關(guān)系、實現(xiàn)關(guān)系、泛化關(guān)系和聚合關(guān)系等。
儲值卡收銀管理信息系統(tǒng)的部分簡化實體類圖如圖2所示。圖中有7個類,分別是收存流水賬、客戶明細、儲值卡存款、操作員信息、日報統(tǒng)計和月報統(tǒng)計。它們主要有關(guān)聯(lián)關(guān)系、依賴關(guān)系和聚合關(guān)系。圖中虛箭線表示依賴關(guān)系,日報統(tǒng)計、月報統(tǒng)計均來自收存流水賬;實線表示關(guān)聯(lián)關(guān)系,如收存流水賬必須來自相應的操作員收取,它必須與操作員信息類相關(guān)聯(lián);帶空心小菱形箭頭的實箭線表示聚合關(guān)系,月報統(tǒng)計類均來自日報統(tǒng)計類,而即使沒有月報統(tǒng)計類,日報統(tǒng)計類依然存在。關(guān)聯(lián)中的個數(shù)表示實體間的關(guān)系[9]。如1個客戶的儲值卡只審核1次,卻有多次(包括零個)存款操作。同樣,1個客戶可以有多筆流水賬。
2)動態(tài)建模
動態(tài)模型描述系統(tǒng)的動態(tài)行為,需特指一個靜態(tài)模型,這樣系統(tǒng)才算完整。動態(tài)模型有狀態(tài)圖(statechart diagram)、活動圖(activity diagram)、時序圖(sequence diagram)和協(xié)作圖(collaboration diagram)。本文采用活動圖和協(xié)作圖來表達動態(tài)模型。
活動圖描述實現(xiàn)某一目標需要執(zhí)行的活動序列,它是一種從一個活動到另一個活動的流程圖[10]。用例是參與者的一個目標,而活動圖通過描述如何達到這個目標從而發(fā)現(xiàn)關(guān)鍵對象?;顒訄D的核心元素有:
圖2 簡化實體類圖
①活動圖的起始范圍。一個活動只有一個起始點但可以有一個或多個結(jié)束點。它可以對一個用例或多個用例進行建模。起始點用黑圓點表示,結(jié)束點用黑圓點外加圓圈表示。圖3是對儲值卡存款和支出進行流程建模,從登錄系統(tǒng)開始到更新儲值卡信息結(jié)束。
②活動。活動是處理流程中的執(zhí)行單元,包括啟動活動、執(zhí)行活動、接收事件以及退出活動時要執(zhí)行的動作?;顒佑脵E圓帶文字表示。圖3中登錄系統(tǒng)就是一個活動。
③同步。同步由起始同步和匯合同步組成,分別表示開始執(zhí)行多個支流和多個支流同時匯合。同步用黑粗線表示。
④判斷。當滿足某一條件時轉(zhuǎn)向執(zhí)行不同的活動流程,起到?jīng)Q策作用。判斷用菱形帶文字表示。
⑤基本流?;玖魇悄J的、使用最頻繁的流程分支?;玖饔眉^表示。
圖3 儲值卡支存活動圖
協(xié)作圖側(cè)重于描述對象之間的連接和交互,以及對象的職責和接口,通過顯示對象之間如何互發(fā)消息來描述用例實現(xiàn)從而展示對象之間的關(guān)系結(jié)構(gòu)。協(xié)作圖中的主要UML元素有:
①對象。對象特指參與協(xié)作的對象,可以是它的類。該協(xié)作圖涉及7個對象,分別是顧客、計算機、商品、購物單、儲值卡、收存明細、客戶明細(如圖4)。
②對象關(guān)聯(lián)。對象關(guān)聯(lián)用直線連接兩個對象,是臨時關(guān)聯(lián)。交互結(jié)束關(guān)聯(lián)即消失。
③消息。消息由消息序號和消息內(nèi)容構(gòu)成,從一個對象指向另一個對象。消息序號表示通信順序,由UML畫圖軟件自動維護,不能手動更改。
2.3實施建模
部署模型又稱實施模型,它包括軟件和硬件兩部分,其作用是定義組成系統(tǒng)的各個部件的物理結(jié)構(gòu),包括客戶機、服務器以及其他硬件設備的安裝和位置部署。通過部署模型,可以清晰直觀地了解哪些軟件部署到哪些硬件設備上來。儲值卡收銀管理信息系統(tǒng)采用Client/Server/DataBase構(gòu)架,其部署模型如圖5所示。圖中客戶端與應用服務器之間采取TCP/IP協(xié)議進行通信。
圖4 購物模型協(xié)作圖
圖5 系統(tǒng)部署圖
通過面向?qū)ο蟮姆治?,采用UML對儲值卡收銀管理信息系統(tǒng)進行需求建模、靜態(tài)建模、動態(tài)建模和實施建模,把不同的UML圖應用于系統(tǒng)開發(fā)的不同階段,從不同卻相互聯(lián)系的角度對系統(tǒng)進行建模,使系統(tǒng)模型更加清晰直觀,從而幫助開發(fā)人員提高系統(tǒng)開發(fā)的效率。
[1]譚云杰.大象Thinking in UML[M].北京:中國水利出版社,2009.
[2]楊弘平,呂海華,李 波,等. UML基礎、建模與設計實戰(zhàn)[M].北京:清華大學出版社,2012.
[3]PAUL R REED JR.使用Visual Basic和UML開發(fā)應用程序[M].李 博,崔慧敏,譯.北京:清華大學出版社,2002.
[4]蔡 敏,徐慧慧,黃炳強. UML基礎與Rose建模教程[M].北京:人民郵電出版社,2006.
[5]張國祥.基于ADO的信用卡收銀系統(tǒng)的研究與實現(xiàn)[J].武漢理工大學學報(信息與管理工程版),2007,29(2):62~65.
[6]張國祥,舒玉坤.IC卡收銀管理信息系統(tǒng)安全性的應用與研究[J]. 湖北師范學院學報(自然科學版),2008,28 (4):1~4.
[7]張國祥.Delphi ADOX在收銀系統(tǒng)中的研究與應用 [J].微計算機信息(管控一體化) 2008,24(09):263~265.
[8]朱程.基于UML的圖書管理系統(tǒng)的建模過程[J].計算機與現(xiàn)代化,2011,10:48~50.
[9]張李義,孟慶玲,段 凌.電子商務系統(tǒng)的UML模型[J].武漢理工大學學報(信息與管理工程版),2004,26(4):94~96.
[10]張玲紅,戎玫,張廣泉.UML在運輸業(yè)務管理系統(tǒng)建模中的應用[J].計算機工程與應用,2004,14:207~209.
TheapplicationandresearchoftheUMLmodelinginthestoragecardcashmanagementinformationsystem
SHU Yu-kun1, ZHANG Guo-xiang2
(1.College of Mathematics and Statistics, Hubei Normal University, Huangshi 435002,China;2. College of Physics and Electronic Science, Hubei Normal University,Huangshi 435002, China)
One of the features of Object-oriented is abstract, by raising the abstraction level to build the much more powerful and much more complex system. While the use of UML modeling can describe the complex system with visual graph, so that the user is easier to understand and the system can easier to maintain in the later period. In this paper, the whole modeling process of the UML is discussed in the Storage Card Cash Management Information System based on software application systems.Practice shows that the success rate and development efficiency of the system have risen maximumly with the Unified Modeling Language.
UML; storage card; object-oriented;modeling
2012—12—13
儲值卡收銀管理信息系統(tǒng)(網(wǎng)絡版)的研究與開發(fā)(湖北省教育廳項目:CXY2009B033).
舒玉坤(1984— ),女,湖南懷化人,碩士研究生,主要從事微電子與信息技術(shù)安全研究.
TP312
A
1009-2714(2014)02- 0010- 05
10.3969/j.issn.1009-2714.2014.02.003