趙亮波 劉曉燕
摘要:伴隨著經(jīng)濟發(fā)展,國家和社會對計量工作的重視,計量所也飛速發(fā)展,檢校項目增加,設(shè)備增多,業(yè)務(wù)量劇增,傳統(tǒng)的半人工半信息化管理模式已不再適應(yīng)發(fā)展需求。為了適應(yīng)發(fā)展新常態(tài),必須轉(zhuǎn)變管理模式,采用信息化管理模式,提高工作效率和管理質(zhì)量,保證計量工作有序進行,所以,有必要設(shè)計開發(fā)一套符合自身工作需求的計量系統(tǒng)。但是傳統(tǒng)的開發(fā)模式具有低效的開發(fā)過程和較低的重用性等缺點,針對這個缺點,本文提出基于Web2.0 UML Profile的計量系統(tǒng)模型架構(gòu)建模。
Abstract: With the development of economy, the state and society attach importance to the measurement work, leading to the rapid development of metrology institutes. The calibration projects, equipments and business have increased, and traditional semi-artificial and semi-information management mode has not adapted to the development needs. In order to adapt to the development of the new normal, we must change the management mode, use the model of information management, improve work efficiency and management quality, ensure the measurement work in an orderly manner, so it is necessary to design and develop a measurement system for its own requirements. But the traditional development model has the disadvantages of low efficiency and low reusability. In view of this shortcoming, this paper puts forward measurement system model and framwork based on Web2.0 UML Profile.
關(guān)鍵詞:Web2.0 UML Profile;MDA;計量系統(tǒng)
Key words: Web2.0 UML Profile;MDA;measurement system
中圖分類號:TP391 文獻標識碼:A 文章編號:1006-4311(2017)01-0077-03
0 引言
計量是關(guān)于測量的科學,是實現(xiàn)單位統(tǒng)一、量值準確可靠的活動。近年來,環(huán)保、醫(yī)學、生物、氣象、軟件等方面的專業(yè)計量測試研究已逐步展開。隨著經(jīng)濟全球化發(fā)展和科技日新月異,計量已被各國公認為是加快經(jīng)濟發(fā)展、促進社會進步、推動科技創(chuàng)新、維護公平貿(mào)易、保障國家安全的重要技術(shù)支撐,是經(jīng)濟和社會有序、持續(xù)發(fā)展的重要技術(shù)基石。計量覆蓋社會活動的方方面面,對國民經(jīng)濟和社會生活的各個領(lǐng)域各個方面都會發(fā)生影響,是社會經(jīng)濟社生活不能正常進行。計量工作就是為了保障測量的準確可靠,確保國家計量單位制的統(tǒng)一和量值的準確可靠。計量管理為了計量工作健康有序發(fā)展提供可靠保障[1]。
Web2.0是2003年之后互聯(lián)網(wǎng)的熱門概念之一,目前對什么是Web2.0沒有很嚴格的定義。一般來說Web2.0是相對Web1.0的新的一類互聯(lián)網(wǎng)應(yīng)用統(tǒng)稱。Web1.0的主要特點在于用戶通過瀏覽器獲取信息,Web2.0則更注重用戶的交互作用,用戶既是網(wǎng)站內(nèi)容的消費者(瀏覽者),也是網(wǎng)站內(nèi)容的制造者。Web2.0技術(shù)主要包括:博客(BLOG)、RSS、百科全書(Wiki)、網(wǎng)摘、社會網(wǎng)絡(luò)(SNS)、P2P、即時信息(IM)等[2]。
對象管理組織(OMG)[3],定義了UML作為標準圖形語言表達系統(tǒng)的開發(fā)模型。此外,OMG提出了關(guān)于軟件系統(tǒng)分析、設(shè)計和實施的模型驅(qū)動架構(gòu)(MDA)[4]。MDA的規(guī)定了軟件系統(tǒng)三種模型,即計算無關(guān)模型(CIM),平臺無關(guān)模型(PIM)和平臺相關(guān)模型(PSM)。CIM側(cè)重于環(huán)境和系統(tǒng)的要求,但不關(guān)心系統(tǒng)的任何結(jié)構(gòu)性或處理的細節(jié)。PIM是與應(yīng)用邏輯平臺無關(guān)的模型。PSM是通過模型轉(zhuǎn)換把PIM轉(zhuǎn)換為特定平臺的模型。MDA架構(gòu)圖如圖1所示。計算無關(guān)模型也叫元元模型,可以通過映射形成平臺無關(guān)模型,平臺無關(guān)模型也叫UML元模型。平臺無關(guān)模型通過一定的轉(zhuǎn)換規(guī)則轉(zhuǎn)化形成平臺相關(guān)模型,最終平臺相關(guān)模型可以生成具體的系統(tǒng)代碼。
Web2.0 UML Profile是在概念層面提出Web2.0的相關(guān)結(jié)構(gòu)特征?,F(xiàn)在Web 2.0的不支持Web 2.0應(yīng)用程序的概念模型。這導致了低效的開發(fā)過程和重用的小潛能。統(tǒng)一建模語言(UML)是一種通用的建模語言,它可以在廣泛變化的應(yīng)用領(lǐng)域中使用。然而,UML往往缺乏建模元素和代表特定領(lǐng)域的具體概念,如Web 2.0 Mashup的建模。因此提出了模型驅(qū)動架構(gòu)(MDA)的方法和Web 2.0 UML建模擴展即Web2.0 UML Profile[5]。
本文提出于Web2.0 UML Profile對計量系統(tǒng)進行建模。
1 Web計量系統(tǒng)框架
首先從Web計量系統(tǒng)的總體概念框架角度分析Web計量系統(tǒng),并畫出Web計量系統(tǒng)框架圖(如圖2)。Web計量系統(tǒng)框架包括Web表現(xiàn)層、應(yīng)用服務(wù)器、Web資源和Web2.0 Mashup。Web資源主要包括Web信息源、WebAPI和一般資源等三類。Web2.0 Mashup分為服務(wù)器端Mashup[6]和客戶端Mashup[7]。Mashup是Web2.0一個主要的技術(shù),它從其他網(wǎng)站結(jié)合了各種Web資源,而不是簡單地聚集Web內(nèi)容。應(yīng)用服務(wù)器端通過服務(wù)器端的Mashup技術(shù)與Web資源進行交互。同時客戶端也可通過客戶端的Mashup獲取Web資源。Web表現(xiàn)層主要是編程語言、標記語言和客戶端平臺,編程語言有AJAX、JavaScript和VBscript等,客戶端平臺有瀏覽器和百科全書(Wiki)。應(yīng)用服務(wù)器包括Web服務(wù)器和服務(wù)器端的編程語言,服務(wù)器有Tomcat、IIS等,編程語言有JSP、JAVA、PHP和ASP等。在Web計量系統(tǒng)框架中Web服務(wù)器采用Tomcat和MySQL數(shù)據(jù)庫服務(wù)器,服務(wù)器端采用JSP和JAVA語言,Web表現(xiàn)層的編程語言采用AJAX和JavaScript,標記語言為HTML,客戶端平臺采用瀏覽器。
2 Web計量系統(tǒng)UML Profile
在第一節(jié)中提出Web計量系統(tǒng)的框架圖,在本節(jié)中具體地提出Web計量系統(tǒng)UML Profile,并分別從Web計量系統(tǒng)架構(gòu)、Web計量系統(tǒng)資源、客戶端PC和Web計量系統(tǒng)關(guān)聯(lián)關(guān)系進行UML Profile建模。建模工具使用StarUML,在本文中圖使用Visio工具。
2.1 Web計量系統(tǒng)架構(gòu)UML Profile
Web計量系統(tǒng)架構(gòu)主要涉及客戶端和服務(wù)器端,在Web計量系統(tǒng)中服務(wù)器端采用Tomcat和MySQL數(shù)據(jù)庫服務(wù)器。Tomcat由Web資源和JSP應(yīng)用服務(wù)器聚合??蛻舳说挠脩敉ㄟ^客戶端的Mashup[5]技術(shù)整合Web資源到客戶端。Tomcat服務(wù)器可以通過服務(wù)器端的Mashup[6]技術(shù)整合Web資源到服務(wù)器端。客戶端可以通過發(fā)送請求到服務(wù)器端,服務(wù)器端可以發(fā)送響應(yīng)來回應(yīng)客戶端的請求。Web計量資源中的Web信息源保存在MySQL數(shù)據(jù)庫服務(wù)器中。PC和Tomcat與Web計量系統(tǒng)是聚合關(guān)系,且存在1對多的關(guān)系。Web計量資源和JSP與Tomcat是聚合關(guān)系。Web信息源和WebAPI繼承Web計量資源。其中類的構(gòu)造型均為stereotype類型。Web計量系統(tǒng)架構(gòu)UML Profile建模如圖3所示。
2.2 Web計量系統(tǒng)資源UML Profile
Web計量系統(tǒng)資源主要涉及的有Web信息源和Web API。Web信息源中需要使用的輕量級的數(shù)據(jù)交換格式JSON。同時還有簡單信息聚合協(xié)議(RSS),RSS訂閱能更快地獲取信息,網(wǎng)站提供RSS輸出,有利于讓用戶獲取網(wǎng)站內(nèi)容的最新更新,在Web計量系統(tǒng)中使用RSS訂閱計量新聞。Web計量系統(tǒng)的Web信息源還包括計量器具數(shù)據(jù)、檢定規(guī)程、委托單位、人員資質(zhì)和證書模板,這些信息源存儲在MySQL數(shù)據(jù)庫服務(wù)器中。在Web計量系統(tǒng)中也需要Web API,使用的Web API包括短信API和ITEXT API。短信API用于計量系統(tǒng)的警報系統(tǒng)中,發(fā)送給客戶信息提醒檢測器具的證書已到期、未交費和器具使用期等信息。ITEXT是生成PDF報表的JAVA組件,通過在服務(wù)器端使用JSP、Servlet或JavaBean生成PDF報表,客戶端PC采用超鏈接預(yù)覽或下載得到報表。Web計量系統(tǒng)資源UML Profile如圖4所示。RSS、計量器具數(shù)據(jù)、檢定規(guī)程、委托單位、人員資質(zhì)和證書模板都繼承于Web信息源。IText API和短信API都繼承于WebAPI。所涉及的類的構(gòu)造型均為stereotype。
2.3 客戶端PC UML Profile
Web計量系統(tǒng)客戶端PC包括Script語言、標記語言和客戶端平臺。常用的Script語言有AJAX、JavaScript和VBScript,在Web計量系統(tǒng)中使用的有AJAX和JavaScript語言。Web計量系統(tǒng)中AJAX和JavaScript語言嵌入到HTML頁面中,然后在Chrome瀏覽器中顯示,同時使用RSS訂閱的計量新聞也可以在客戶端平臺中顯示。Web計量系統(tǒng)客戶端UML Profile如圖5所示。Script語言、標記語言和客戶端平臺與PC為聚合關(guān)系。JavaScript和AJAX繼承于W Script語言。HTML繼承于標記語言。Chrome瀏覽器和計量新聞繼承于客戶端平臺。所涉及的類的構(gòu)造型均為stereotype。
2.4 Web計量系統(tǒng)關(guān)聯(lián)關(guān)系UML Profile
Web計量系統(tǒng)涉及的關(guān)聯(lián)關(guān)系有PC端與Tomcat服務(wù)器端的請求和響應(yīng)關(guān)聯(lián)關(guān)系;PC端與Web計量資源的客戶端Mashup;JSP與Web計量資源的服務(wù)器端Mashup關(guān)聯(lián)關(guān)系;Web信息源與JSON之間的limit關(guān)系,限定Web信息源數(shù)據(jù)交換的格式是JSON;Script語言到標記語言的嵌入關(guān)系,以及標記語言到客戶端平臺的展現(xiàn)關(guān)系。Web2.0 Mashup、展現(xiàn)、嵌入和limt都實現(xiàn)構(gòu)造型為metaclass的關(guān)聯(lián)關(guān)系。客戶端Mashup和服務(wù)器端Mashup都繼承于Web2.0Mahsup。除了metaclass關(guān)聯(lián)關(guān)系,其他類的構(gòu)造型均為stereotype。Web計量系統(tǒng)關(guān)聯(lián)關(guān)系UML Profile如圖6所示。
3 結(jié)語
本文闡述了基于Web2.0 UML Profile計量系統(tǒng)模型架構(gòu)建模,使用StarUML[8]建模工具分別對Web計量系統(tǒng)架構(gòu)UML Profile、Web計量系統(tǒng)資源UML Profile、客戶端PCUML Profile和Web計量系統(tǒng)關(guān)聯(lián)關(guān)系UML Profile建模,從概念層對Web計量系統(tǒng)的架構(gòu)進行整體的分析建模。未來工作是準備開發(fā)轉(zhuǎn)化工具通過XSLT樣表實現(xiàn)PSM層到具體XML文件的生成。另一項未來工作,是整合語義Web[9]到Web2.0計量系統(tǒng)中,完成Web2.0 UML Profile建模,以提高Web計量系統(tǒng)的智能化。
參考文獻:
[1]國家質(zhì)量監(jiān)督檢驗檢疫總局編.中國質(zhì)檢工作手冊:計量管理[M].北京:中國質(zhì)檢出版社,2012:8-9.
[2]什么是Web2.0[J].Publishing Research,2007(2):51.
[3]OMG. Object Management Group, 2010. (retrieved on 22.10.12)
[4]OMG. MDA Specifications. 2010. Retrieved: 22 Oct. 2012, Available from: http://www.omg.org/mda/specs.htm.
[5]Hsu, I-Ching,Visual modeling for Web 2.0 applications using model driven architecture approach。Simulation Modeling Practice and Theory,v 31,p 63-76,2013.
[6]Mashup Styles, Part 1: Server-Side Mashups Ed Ort, Sean Brydon, and Mark Basler, May 2007 http://www.oracle.com/technetwork/articles/javaee/mashup-1-142202.HTML.
[7]Mashup Styles, Part 2: Client-Side Mashups Ed Ort, Sean Brydon, and Mark Basler, August 2007 http://www.oracle.com/technetwork/articles/javaee/mashup-2-140412.HTML.
[8]StarUML. The Open Source for UML/MDA Platform. Retrieved: 22 Oct. 2012, Available from: http://staruml.sourceforge.net/en/.
[9]袁金平,鮑愛華,姚莉.語義Web技術(shù)及其邏輯基礎(chǔ)[J].計算機工程,2008(24):194-196.