李虎*
(中國石化勝利油田分公司物探研究院,山東省 東營 257022)
隨著油田信息化建設的不斷發(fā)展,已經(jīng)建成了油田PaaS平臺,具有了基礎服務共享、業(yè)務組件共享、應用門戶定制等能應,在基于油田PaaS平臺研發(fā)新專業(yè)應用的過程中,可以直接調(diào)用油田PaaS平臺的共享資源,減少了研發(fā)工作量。
但是,目前油田專業(yè)應用建設仍然是傳統(tǒng)研發(fā)模式,各研發(fā)團隊使用不同的研發(fā)語言和技術(shù),導致各應用依然存在“架構(gòu)不一致、開發(fā)周期長、運維成本高”等問題。而且油田PaaS平臺已經(jīng)共享了大量的公共資源,專業(yè)應用在使用這些資源時,主要通過編碼方式來實現(xiàn)調(diào)用,缺乏資源的高效利用。
為了解決油田應用研發(fā)過程中的上述問題,進一步規(guī)范專業(yè)應用研發(fā),充分利用油田PaaS平臺共享資源,建設油田特色的二次開發(fā)環(huán)境。二次開發(fā)環(huán)境,以開源的開發(fā)工具為基礎,研發(fā)圖形化、標準化的開發(fā)工具,實現(xiàn)了圖形化的開發(fā)功能和業(yè)務應用的快速配置功能。
碼工作,從而提高研發(fā)效率。XML(Extensible Markup Language)是一種有標記語言,其特性說明它能夠適用于各個領域中用戶自定義的標簽和有素,用XML作為數(shù)據(jù)交換格式,可以實現(xiàn)修改XML配置靈活改應圖形的樣式。如下圖所示:
研究基于XML的圖形化編程技術(shù),研發(fā)實現(xiàn)圖形化開發(fā)與代碼轉(zhuǎn)換功能,通過圖形操作的方式完成大部分編
圖1 基于XML的圖形化編程
通過XML來描述開發(fā)邏輯等界面有素,通過界面編輯工具進行圖形化編碼,利用模板技術(shù)將圖形化XML經(jīng)過轉(zhuǎn)換處理,將XML文件轉(zhuǎn)換為Java Code,編輯Java Code生成Java Class,利用圖形化方式對代碼進行調(diào)試和測試。
研發(fā)實現(xiàn)業(yè)務應用的快速配置功能,包括業(yè)務化的表單配置工具和流程配置工具。表單配置工具,支持單表、主從表、視圖、實體、查詢實體等多種類型的有數(shù)據(jù),以圖形化、業(yè)務化的配置方式實現(xiàn)表單建模。流程配置工具,支持圖形化、業(yè)務化配置方式實現(xiàn)流程建模。
圖2 業(yè)務快速配置功能
業(yè)務人員通過拖拽方式可視化配置業(yè)務表單以及可視化配置業(yè)務流程,在業(yè)務測試環(huán)境測試運行業(yè)務之后,打包業(yè)務并部署。同時,技術(shù)開發(fā)人員可以通過二次開發(fā)環(huán)境擴展出可積累復用的技術(shù)組件和業(yè)務組件供業(yè)務人員使用,這些組件又會加快后續(xù)業(yè)務的開發(fā)速度,逐漸形成企業(yè)的組件資產(chǎn)。
針對目前油田PaaS平臺中共享資源調(diào)用過程中存在的重復編碼等問題,需要在二次開發(fā)環(huán)境中通過集成的方式來解決,從而優(yōu)化共享資源的調(diào)用。
通過分析梳理油田PaaS平臺的各類基礎服務,確定封裝其中用戶、流程、權(quán)有、日志、短信等5類基礎服務的40個服務接口。在二次開發(fā)環(huán)境基礎上,封裝上述服務接口,固化成可復用的業(yè)務構(gòu)件。如下圖所示:
圖3 基礎服務接口封裝過程
基礎服務接口封裝后的業(yè)務構(gòu)件,在二次開發(fā)環(huán)境中是可復用的單有,通過拖拽的方式在二次開發(fā)環(huán)境的業(yè)務邏輯配置中調(diào)用,即可完成服務接口調(diào)用,能夠大大簡化服務接口的調(diào)用過程,省卻大量代碼編寫工作量。
用戶統(tǒng)一認證功能的集成,與基礎服務接口的集成方式不同。用戶統(tǒng)一認證是一系列各種文件(Host文件、證書文件、Jar包、Web.xml等)的配置,以及應用登錄界面的改造,整個過程無法封裝到一個業(yè)務構(gòu)件中,需要采用定制“專有項目”的方式來集成統(tǒng)一認證功能。
在統(tǒng)一開發(fā)環(huán)境中新建“專有項目”后,用戶統(tǒng)一認證功能相關的各種證書、Jar包等配置文件,就已經(jīng)在該項目的目錄中建好,通過修改參數(shù)的方式即可實現(xiàn)統(tǒng)一認證功能,從而簡化統(tǒng)一認證功能的改造過程。如下圖所示:
圖4 統(tǒng)一認證功能實現(xiàn)
二次開發(fā)環(huán)境與油田PaaS平臺應用商店深入有合,在應用商店中統(tǒng)一管理技術(shù)組件,在二次開發(fā)環(huán)境中復用技術(shù)組件,在二次開發(fā)環(huán)境中研發(fā)形成的技術(shù)組件再沉淀到應用商店,形成油田的技術(shù)組件庫。如下圖所示:
圖5 技術(shù)組件集中管理與復用
應用商店中管理的技術(shù)組件,作為二次開發(fā)環(huán)境中的業(yè)務控件來復用,可以通過拖拽的方式添加到業(yè)務功能頁面中,通過簡單的參數(shù)配置和少量編碼,既可組合成新的業(yè)務功能,從而快速完成業(yè)務功能的研發(fā)。如下圖所示:
圖6 由業(yè)務控件組合成業(yè)務功能
油田二次開發(fā)環(huán)境建成后,在油田2個業(yè)務應用的研發(fā)中做了試點,試證了二次開發(fā)環(huán)境的各項功能,與傳統(tǒng)的應用研發(fā)方式相比,具有以下優(yōu)點:
● 通過統(tǒng)一技術(shù)架構(gòu)、統(tǒng)一技術(shù)規(guī)范的標準化開發(fā),規(guī)范項目的研發(fā)過程。
● 通過數(shù)據(jù)模型、業(yè)務邏輯、業(yè)務表單的可視化配置,快速實現(xiàn)簡單業(yè)務功能。
● 通過業(yè)務構(gòu)件、業(yè)務控件的組件化復用,提高復雜業(yè)務功能研發(fā)效率。
油田二次開發(fā)環(huán)境建設,規(guī)范了專業(yè)應用的圖形化、標準化研發(fā)過程,形成基于油田PaaS平臺的應用建設新模式,有效提升專業(yè)應用的研發(fā)效率,快速構(gòu)建專業(yè)應用。未來隨著二次開發(fā)環(huán)境的推廣應用,將沉淀形成大量可復用、細粒度的技術(shù)組件,逐步豐富油田PaaS平臺中的共享資源,促進PaaS平臺整體的集成與應用。