任迎迎,徐建良(中國海洋大學 信息科學與工程學院,山東 青島 266100)
業(yè)務流程中多元化催辦的研究與實現(xiàn)
任迎迎,徐建良
(中國海洋大學信息科學與工程學院,山東青島 266100)
隨著計算機和互聯(lián)網的發(fā)展,信息化辦公已經普及,在流程較長或角色較多的業(yè)務流程系統(tǒng)中,催辦功能就變的尤為重要。催辦即當某一用戶在截止日期前仍未完成某一工作時,系統(tǒng)自動發(fā)送消息提醒的功能。本文提出了多元化催辦模型,描述了催辦的算法,并給出了催辦實現(xiàn)的三種方式:系統(tǒng)短消息、電子郵件和短信。
多元化催辦;系統(tǒng)短消息;電子郵件;短信
在業(yè)務流程系統(tǒng)中,當業(yè)務流程較長或者涉及角色較多時,難免會因某一用戶工作拖延,導致其他用戶工作延期,催辦就是為了解決這一問題而提出的。當某一用戶在截止日期前仍未完成工作時,若系統(tǒng)可以自動發(fā)送消息提醒用戶,使得任務及時完成,流程得以繼續(xù),那么工作效率將會得到很大的提升[1]。
本文建立了多元化催辦模型,描述了催辦算法,并給出了催辦實現(xiàn)的三種方式。多元化催辦的應用可有效提高工作效率,加速并保證業(yè)務流程的順利流轉。
1.1多元化催辦的定義
在業(yè)務流程中,為了能夠根據(jù)活動的緊急程度發(fā)送不同形式的催辦提醒,需要定義不同的催辦類型。多元化催辦中的多元化含義之一便是催辦類型的多元化,即催辦類型是可定制的。
在定義催辦類型時,可以指定該催辦類型的催辦次數(shù)、每次催辦提醒的時間間隔以及催辦的方式。圖1給出了催辦類型的定義示例,共定義了三種催辦類型。
圖1 催辦類型定義
本文采用XML來描述催辦類型,XML文檔簡單、可讀性高并且具有強大的數(shù)據(jù)描述能力。當催辦模型發(fā)生變化時,通過修改XML文件,無需改動程序代碼,即可實現(xiàn)。
1.2催辦模型
本文提出了一種融入了多元化催辦的業(yè)務流程管理模型,增加了各活動之間緊急程度的描述。該模型中的符號部分參考了業(yè)務流程建模標記法。模型中的主要元素有事件、活動、網關以及連接流[2]。表 1給出了模型元素的名稱、符號表示等相關描述。
表1 模型元素表
催辦流部分關鍵模型元素的說明:
(1)網關:對于流程分散的情況,當活動抵達排他型網關時,將選擇某一分支執(zhí)行;當活動抵達并行網關時,將并行執(zhí)行后續(xù)所有分支。對于流程聚合的情況,當任一活動抵達排他型網關時,即執(zhí)行流出分支,僅當所有活動抵達并行網關時,才執(zhí)行流出分支[3]。
(2)連接流:順序流僅表示兩個活動執(zhí)行的先后順序,而催辦流表明了活動的緊急程度。
多元化催辦的模型示例如圖2所示,同樣采用XML對模型進行描述。
在業(yè)務流程中,某一活動的完成將觸發(fā)兩個事件:創(chuàng)建針對下一活動的新的催辦、終止前一個活動的催辦。
2.1創(chuàng)建催辦算法
當業(yè)務流程中的某一活動完成后,需要創(chuàng)建新的催辦提醒,若后續(xù)活動未在規(guī)定的時間范圍內完成,便可提醒其相關負責人。
業(yè)務流程中某個活動的所有后續(xù)分支情況共有5種類型:無分支、排他型聚合分支、并行聚合分支、排他型分散分支、并行分散分支,如圖3所示。
圖3 創(chuàng)建催辦時的五種分支類型
活動的后續(xù)分支類型不同,其創(chuàng)建的相應催辦也不同。在接下來的分析過程中,Activity1將簡單記為A1,以此類推。
(1)無分支類型,后續(xù)活動只有一個,如圖 3中①所示,將產生StartActivity=A1,EndActivity=A2的一條催辦。
(2)排他型聚合分支,后續(xù)活動有一個,如圖 3中②所示,將產生 StartActivity=A1,EndActivity=A3的一條催辦。
(3)并行聚合分支,后續(xù)活動只有一個,如圖中類型③所示,將產生 StartActivity=A1,EndActivity=A3的一條催辦。
(4)排他型分散分支,后續(xù)有多個活動,這些活動中的某一個將在下一步執(zhí)行,但由于所有的活動均有被執(zhí)行的可能性,所以需要創(chuàng)建所有后續(xù)分支活動的催辦。如圖3中類型④所示,將產生StartActivity=A1,EndActivity=A2和StartActivity=A1,EndActivity=A3的兩條催辦。
(5)并行分散分支,后續(xù)有多個活動,由于所有的活動都將在下一步并行執(zhí)行,所以需要創(chuàng)建所有后續(xù)分支活動的催辦。如圖3中類型⑤所示,將產生StartActivity= A1,EndActivity=A2和 StartActivity=A1,EndActivity=A3的兩條催辦。
創(chuàng)建催辦提醒的算法過程如圖4所示。
圖4 創(chuàng)建催辦提醒算法
2.2終止催辦算法
當業(yè)務流程中的某一活動完成后,除了創(chuàng)建新的催辦提醒外,還需要終止前一個活動完成時針對該活動創(chuàng)建的催辦提醒。
某個活動的先前分支情況同樣是5種類型,如圖5所示。
圖5 終止催辦時的五種分支類型
活動的先前分支類型不同,其需要終止的催辦也不同。
(1)無分支類型,只終止一條催辦。如圖5中①所示,將終止StartActivity=A1,EndActivity=A2的一條催辦。
(2)排他型聚合分支,終止所有分支中被執(zhí)行的那個分支所產生的催辦。如圖5中②所示,將終止StartActivity=A1,EndActivity=A3或 StartActivity=A2,EndActivity=A3中某一條催辦。
(3)并行聚合分支,終止所有分支產生的催辦。如圖5中③所示,將終止 StartActivity=A1,EndActivity=A3和StartActivity=A2,EndActivity=A3兩條催辦。
(4)排他型分散分支,前一個活動產生了多個催辦,任何一個分支的活動完成都將終止所有的催辦。如圖5中④所示,將終止 StartActivity=A1,EndActivity=A2和StartActivity=A1,EndActivity=A3兩條催辦。
(5)并行分散分支,只終止一條催辦。如圖5中⑤所示,將終止 StartActivity=A1,EndActivity=A2的一條催辦。
終止催辦提醒的算法過程如圖6所示。
圖6 終止催辦提醒算法
多元化催辦中的多元化指的是催辦類型的多元化以及催辦方式的多元化。本文中主要介紹多元化催辦的三種實現(xiàn)方式:系統(tǒng)短消息、電子郵件和短信。
3.1關鍵技術
3.1.1Windows服務
Windows服務是一種可長期運行在操作系統(tǒng)后臺的應用程序,適合在服務器上使用,可以在操作系統(tǒng)啟動時自動開始運行,它沒有任何用戶界面,也不會產生可視的輸出[4]。Windows服務可以在沒有用戶登錄的情況下運行,在后臺進行某些操作[5]。
3.1.2Timer定時器
Timer是.NET Framework下基于服務器的計時器(System.Timers.Timer),它能夠指定在應用程序中引發(fā)Elapsed事件的周期性間隔,通過處理這個事件來提供常規(guī)處理,也就是在應用程序中生成定期事件[6]。
3.2三種實現(xiàn)方式
3.2.1系統(tǒng)短消息
系統(tǒng)短消息是用戶在業(yè)務流程管理系統(tǒng)中看到的催辦提醒,可通過將消息列表置于首頁等方式方便地提醒用戶待辦事項。
系統(tǒng)短消息的實現(xiàn)比較簡單,通過查詢數(shù)據(jù)庫催辦表中當前用戶的催辦消息,將符合條件的信息顯示于消息列表中即可。實現(xiàn)效果如圖7所示。
圖7 系統(tǒng)短消息催辦提醒圖
3.2.2電子郵件
以電子郵件的形式將催辦提醒發(fā)送至用戶郵箱,使得用戶在不登錄系統(tǒng)的情況下,通過郵件即可掌握任務進度情況。
本文中實現(xiàn)電子郵件形式的催辦功能使用了 Jmail組件,它是免費組件,從互聯(lián)網上下載后只需注冊 jmail.dll文件即可被調用[7]。實現(xiàn)效果如圖 8所示。
3.2.3短信
本文中采用網關短信實現(xiàn)短信方式的催辦,通過第三方短信平臺完成短信的發(fā)送功能。實現(xiàn)效果如圖9所示。
網關短信通過調用運營商提供的短信服務接口實現(xiàn),不需要硬件支持[8]。網關短信抵達率高,發(fā)送速度快,且方便監(jiān)管。
3.3多元化催辦的實現(xiàn)過程
3.3.1創(chuàng)建催辦提醒
從催辦消息的產生到最終用戶收到催辦提醒,多元化催辦的創(chuàng)建過程如下:
(1)某一活動a1完成,需要創(chuàng)建針對下一活動a2的催辦,即StartActivity=a1,EndActivity=a2的催辦消息提醒,此時催辦的狀態(tài)為New。
(2)利用Windows服務和定時器Timer實現(xiàn)定時檢查催辦條目,若有條目的創(chuàng)建時間與當前系統(tǒng)時間的間隔超過了催辦類型中定義的時間間隔,即在規(guī)定的時間范圍內下一活動仍未完成,判斷催辦次數(shù)是否達到了催辦類型中定義的次數(shù),若次數(shù)已達到則把催辦的狀態(tài)直接置為 RemindFailed,否則將催辦的狀態(tài)置為Reminded,并執(zhí)行下一步操作。
(3)根據(jù)催辦類型中定義的實現(xiàn)方式,以某種或多種方式發(fā)送催辦消息提醒,并將催辦次數(shù)記錄增加一次,若已達到催辦類型中定義的催辦次數(shù),則將催辦的狀態(tài)置為RemindCompleted。
(4)最終用戶以某種既定的形式收到催辦消息提醒,加快工作進度,達到催辦目的。
圖10所示為創(chuàng)建催辦提醒過程。
Research and implementation of diverse reminders in business process
Ren Yingying,Xu Jianliang
(College of Information Science and Engineering,Ocean University of China,Qingdao 266100,China)
With the development of computer and Internet,office information system is popularized,and the reminder function becomes especially important in the business process system with long process or many users.Reminder is the function that the system automatically sends messages to user if he is still not finish the work before deadline.This article proposes a model of diverse reminders and describes the relevant algorithm and implements three types of reminder which are system message,email and short message.
diverse reminders;system message;email;short message
TP39
A
1674-7720(2015)15-0075-03
任迎迎,徐建良.業(yè)務流程中多元化催辦的研究與實現(xiàn)[J].微型機與應用,2015,34(15):75-77,81.