
摘 要:JDP MARMOT快速開發框架是在國網華東分部技改大修項目管理系統的建設過程中逐漸形成的一體化快速開發框架,基于該技術框架建設企業信息系統可極大地縮短系統建設周期,降低系統建設成本,提高系統的可維護性和擴展性。文章介紹了JDP MARMOT快速開發框架基本情況。
關鍵詞:快速開發框架;工作流引擎;中間件
引言
國家電網公司華東分部自2011年開始建設技改大修項目管理系統,在研發過程中對AJAX技術的敏銳把握和創造性的使用之后,逐步形成自己專屬的J2EE技術框架——JDP MARMOT快速開發框架。通過將展現中間件、工作流引擎和統一權限管理融合于同一技術框架,開發適用于工作流程復雜,分支節點繁多,控制要求靈活的業務環境,尤其適用于企業MIS開發的需要。
1 JDP MARMOT框架概述
從框架形態上JDP MARMOT核心由三部分組成,第一部分是一個具有AJAX特征的Web應用表現層中間件控件,第二個部分是自定義工作流引擎,第三個部分是作為前兩部分基礎支撐的統一身份與權限管理。三大核心部分統一在技術框架內,使JDP MARMOT框架具有以下優點:
1.1 降低開發成本,提高開發效率
Web應用表現層中間件控件包括了非常豐富的頁面控件,如常用表格、樹、表單、多頁標簽等一整套界面組件,不需要頁面級開發工程師,后臺開發工程師可以獨立完成復雜頁面的開發。使得原本一個初級程序員需要兩天才能開發完成的復雜頁面現在只需要半天就能開發完成。因此,開發者可以把更多的時間放到后臺邏輯層的實現上,而不是放在前端展現。
1.2 統一開發規范,無需任何第三方控件
目前開發J2EE前端展示,有很多種第三方控件。目前主流的團隊開發,每個程序員如果都用自己一套熟悉的控件進行開發,會使得代碼過于凌亂,每個功能后臺代碼都不一樣。因此,用了JDP MARMOT后,統一并且規范了開發過程中的代碼,使得開發團隊更規范,代碼更便于管理,減少軟件BUG。
1.3 規范客戶體驗
由于全部采用統一JDP MARMOT框架的控件。因此,對于客戶來說頁面風格、功能操作、系統管理方式以及所有的數據列表,編輯等等頁面都大致相同,使得客戶體驗得到了統一,有助于信息系統在成品交付后快速推廣,降低實用化成本。
1.4 跨平臺,運行速度快,部署方便
支持各種主流的應用服務器如:weblogic,webshphere等,不會產生系統沖突,無法部署等問題,只需要安裝了JDk4.0及其以上版本便可以運行。在Linux和unix下運行能更好的發揮其性能的優越性。
2 JDP MARMOT展現中間件
Web表現層方面的產品主要技術流派有離散控件構架、后臺衍伸構架、展現中間件構架等數種。JDP MARMOT采用的展現中間件構架,基于Webget Lib(表現層控件庫)并由展現層引擎統一驅動與管理。控件使用的個數越多種類越多,越有效用。可對接的業務邏輯層也不限于某種框架,可以廣泛地通過整合接口與各種第三方后臺邏輯框架相整合。還可以通過展現層引擎整合基于離散控件架構的Web表現層產品,進一步增強Web的展現力、操作性與承載量,同時提高開發效率。
目前,JDP MARMOT展現中間件包括記錄集下拉框、命令按鈕、樹形控件和布局控件四大類,十六小類展現控件,具有易于掌握,上手簡單、復用效率高、成本低、質量可靠等特點,大大加快了華東技改大修項目的研發速度,降低系統出錯率,并且提高了系統可用性。
3 JDP MARMOT工作流引擎
早期的工單流轉系統都是通過“硬編碼”的方式將業務流程定義程序寫在系統中,這就需要對原系統進行重新設計來適應流程的變更,不僅會給企業帶來難以承受的工作量,同時使得系統的適應性和擴展性較差。JDP MARMOT工作流引擎可以完成業務流程的全方位管控。
工作流是一項分離業務操作和系統流程的技術。工作流由實體(Entity)、參與者(Participant)、流程定義(Flow Definition)、工作流引擎(Engine) 四部分組成。前三個要素是靜態的,而第四個要素是動態的,它將前三者結合起來,是工作流的核心組成元素。
JDP MARMOT工作流引擎首先從眾多的業務需求中抽取出工作流模型所包含的對象,再分析各個對象之間的邏輯關系,然后提出一個系統結構,再進行模塊劃分,數據庫設計,最終完成類的設計。主要功能包括:流程配置定義、流程監控、工單上報、回退、指定回退、流程掛起、工單分發、工單委辦等一系列的接口功能,系統架構圖如下圖所示:
JDP MARMOT工作流引擎對流程的控制非常豐富,包括5種基本控制模式和5種高級分支與同步模式,能夠滿足大型企業特有的復雜業務流程管控的需要。其中基本控制模式包括:順序模式、并行分支模式、同步模式、單選模式、簡單合并模式。高級分支與同步模式包括:多選模式、同步合并模式、多合并模式、鑒別器模式(合并多條路徑而不進行同步,只執行一次后續活動)、M中的N模式(合并多條路徑,進行部分同步,只執行一次后續活動)
JDP MARMOT工作流引擎還支持子流程的支持,進一步提高了對流程的管控能力。
4 統一系統管理模塊
JDP MARMOT框架中集成了統一身份和權限認證,包括:人員組織機構管理,權限角色分配,工作流角色權限綁定,系統登錄安全性配置,系統基礎數據配置等功能。
角色模塊是系統管理平臺和工作流的接口平臺,工作流需要用到管理平臺的角色授權才能實現流程的分配和跳轉。角色模塊的核心是基于角色配置文件,角色配置文件是一個與視圖模型同名的xml描述文件,一個視圖模型最多只有一個角色配置文件。如視圖模型文件名為Employee.view.xml,則角色配置文件名就必須為Employee.role.xml。角色配置文件用來描述各個角色的頁面具體特征,例如dataset的只讀屬性,組件的可視化屬性等。
5 結束語
JDP MARMOT框架中除了展現中間件、工作流引擎、統一身份與權限管理,還集成了諸如日歷管理、風格管理、報表工具等小的輔助模塊。從設計初期,JDP MARMOT框架就被設計為一個可不斷擴展的開放式框架。從整體上看,它把前臺展現、權限控制、業務邏輯無縫地整合在一起,是一套一體化的快速開發框架。該平臺具有良好的穩定性和開放性,在此平臺上構建的華東技改大修項目管理系統具有良好的可擴展性和易維護性。
參考文獻
[1]鄭志強.框架設計通用化方法研究[D].西南農業大學,2005.
[2]王然.輿情分析系統的設計與實現[D].北京郵電大學,2013.