摘 要: 利用Rational Rose工具創(chuàng)建UML模型,,以城市污水處理過程為建模對象,從軟件開發(fā)的整體高度,再現(xiàn)污水處理過程的框架及其步驟,,為此,,進行了用例圖、活動圖和時序圖的建模分析設(shè)計,,用于輔助研發(fā)污水處理仿真軟件,。同時介紹了UML在實際軟件開發(fā)流程中的應(yīng)用,最后完成了污水處理仿真軟件的框架設(shè)計和開發(fā),。
關(guān)鍵詞: 統(tǒng)一建模語言; 城市污水處理; Rational Rose
隨著水資源的日益短缺和對環(huán)境污染的日益重視,,污水處理越來越受到人們的關(guān)注,。與其他工業(yè)處理系統(tǒng)相比,,污水處理系統(tǒng)的整個處理過程由許多單元組成,在不同的單元有可能發(fā)生不同的反應(yīng),,如化學,、物理和生物反應(yīng),因此在研究污水處理過程中需要面向單元對象分析,,而不能單純進行系統(tǒng)的整體建模分析,,同時提供優(yōu)良的低端通用型語言支持、高效的數(shù)值程序以及優(yōu)化工具也是仿真軟件開發(fā)中的重要方向,?;赨ML的建模更能全面、準確地反映污水處理中的工藝細節(jié)和系統(tǒng)的對象(類)及其之間的交互,,充分捕獲用戶的實際需求,。
1 統(tǒng)一建模語言(UML)及相關(guān)技術(shù)介紹
面向?qū)ο蟮姆治雠c設(shè)計(OOA&D)方法的發(fā)展在20世紀80年代末至90年代末出現(xiàn)了一個高潮,UML是這個高潮的產(chǎn)物,。它不僅統(tǒng)一了Booch,、Rumbaugh和Jacobson的表示方法,而且對其有進一步的發(fā)展,,最終統(tǒng)一為大眾所接受的標準建模語言,。它的主要作用是幫助用戶對軟件系統(tǒng)進行面向?qū)ο蟮拿枋龊徒#梢悦枋稣麄€軟件開發(fā)過程從需求分析直到實現(xiàn)和測試的全過程,。UML于1997被國際對象管理組織OMG(Object Management Group)所接受,,發(fā)布了UML的標準版。如今,,UML已成為公認的最好的分析和設(shè)計面向?qū)ο筌浖臉藴式UZ言[1],,而不是建模方法。它不包含任何具體的過程,,即它并不講述如何運用面向?qū)ο蟮母拍钆c原則去進行系統(tǒng)建模[2],,而只是定義了用于建模的各種元素,以及由這些元素所構(gòu)成的各種圖的構(gòu)成規(guī)則。這使得UML作為一種建模工具,在面向?qū)ο箢I(lǐng)域有著廣泛的用途,,特別是針對城市污水處理這樣一個復(fù)雜系統(tǒng),。Rational Rose 是Rational公司推出的一款支持UML可視化建模的工具軟件,它包括了用例,、邏輯,、組件和部署視圖,支持面向?qū)ο蠓治龊驮O(shè)計,,在不同的視圖中建立相應(yīng)的UML圖形,,反應(yīng)系統(tǒng)的不同特征。
從UML建模應(yīng)用的角度看[3],,一個最大的特點就是在設(shè)計一個系統(tǒng)時采用面向?qū)ο蠹夹g(shù),,一般需要經(jīng)過以下三個步驟:
(1)功能需求的描述;
(2)根據(jù)功能需求建立系統(tǒng)的靜態(tài)模型,;
(3)在靜態(tài)視圖的基礎(chǔ)上,,分析和設(shè)計系統(tǒng)的動態(tài)行為。
總的來說,,UML是一種定義良好,、易于表達、功能強大且普遍適用的建模語言,。它融入了軟件工程領(lǐng)域的新思想,、新方法和新技術(shù),而且它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計,,還支持從需求分析開始的軟件開發(fā)的全過程[4],。
2 城市污水處理仿真軟件的建模仿真
2.1 用例建模
用例圖(Use Case Diagrams)是由軟件需求到最終實現(xiàn)的第一步,在UML中用例圖用于對系統(tǒng),、子系統(tǒng)或類的行為的可視化,,以便系統(tǒng)的用戶更容易理解這些元素的用途,也便于軟件開發(fā)人員最終實現(xiàn)這些元素,。在UML建模過程中,,可以使用用例圖對系統(tǒng)的語境進行建模,強調(diào)系統(tǒng)外部的參與者,。
UML中的用例描述了一組用例,、參與者以及它們之間的關(guān)系,因此用例圖包括三方面內(nèi)容:用例(Use Case);參與者(Actor);參與者之間的關(guān)系,,包括泛化關(guān)系,、包含關(guān)系、擴展關(guān)系等,。
(1)定義系統(tǒng)目標與角色:通過對污水仿真系統(tǒng)功能的分析,,本系統(tǒng)的開發(fā)目標是提供一個運行穩(wěn)定、仿真準確、功能完備的被控對象,,主要使用者是驗證控制方案的學生,,因此學生是本仿真系統(tǒng)的主要角色;
(2)分析角色與系統(tǒng)的交互,,確定系統(tǒng)用例:一個良好的被控對象,,仿真結(jié)果的準確性是最起碼的要求,同時要求能夠靈活設(shè)置參數(shù),,高效地進行過程控制,,實時數(shù)據(jù)的趨勢顯示,仿真結(jié)果的數(shù)據(jù)存取,。據(jù)此,,污水處理系統(tǒng)的主要用例有7個,分別是:參數(shù)設(shè)置,、歷史趨勢顯示,、數(shù)據(jù)存取、3D通訊,、處理工程控制、重置冷態(tài)和轉(zhuǎn)PLC外部控制,。PLC外部控制是其下一步擴展功能,,其主要職責是處理下位機的信號數(shù)據(jù),用戶還可以通過擴展的3D通訊接口實現(xiàn)逼真的現(xiàn)實模擬,。
圖1描述了污水仿真軟件總用例,,其中描述的用例實際上就是污水仿真系統(tǒng)中的一個子系統(tǒng)功能,在實際的功能需求分析與設(shè)計中,,用例粒度的大小根據(jù)實際的功能需求來界定,。
2.2 污水處理系統(tǒng)的業(yè)務(wù)流程分析與設(shè)計
用例圖只是表達了系統(tǒng)的功能需求,沒有描述系統(tǒng)隨時間變化的行為,,這些行為是用從靜態(tài)視圖中抽取系統(tǒng)的瞬間值的變化來描述的,。UML時序圖描述了對象之間傳遞消息的時間順序,它用來表示用例中的行為順序,,是強調(diào)消息時間順序的交互圖,。時序圖包括4個元素:對象(Object)、生命線(Lifeline),、激活(Activation)和消息(Message),。污水處理系統(tǒng)的操作時序圖如圖2所示。
這張操作時序圖描述了污水仿真軟件的一般性操作流程:首先登錄仿真系統(tǒng),,驗證用戶名及其密碼,,經(jīng)過后臺驗證后進入主界面;在操作主界面,用戶可以使用默認的參數(shù)值,,例如進水流量,、曝氣池容積、DO濃度,、曝氣空氣流量,、COD濃度等關(guān)鍵參數(shù),也可以根據(jù)控制方案的需要修改初始參數(shù)值,;用戶可以配置運行環(huán)境,,如仿真步長、仿真時間等參數(shù),;接著,,封裝為獨立類的污水仿真引擎,對外表現(xiàn)為一個黑箱,,僅開放接收數(shù)據(jù)和顯示數(shù)據(jù)的接口,,內(nèi)部進行迭代仿真運算;用戶此時可以從擴展的3D通訊接口觀察實際處理效果或者通過趨勢曲線觀察,,并可通過操作閥門開度及回流比,,實時調(diào)整控制出水各組分濃度。
由于采用了OO方法建立的污水仿真系統(tǒng),,其基本組成的元素為對象,,而對象又是類的實例,所以采用靜態(tài)視圖描述類,、對象和它們之間的關(guān)系,。類是任何面向?qū)ο笙到y(tǒng)中最重要的構(gòu)造塊,也是一種重要的分類器,,用來描述結(jié)構(gòu)和行為特性的機制,,包括類、接口,、數(shù)據(jù)類型,、信號、組件,、節(jié)點,、用例和子系統(tǒng)。類圖是描述類,、接口,、協(xié)作以及它們之間關(guān)系的圖,用來顯示系統(tǒng)中各個類的靜態(tài)結(jié)構(gòu),。類圖包含7個元素:類,、接口,、協(xié)作、依賴關(guān)系,、泛化關(guān)系,、實現(xiàn)關(guān)系以及關(guān)聯(lián)關(guān)系。根據(jù)系統(tǒng)用例的功能研究分析,,建立污水仿真系統(tǒng)主要類圖如圖3所示,。
(1)污水處理系統(tǒng)主程序類:這是污水仿真系統(tǒng)的主界面類,每次運行僅有一個主程序類,,它是其他類的關(guān)聯(lián)橋梁,,依賴其他類暴露的接口進行數(shù)據(jù)傳遞、控制操作,、數(shù)據(jù)顯示,。它是整個仿真軟件的人機交互操作平臺,從封裝性角度考慮,,其自身不具有數(shù)據(jù)處理功能,;
(2)用戶類:用于存儲用戶名和用戶密碼,可擴展為鏈接底層數(shù)據(jù)庫,,管理員可設(shè)置對應(yīng)操作權(quán)限及用戶賬戶管理,;
(3)系統(tǒng)控制類:每當用戶進行控制操作,如增大空氣流量,、增加或減小進水量,、改變回流比時,該類通過暴露在主程序類的數(shù)據(jù)接口,,獲取閥門開度量或控制參數(shù),處理后傳遞給仿真引擎進行數(shù)學迭代運算,;
(4)污水處理仿真引擎類:根據(jù)污水處理的數(shù)學模型,,確定仿真系統(tǒng)采用國際水協(xié)發(fā)布的活性污泥ASM1數(shù)學模型,接收從主程序界面和控制類傳來的組分數(shù)據(jù),、控制參數(shù),,內(nèi)部進行迭代運算,實時通過數(shù)據(jù)接口外傳各控制點數(shù)據(jù),。
3 城市污水處理的實現(xiàn)
參照北京市某大型污水處理廠的實際處理過程,,仿真軟件中數(shù)學模型采用活性污泥法。通過對溶解氧,、污染物基質(zhì)和異養(yǎng)菌生長三者關(guān)系分析,,采用白箱建模的方法,從基本動力學方程出發(fā)進行了仿真研究,,并對這一生化曝氣過程進行了建模,,利用UML建模工具Rational Rose根據(jù)系統(tǒng)類圖自動翻譯的系統(tǒng)框架代碼及可執(zhí)行程序,,完成代碼的編寫,最終實現(xiàn)污水處理的系統(tǒng)功能,。
以上利用UML對城市污水處理仿真系統(tǒng)進行了建模分析,。實踐證明,UML在面向?qū)ο蠼_^程中效果顯著,,它是一種優(yōu)秀的建模語言,,適用于軟件開發(fā)過程的各個階段。它能準確反映出污水處理仿真系統(tǒng)的功能需求,,為建模人員搭建了一個清晰的建模平臺框架,。整個仿真建模研究具有高度的透明性,其結(jié)果具有很高的可信度,。無論用于理論上的污水建模研究,,還是提供一個優(yōu)良的被控對象,基于UML開發(fā)出的污水仿真產(chǎn)品無疑是讓人放心的,,也為今后污水仿真產(chǎn)品的研究提供了一個良好的思路,。
參考文獻
[1] 吳建,鄭潮. UML基礎(chǔ)與ROSE建模案例(第2版)[M]. 北京:人民郵電出版社, 2007.
[2] 陳磊,王海麗,周伯昭.基于UML的仿真系統(tǒng)分析[J]. 計算機仿真,2001,18(3):28-31.
[3] 眭洪生.污水處理實驗實時仿真系統(tǒng)的設(shè)計與實現(xiàn)[D].鎮(zhèn)江:江蘇大學,2007.
[4] 丁峰,毛杰,施振明.UML和ROSE工具在指揮控制系統(tǒng)開發(fā)中的應(yīng)用[J].計算機工程,2000,26(10):118-120.