UML(Unified Modeling Language,統一建模語言)作為對軟件密集系統進行可視化建模的一種語言,是一個統一的、公共的、具有廣泛適用性的建模語言。
pos機(point of sales,銷售點終端)系統是指通過如收銀機等自動讀取設備在商品銷售時直接讀取商品的商品名、價格等銷售信息,并通過計算機系統和通信網絡傳輸至有關部門進行處理分析以提高經營效率的系統。商場、超級市場、零售店等購物消費場所通常會使用到這種系統。POS機系統要求有一定的容錯性,若遠程服務暫時中斷,系統必須仍然能夠獲取銷售信息,如現金的處理和支付。隨著電子商務的飛速發展,POS機在商業自動化中發揮著越來越大的作用。近年來,在IT技術支持下,POS機獲得了迅速的發展。
1 UML建模工具
目前有許多支持UML的工具,比如Rational Rose、Microsoft Visio、Power Designer等。Rational Rose是一個具有能滿足所有建模環境需求的能力和很大程度的靈活性的一套解決方案。本文的POS機系統的UML建模工具為Rational Rose。在完成系統建模后,在編碼階段,還可以利用Rational Rose工具根據系統模型生成代碼程序框架。
2 pos機系統建模
UML為建立系統提供了一整套建模機制,使用用例圖、順序圖、通信圖、活動圖和狀態圖等從不同的角度、不同抽象級別為系統建立模型。
2.1 用例模型
2.1.1 需求分析說明
盡管顧客自助的POS機系統的應用范圍越來廣泛,但是本文考慮的是由收銀員使用的傳統收銀環境。POS機通過網絡連接數據庫服務器,獲取、更新數據。收銀員能夠處理商品的銷售和退貨,以及入款出款等。銷售活動系統是一個遠程應用,該應用將從每個POS機節點處頻繁地請求性能數據,用于分析銷售數據。系統管理員則能夠對POS機的用戶以及安全進行管理。
2.1.2 用例圖
用例圖呈現了一些參與者和一些用例,以及它們之間的關系,是從軟件需求分析到最終實現的第一步。它主要描述系統功能,也就是從外部用戶的角度觀察,系統應該先完成哪些功能,有利于開發者以一種可視化的方式理解系統的功能需求,同時也可作為開發者與用戶之間針對系統需求進行溝通的有效手段。根據需求分析得到系統頂層用例圖。
頂層相關角色和用例活動,概括為系統及其參與者的行為。可以確定系統的六個參與者為收銀員、銷售活動系統、系統管理員、支付授權服務系統、財務系統、人力資源系統。同時也可以確定六個系統的用例,分別為:處理銷售、處理退貨、收款、分析銷售和績效數據、管理安全、管理POS用戶。
2.2 靜態模型
系統的靜態結構構成了系統的概念基礎,而類圖顯示了系統的靜態結構。在類圖中,不僅定義了類之間的關系,如關聯、依賴和聚合等,還定義了類的內部結構,如屬性和操作。主要類的實現按照耦合度從低到高的順序。依次是Payment類、CommodityInformation類、Commodity Calatog類、Salelineitem類、Sale類、Register類、Supermarket類。
2.3 動態模型
系統的動態模型可改進系統的靜態結構。為了讓對象協作完成系統功能,各個類必須定義自己合適的方法。這些方法使對象實體能夠通過消息進行交互。為了確定并發對象是如何交互以及是如何影響對象的狀態,接下來為POS系統建立動態結構模型。
系統的動態模型主要是建立交互視圖和行為視圖。其中交互視圖包括順序圖和通信圖,行為視圖包括活動圖和狀態圖。
2.3.1 POS系統的順序圖
順序圖的目的在于描述系統中各個對象按照時間順序的交互過程,是對象之間傳送消息的時間順序的可視化表示。順序圖從一定程度上更加詳細地描述了用例表達的需求,能夠對系統進行更進一步的精細表達,其以網格格式描述對象交互。收銀員輸入顧客需要購買的商品 ID和數量時,要請求POS系統記錄對該商品的銷售,也就是需要特定的系統操作來處理intputitem事件。
2.3.2 POS系統的活動圖
活動圖可用來描述動作和動作導致對象狀態發生改變的結果,而不用考慮系統引發狀態改變的事件,常用于為計算流程和工作流程建模。例如系統管理員管理用戶。系統管理員在登錄驗證成功后,可以選擇查詢、新增POS用戶。查詢成功后可修改用戶信息和刪除用戶,更改后保存信息,這時系統將修改后的信息保存到數據庫,而后系統管理員退出。
2.4 實現模型
完成以上的邏輯設計之后,需要進一步描述系統的物理實現和物理運行情況。
構件圖是用來表示系統中構件與構件之間、類或接口與構件之間的關系圖,配置圖則定義系統中軟硬件的物理體系結構。其中配置圖可以顯示實際的計算機和設備(用節點表示)以及它們之間的連接關系,也可顯示連接的類型及部件之間的依賴性。其中包含了銷售終端機(POS前臺終端)、服務器、數據庫服務器和打印機等節點。銷售終端機通過TCP/IP方式連接,服務器和數據庫服務器通過JDBC方式連接。
3 結束語
UML能有效的增強對模型建模價值的普遍認識,由于UML中的構件和概念之間沒有劃分明顯的界限,所以選用視圖來劃分這些概念和構件。在每一種視圖中建模者可使用一種或兩種特定的圖來可視化的表示各種概念。本文以POS機系統為例,通過用例模型、靜態模型、動態模型及實現模型搭建系統框架,描繪了系統的大致輪廓,同時也展示了UML開發POS機系統的方法和步驟。當然模型還需進一步精化,相關的細節還可以進一步探討。