楊祥
(南京財經大學信息化建設管理處 江蘇省南京市 210023)
隨著信息技術的高速發展,智慧校園的建設也在各大高校如火如荼的展開。各種新思路新想法百花齊放,層出不窮。各個高校也樂于通過種種新技術新理念的嘗試來進一步推動高校智慧校園建設的落地然后生根發芽。然而,傳統建設思路的瓶頸依然存在。基于MIS 架構的數據管理型業務系統依然在各個職能部門承擔著中流砥柱的作用[1]。然而我們不難發現正是這些使用多年的業務系統,卻成為了打通業務流程的絆腳石,也成為了各大高校智慧校園建設進入一步深化發展的巨大阻礙。我們急需一種新的技術、一種新的思路來對現有的建設模式進行革新性推倒重構。而基于流程引擎的一站式服務大廳就成為了其中一種選擇[2]。本文將以縱向論述的方式從流程引擎的原理到如何構建基于流程引擎的網上服務大廳進行論述。同時以南京財經大學為例對項目建設實施過程中所遇到的困難進行分析并提出較為詳實的解決方案。
流程引擎作為一個底層支撐軟件開發平臺,可以用來開發基于流程的應用系統。一個流程引擎主要包括流程的構建、流程的執行以及數據的流轉和同步。而在解釋流程引擎之前我們首先需要了解什么是BPM。BPM 是Business Process Management 的縮寫即業務流程管理。它是一種通過規范化構造P2P 的業務流程,從而達到優化提高業務效率的目的。而對于軟件行業而言,我們則是通過流程再造的方式來優化整個軟件系統,從而實現快速部署、快速改造、快速調優的目的。
流程的構建需要使用BPMN 即業務流程建模與標記,是用于構建業務流程圖的一種建模語言標準。目前標準已經發展到了BPMN2.0,該標準為開發者提供了一套簡單易懂的標準化標記符號,這些符號就是BPMN 的基礎元素,通過這些元素我們將整個系統開發時的業務流程建模簡單化、圖形化,將復雜的建模過程變成了可視化的操作。
整個流程引擎包括幾個通用組件:可視化流程設計、表單設計以及代碼生成器。開發者通過流程圖標的繪畫,相關參數的配置,最終生成可運行的代碼。流程引擎的工作步驟主要包括:流程的加載、流程的執行以及數據的同步。而對于流程的建設,我們首先需要定義流程,完成初始的參數設置,包括:接口地址、操作參數、操作類型、邏輯判斷類型等等。在完成初始參數的設置之后,根據邏輯流程圖在可視化開發平臺上對流程進行構建,構建完成后再進行流程的定義。流程名稱等基本信息和定義流程的各個操作步以及流轉規則是必不可少的信息。以及設置定義步驟類型(起始、中間、終結),入口步驟、出口步驟、通知模式、人員、角色、發送通知的內容等。接下來是對特殊情況的處理,比如涉及跳步情況的定義,比如需要根據參數的不同提交到不同的步驟進行審批,這里統稱做流程步驟變遷規則設置。設置的內容包括:原步驟、目標步驟、變遷方向(正/負)、條件規則(判斷參數時用“與”還是用“或”)。然后再設置參數和參數值及比較條件等。最后是授權的管理,即判斷被提交的人是否處于授權狀態,從而進行授權處理。通過這些步驟的建設與配置,一個完整的流程就可以進入測試環節。通過測試后,如無問題即可安排上線。
隨著高校智慧校園建設的深入推進,以及廣大師生對于高校職能部門提出的要求。高校職能部門也定位也漸漸發生了轉變,從行政管理逐漸轉變成為服務型機構[4]。各部門所用的傳統的基于MIS架構的業務系統也就無法滿足職能改變所帶來的需求的變化。也正因為這種需求,我們發現基于流程引擎構建網上服務大廳并通過加載輕應用的方式可以極好的匹配廣大師生的業務需求[3],有如下優點:
因為所有的輕應用均基于流程引擎進行開發,API 接口標準規范,數據接口標準統一。故不管是在平臺內部各個流程之間的數據調用、功能模塊復用,又或者各個流程與非流程引擎開發的業務系統之間都可以按照標準接口進行對接。開發難度小、效率高,開發成果可重復利用率較高,為廣大開發人員所喜愛。
因為基于流程引擎的可視化開發界面,通過在線流程設計完成應用的建設,所以可以讓開發人員快速的將用戶的需求通過畫流程圖的方式變成應用程序,從而及時的完成用戶的需求響應,極大的提升了用戶的反饋。
基于流程引擎開發的應用程序,其程序代碼均已通過流程圖的形式進行展現,程序邏輯一目了然。不管是前期的開發人員又或者后期的運維人員,無需讀懂代碼,均可迅速上手接替后續的開發和運維工作。而這恰恰解決了各大高校信息化建設后期項目運維的難題:傳統基于MIS 架構開發的程序,后續運維人員對于前期開發人員撰寫的代碼需要花費大量的時間才能夠讀懂,稍有差池就會對生產環境引起牽一發動全身的重大故障。也正因為這個原因,傳動架構系統的后續業務需求變更所帶來的系統修改就會變的極為艱難。然而流程引擎的出現讓這個問題迎刃而解。

