陳習武
(南京曉莊學院,江蘇 南京 210000)
高校教務管理系統的設計與實現
陳習武
(南京曉莊學院,江蘇 南京 210000)
借助JBPM教務管理系統自配置設計與實現管理系統,實現業務邏輯和流程控制邏輯的分離,使整個系統的流程更為清晰,提出了一個基于J2EE與JBPM的教務管理系統的實現方案,并對相關技術進行研究。
教務管理系統;設計;JBPM
隨著信息技術的發展和校園網的建設,教務管理系統也在發展為綜合性的管理平臺。現有的教務管理系統大多是由開發商前幾年提供的,其業務流程是按當時的需求來設計的,其一些系統功能己不適應流程復雜多變且需要多人協作參與的業務需求,教務管理系統自配置設計與實現技術卻能夠解決這些需求。開發本系統的目標是使用jBPM教務管理系統自配置設計與實現技術來處理教務管理中存在的手工操作且需多人參與審批的業務,實現該業務的網上辦理。所以將教務管理系統自配置設計與實現技術引進教務管理系統不僅是技術趨勢,同時也是業務流程自動處理的需要。
教務管理系統自配置設計與實現是一項分離業務操作和系統流程技術。教務管理系統自配置設計與實現由實體(Entity)、參與者(Participant)、流程定義(Flow Definition)、教務管理系統自配置設計與實現引擎(Engine)四部分組成。
① 實體是教務管理系統自配置設計與實現的主體,是需要隨著教務管理系統自配置設計與實現一起流動的物件(Object)。例如,在一個采購申請批準流程中,實體就是采購申請單;在公文審批流程中,實體就是公文。② 參與者是各個處理步驟中的責任人,可能是人,也可能是某個職能部門,還可能是某個自動化的設備;③ 流程定義是預定義的工作步驟,它規定了實體流動的路線。它可能是完全定義的,即對每種可能的情況都能完全確定下一個參與者,也可能是不完全定義的,需要參與者根據情況決定下一個參與者;④ 教務管理系統自配置設計與實現引擎是驅動實體按流程定義從一個參與者流向下一個參與者的機制。前三個要素是靜態的,而第四個要素是動態的,它將前三者結合起來,是教務管理系統自配置設計與實現的核心組成元素。
jbpm教務管理系統自配置設計與實現步驟:
(1)加載(發布)流程定義,我們通過 jbpm的 designer插件,或者是用其他工具,制定出processDefinition,然后將其加載到應用中的過程。這個加載可以是寫入內存中,或者是直接寫入數據庫等。
(2)啟動流程,創建流程實例的過程。具體創建實例的方法有多種,可根據自己的需要自行選擇。
(3)處理任務,在流程流轉的過程中,JBPM引擎會為我們生成任務的實例,我們就需要針對這些任務實例來進行處理,然后結束這些任務實例,并推動流程的流轉。
(4)記錄流程的相關狀態 記錄流程狀態這點包括且不限于以下內容:1)流程實例的開啟;2)任務實例的創建;3)任務實例的開始執行;4)任務實例的結束;5)流程實例的結束。
(1)解耦系統業務流程 流程獨立,可以使用工具定義和建模,利于跟蹤、監控、管理、調度、優化和重整。
(2)提高系統的靈活性 系統流程定義生產環境的修改和調整,用戶和外部工具交互,任務的動態分派使用jBPM時的問題。
(3)對當前任務的條件查詢 jBPM不提供靈活進行條件查詢的api,如果需要,可以自定義hibernate查詢,從jbpm相應的數據表中查詢任務數據。但需要對jBPM機制比較了解,而且有些復雜條件難以用jBPM本身的信息查到[1]。
(4)當前任務的分頁 在上一問題的基礎上,使用hibernate分頁。
(5)統計各個流程實例的狀態 可以通過流程實例,在jbpm系統表中查詢,也可以在業務表的相應數據上加上狀態列來統計。前一個比較麻煩,后一個比較直觀,但不會因使用jBMP而使用工作量減少。
(6)教務管理系統自配置設計與實現數據與業務數據結合 一般通過在流程實例中添加相應的一筆數據的標識作為變量來關聯。也可以有針對性的擴展jbpm的系統表來實現與業務關聯性。
(7)修改流程后的歷史數據兼容性問題Jbpm教務管理系統自配置設計與實現流程定義有版本的概念,修改流程后要重新發布,與舊的流程不是一個同一個版本。系統可以區別開新舊流程來。
初步的結論是:引入教務管理系統自配置設計與實現技術不會明顯減少系統開發工作量。相反,在一般情況下,會增加一部分工作量。如果項目流程多,而且比較復雜,則使用教務管理系統自配置設計與實現技術會使項目結構層次更加清晰、更具有擴展性,根據需求有可能要修改和擴展現有開源教務管理系統自配置設計與實現類庫與數據庫結構,也會增加額外的工作量。但權衡之下,利大于弊。
關于業務數據與jBPM本身的數據,理論上說,如果使用 jBPM,可以將所有業務數據放到jBPM的context中管理,不再維護業務數據表。但這樣的結果是在流程之外的環境(比如在統計報表中)中無法容易的得到業務數據。所以一般會建立業務數據表,我不使用教務管理系統自配置設計與實現時一樣,然后讓jBMP從業務數據表中得到業務數據,而不在jBPM中保留業務數據。因此,使用jBPM后,在業務數據方面基本不會減少工作。教務管理系統自配置設計與實現本身的概念較復雜,使用jbpm,需要學習其教務管理系統自配置設計與實現的定義和結構,流程定義工具和語言、了解其數據結構。與其它教務管理系統自配置設計與實現產品(如Shark)相比,jBPM對Java開發人員來說學習較低成本,在做流程復雜的項目時,學習成本可以接受。
流程的流轉和任務的分派完成,都是用戶在控制,所以需要將用戶、角色和權限整合到jbpm教務管理系統自配置設計與實現中。將流程抽取后,原本連續的業務處理變成一個個的任務節點。需要在每個業務相關處理處添加教務管理系統自配置設計與實現流程控制、在每個節點處實現相關的業務和流程切入點。
[1]徐萍.高校教務管理系統的設計與實現[D].南京:南京理工大學.2009.
Design and implementation of educational administration system in Colleges and Universities
CHEN Xi-wu
(Nanjing Xiaozhuang University,Nanjing Jiangsu 210000)
With the help of JBPM educational administration management system management system design and implementation of self configuration to achieve the separation of business logic and process logic control,make the process more clear,put forward an implementation scheme based on J2EE and jBPM the educational management system and related technology research.
Educational administration management system; Design; JBPM
:A
10.3969/j.issn.1672-7304.2016.01.062
1672–7304(2016)01–0133–02
(責任編輯:張時瑋)
陳習武(1993-),男,江蘇鹽城人,研究方向:計算機軟件。