陸麗婷 (無錫城市職業(yè)技術學院電子信息工程系,江蘇 無錫214153)
隨著網(wǎng)絡的不斷發(fā)展,網(wǎng)絡購物已經(jīng)日漸成為消費者的一種生活習慣,網(wǎng)上購物商店也就是在網(wǎng)絡上建立一個虛擬的購物商店,結合網(wǎng)絡技術和傳統(tǒng)實體商店的優(yōu)點,減少流通環(huán)節(jié),降低交易成本,打破時空和地域的限制,使用UML對網(wǎng)上購物商店進行建模分析,將不斷變換的需求映射到模型中,能大大提高系統(tǒng)的擴展性和開發(fā)效率。
統(tǒng)一建模語言 (Unified Modeling Language,UML)是一種在面向?qū)ο蠼7椒ǖ幕A上發(fā)展的通用可視化建模語言,被廣泛地運用于各種不同的領域,借助于UML可以幫助軟件工程開發(fā)人員更好的理解業(yè)務流程,建立更可靠、更完善的系統(tǒng)模型,從而方便對各種軟件工程進行正確的描述和交流[1]。UML用來描述系統(tǒng)的靜態(tài)結構和動態(tài)行為,靜態(tài)結構描述了系統(tǒng)中主要對象的屬性和方法,以及這些對象之間的相互關系。動態(tài)行為描述了系統(tǒng)中重要對象的時間特性和對象間為完成某個目標而相互進行通信的機制[2-3]。
根據(jù)網(wǎng)上購物商店的日常經(jīng)營和管理,該系統(tǒng)的用戶主要分為3種:一種是網(wǎng)上商店的普通用戶,一種是網(wǎng)上商店的注冊會員用戶,還有一種是網(wǎng)上商店的管理員。三者的身份不同,權限不同,所以,具體的功能需求也不同。對于普通用戶來說,可以瀏覽網(wǎng)上商店的各種內(nèi)容,搜索商品信息并且可以申請成為注冊會員。對于注冊會員來說,除了具備普通用戶的所有功能,還擁有以下功能:①在登錄頁面中輸入注冊的用戶帳號和密碼,通過身份驗證進入到網(wǎng)上商店;②可以瀏覽網(wǎng)上商店中的各種商品的詳細信息和內(nèi)容;③可以對選擇的商品進行購買,同時可以修改購買的數(shù)量,也可以進行清除購買的操作;④當提交購買信息后,用戶能夠查看購買的信息情況;⑤能夠?qū)W(wǎng)上商店中的所有商品進行快速查詢;⑥能夠?qū)ψ约旱臅T信息進行修改和注銷。對于網(wǎng)站管理員而言,也分為系統(tǒng)管理員和普通管理員2類,他們的權限和功能也各不相同。系統(tǒng)管理員主要負責系統(tǒng)的數(shù)據(jù)管理和維護工作,以及對整個系統(tǒng)的普通管理員資料信息和權限進行管理。對普通管理員而言,他的功能范圍包括:①對會員資料信息進行管理,可查看用戶的基本信息和刪除該用戶的信息;②對商品信息進行管理,包括對商品的添加、修改、刪除和查詢操作;③對商品訂單信息進行管理,包括查看訂單和修改當前訂單的狀態(tài)。圖1是網(wǎng)上購物商店總體結構圖。
類圖用于對系統(tǒng)中的各種概念進行建模,描述了系統(tǒng)的靜態(tài)結構,而系統(tǒng)的靜態(tài)結構構成了系統(tǒng)的概念基礎,在UML中,類定義了一組具有狀態(tài)和行為的對象,它被表述成為具有相同結構、行為和關系的一組對象的描述符號,所用的屬性與操作都被定義在類中。
網(wǎng)上購物商店中至少有5個實體類:顧客類、訂單類、商品類、記錄類、管理員類。一個顧客可以處理多個訂單,一個管理員也可以處理多個訂單,一個訂單中包括了多個商品,一條歷史記錄中也包括了多個商品,一個顧客只能對應一條歷史記錄,如圖2所示。
圖1 網(wǎng)上購物商店總體結構圖
圖2 各類之間的關系
用例圖對于軟件開發(fā)具有重要意義,在軟件開發(fā)時,無論采用面向?qū)ο蠓椒ㄟ€是傳統(tǒng)方法,首先要做到的就是了解需求,即用戶的業(yè)務需要,在UML中,用例模型是由用例圖描述的,用例圖是由參與者、用例以及它們之間的關系構成的用于描述系統(tǒng)功能的動態(tài)視圖,主要作用是描述參與者和用例之間的關系。圖3僅給出顧客用例圖的創(chuàng)建過程,顧客可以通過本系統(tǒng)進行如下活動:①可以進行個人信息維護;②可以進行商品查詢;③可以進行訂購;④可以進行訂單維護,在進行訂單維護時必然會進行訂單狀態(tài)查詢,同時可以增加和刪除訂單,但增加和刪除不是每次維護訂單時都會發(fā)生的。
圖3 系統(tǒng)用戶用例圖
在描述對象之間的交互時,常會用到順序圖和協(xié)作圖,順序圖描述了系統(tǒng)中對象間通過消息進行的交互,強調(diào)了消息在時間軸上的先后順序。順序圖采用二維的布局結構,其中縱軸表示時間軸,橫軸表示各個獨立的對象,當對象存在時 ,生命線用一條虛線表示。
圖4是顧客在該系統(tǒng)訂購商品時交互的過程:①顧客在登錄界面輸入帳號和密碼登錄系統(tǒng),登錄模塊會把顧客的帳號保存在系統(tǒng)緩存中并提交給商品查詢模塊;②商品查詢模塊提示顧客輸入查詢條件,顧客按查詢要求輸入查詢條件,商品查詢模塊就會顯示符合查詢條件的商品列表;③顧客看到商品列表后,選擇自己想要的商品的編號提交,這時定購模塊中保存了顧客提交的商品編號;④定購模塊向數(shù)據(jù)模塊成功提交訂單并顯示定購成功。
圖4 顧客訂購順序圖
活動圖是描述系統(tǒng)或業(yè)務的一系列活動構成的控制流,描述了系統(tǒng)從一種活動轉換到另一種活動的整個過程。活動圖中使用泳道來表示各個活動的執(zhí)行者,通過泳道可以很清楚地知道每個不同的活動分別由誰負責的,通過不同泳道中活動的交叉連接,可以知道誰要和誰進行交互。
圖5是顧客購買商品的活動圖,過程描述如下:①顧客登錄系統(tǒng)后進行商品查詢;②顧客成功購買商品后提交訂單,然后顧客就等待管理員處理訂單,此時顧客能做的就只有對訂單的狀態(tài)進行查詢;③管理員收到顧客提交的訂單后進行處理,如果該商品有貨就接收訂單并發(fā)貨,如果該商品缺貨就拒絕訂單,處理完訂單后更新訂單狀態(tài);④顧客在查詢訂單狀態(tài)中若查詢到訂單已處理,則整個購買商品的活動結束,若查詢到訂單未處理,則繼續(xù)等待管理員處理訂單。
圖5 顧客購買商品活動圖
系統(tǒng)的部署圖描繪的是系統(tǒng)節(jié)點上運行資源的安排。在網(wǎng)上購物商店系統(tǒng)中,系統(tǒng)包括4種節(jié)點:數(shù)據(jù)庫節(jié)點 (負責數(shù)據(jù)存儲和處理),后臺系統(tǒng)維護節(jié)點 (管理員通過該節(jié)點進行后臺維護,執(zhí)行系統(tǒng)管理員允許的所有操作),Web服務器節(jié)點 (與數(shù)據(jù)庫服務器進行交互,進行數(shù)據(jù)的訪問),Web瀏覽器節(jié)點,即客戶端節(jié)點,用戶在瀏覽器上進行各種操作,如圖6所示。
圖6 網(wǎng)上購物商店的部署圖
UML是當今較為流行的建模語言,在對網(wǎng)上購物商店的分析和設計中,分別通過靜態(tài)模型和動態(tài)模型對系統(tǒng)各方面進行了建模分析,通過建模更清楚地展現(xiàn)了系統(tǒng)開發(fā)過程的各個階段,這對于系統(tǒng)的開發(fā)來講具有積極的意義。
[1]李廷全,丁晨路,周超 .基于UML的醫(yī)院信息系統(tǒng)建模 [J].電腦知識與技術:學術交流,2010(1):122-123.
[2]方玉華 .基于UML的教務管理系統(tǒng)分析與設計 [J].計算機時代,2010(5):51-53.
[3]王先國.UML統(tǒng)一建模實用教程 [M].北京:清華大學出版社,2009.