圖1:一站式服務大廳應用平臺
智能手機的廣泛普及對高校智慧校園的建設提出了新的要求。應用系統在移動端的使用程度越發的成為了衡量智慧校園建設水平的一個重要指標。傳統業務系統開發對于移動端支持的不適配,是讓眾多信息化建設人員頭疼一個的問題。而基于流程引擎建設的網上一站式服務大廳以及相關輕應用大多基于HTML 5 進行開發,可以很好的適配并嵌套進各大高校的APP、企業微信等移動端應用中。真正做到了一次開發就可同步適配PC 端、移動端,極大的緩解了廣大開發者所面對的難題。
流程引擎平臺對平臺所開發流程具有管理和監控的功能。新開發流程可在平臺上進行部署測試,待測試通過后,將舊版本應用下線,新版本應用上線,即可完成用戶無感知切換,用戶體驗佳。同時對于運行流程,平臺實時監控運行狀態,管理員可通過平臺隨時監控各個流程是否處于正常狀態,并在故障發生時,第一時間收到各類型(郵件、短信、微信)告警通知。方便管理員及時發現問題,第一時間處理解決,極大的減輕了平臺管理員的工作壓力。尤其是對于一站式網上服務大廳這種面向廣大師生的平臺型應用,一旦發生故障就會產生巨大的影響,所以管理監控的功能就尤為重要。
綜上所述,我們不難發現,基于流程引擎的網上服務大廳是具有種種優點的存在。也正因此,其越來越成為高校智慧校園建設的一種趨勢。但在實際的項目建設中,我們不難發現一些無法避免的困難依然存在。故將以南京財經大學為例對建設中所遇到的一些困難進行闡述并簡單分析,以一些個人淺見提出相對合適的解決方案。
各大高校目前在用的業務系統大多還基于傳統的MIS 架構,開發語言也多種多樣,有JAVA、.NET 等。故與新的平臺進行對接會存在一定的困難,主要包括兩個方面:
4.1.1 統一身份認證對接困難
新平臺認證大多基于標準的CAS 協議,有一些老的系統并不支持該協議,故需要對原有系統認證接口進行改造。如果不能改造,則可以選用LDAP 或代理的方式實現統一身份認證的功能。
4.1.2 數據的對接困難
對于各業務部門現有系統進行數據對接主要存在兩個困難。首先,數據標準不一致,即各業務系統數據標準均為系統開發公司自定義或行業規范,與國標、校標存在一定的差異。在數據對接過程中需要對相關數據進行轉換,才能收入共享數據中心進行使用。其二,數據質量比較差。各業務系統獨立運行過程中,日常使用者大多抱著能用就行的態度得過且過,導致數據缺少日常維護,各種重復數據,錯漏數據層出不窮,質量較差。這些數據如果直接進入共享數據中心,并作為源數據提供給其他系統使用的話,其后果不堪設想。故需對原有系統產生數據進行治理,倒逼業務部門提高源頭數據質量,從而保證整個平臺的順利運行。
為了實現使用流程引擎重構業務系統,進而將系統以服務流程為導向,重新構建碎片化輕應用,并最終將其統一部署在一站式服務大廳中的這一目標。我們需要對原有業務系統進行重新構建。在重構的過程中我們面臨兩個問題:首先,我們需要結合現有系統來熟悉各個職能部門的業務流程,并邏輯化成為流程圖。但是這個工作最大的挑戰在于技術開發人員不懂業務,而業務骨干不懂軟件開發技術。其中的銜接往往成為了項目實施過程中的問題所在。在實際的開發過程中,項目經理往往需要化身成為一名翻譯員,先要吃透業務邏輯,然后翻譯成技術人員所需的材料,進而才能進行系統的開發。其次我們需要對原有系統中的歷史數據進行導出,并進行處理后導入新的系統中。這往往需要原系統開發公司的配合,故導致實際實施過程面臨種種不可控局面的發生,導致項目進展頗為坎坷。這也提醒我們廣大的高校信息化建設人員,在今后的系統建設中,需要從招標開始進行頂層設計,全盤考慮,深度考量。將系統的數據字段定義表,表結構關系等核心要素掌握在手中,變被動為主動。只有這樣才能為后續的建設開發打下堅實的基礎。
隨著智慧校園建設不斷深入,高校的信息化建設也已經步入了“深水區”。傳統基于MIS 架構的數據管理系統的建設方式已經無法滿足高校智慧校園應用建設的需求。而基于流程引擎的網上一站式服務大廳已經越來越成為各大高校智慧校園建設的唯一選擇。通過該開放性技術平臺的建設以及對各類型新技術(人工智能、大數據分析、物聯網等)的融合,可以較好的滿足各大高校對于智慧校園建設的各類需求,這也是高校未來建設網上一站式服務大廳的發展方向。