任治洪
[摘 要] 隨著當(dāng)前社會(huì)的發(fā)展,組織的效率成了競(jìng)爭(zhēng)的核心要素之一,為了提高管理效率,必須進(jìn)行管理方式的變革?!肮芾碇贫然⒅贫攘鞒袒?、流程表單化、表單信息化”是現(xiàn)代企業(yè)的重要管理理念,本文積極實(shí)踐了該理念,討論了基于流程設(shè)計(jì)器的行政辦公管理平臺(tái)的開發(fā)和應(yīng)用。整個(gè)工作流程管理平臺(tái)涉及以下要素:系統(tǒng)平臺(tái)管理、流程設(shè)計(jì)器、流程服務(wù)引擎。基于流程設(shè)計(jì)器的管理平臺(tái)可實(shí)現(xiàn)工作流程的業(yè)務(wù)定義、業(yè)務(wù)流轉(zhuǎn)和業(yè)務(wù)管理,支持用戶自由定義流程步驟和分配權(quán)限,支持流程靈活的配置及流程各環(huán)節(jié)屬性設(shè)置,支持流轉(zhuǎn)上傳附件及電子簽名。
[關(guān)鍵詞] 工作流引擎; 流程管理; 審批會(huì)簽; 流程設(shè)計(jì)器; 行政; 辦公; 平臺(tái); 開發(fā)
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2014 . 03. 035
[中圖分類號(hào)] F270.7;TP315 [文獻(xiàn)標(biāo)識(shí)碼] A [文章編號(hào)] 1673 - 0194(2014)03- 0079- 04
0 引 言
隨著現(xiàn)代企業(yè)的建設(shè)發(fā)展,行政辦公業(yè)務(wù)越來越繁瑣,各業(yè)務(wù)的辦理過程很難得到統(tǒng)一規(guī)范,業(yè)務(wù)辦理效率低,考核難。所以需要一個(gè)基于流程管理的行政辦公管理平臺(tái),通過該平臺(tái)來實(shí)現(xiàn)日常業(yè)務(wù)管理流程化、規(guī)范化并實(shí)現(xiàn)短信提醒、催辦,為企業(yè)考核管理打下基礎(chǔ)。
實(shí)行流程信息化管理的主要意義在于:提高業(yè)務(wù)流程的執(zhí)行力,提高工作效率,確保各項(xiàng)業(yè)務(wù)持續(xù)、穩(wěn)健、規(guī)范運(yùn)行,確保流程控制的時(shí)效性,規(guī)范業(yè)務(wù)管理模式,實(shí)現(xiàn)業(yè)務(wù)流程化、透明化。
1 方案概述
工作流系統(tǒng)的核心是流程引擎,流程引擎體現(xiàn)了工作流運(yùn)轉(zhuǎn)的設(shè)計(jì)思路。利用可視化流程設(shè)計(jì)器設(shè)計(jì)流程,用戶即使不了解流程的基本模板定義文件,也能設(shè)計(jì)出業(yè)務(wù)流程。為了能更方便地體現(xiàn)業(yè)務(wù)流程,更方便地理解工作流系統(tǒng),本系統(tǒng)的流程設(shè)計(jì)器經(jīng)過多次的優(yōu)化,大大提升了用戶的體驗(yàn),操作更加簡(jiǎn)單方便。
流程設(shè)計(jì)器是根據(jù)所采用的流程引擎,為方便系統(tǒng)實(shí)施人員及用戶對(duì)業(yè)務(wù)流程的管理而設(shè)計(jì)的,主要包括開始、結(jié)束、審核、審批、條件分支、會(huì)簽等流程節(jié)點(diǎn)。通過對(duì)這些節(jié)點(diǎn)的組合、編排,對(duì)節(jié)點(diǎn)的屬性及操作頁面的設(shè)置,生成業(yè)務(wù)流程或子流程(還可以通過對(duì)子流程的串接,生成完整的業(yè)務(wù)流程)。本系統(tǒng)的流程設(shè)計(jì)器中封裝了工作流引擎支持的基本節(jié)點(diǎn)(如開始、結(jié)束、審批、審批、分支、并行、子流程、會(huì)簽等節(jié)點(diǎn)等),同時(shí)還可根據(jù)業(yè)務(wù)的流程,開發(fā)出符合業(yè)務(wù)所需要的流程節(jié)點(diǎn),組裝到流程設(shè)計(jì)器中。通過組件拖拉的方式,快速地在流程設(shè)置窗口上放置這些節(jié)點(diǎn),畫上連線使這些節(jié)點(diǎn)連貫起來,組成順序工作流、狀態(tài)機(jī)工作流等,并通過業(yè)務(wù)配置窗口使流程與業(yè)務(wù)相關(guān)聯(lián),使人一目了然。圖1是本系統(tǒng)架構(gòu)思路。
Windows Workflow Foundation (WF) 是一個(gè)可擴(kuò)展框架,用于在 Windows 平臺(tái)上開發(fā)工作流解決方案,用于開發(fā)和執(zhí)行基于工作流的應(yīng)用程序。WF提供單個(gè)統(tǒng)一的模型,以便創(chuàng)建跨越多個(gè)類別應(yīng)用程序的端到端解決方案,包括人力工作流和系統(tǒng)工作流。本系統(tǒng)的流程設(shè)計(jì)器正是基于WF工作流引擎。
工作流是由活動(dòng)單元組成的集合,活動(dòng)是真實(shí)過程的一個(gè)模型。工作流提供了一種描述一系列相互關(guān)聯(lián)的工作之間的執(zhí)行順序,這種工作從頭到尾貫穿了整個(gè)活動(dòng),這些活動(dòng)可能由人工或系統(tǒng)來執(zhí)行。每一個(gè)運(yùn)行的工作流實(shí)例由工作流運(yùn)行引擎來創(chuàng)建和維護(hù)。雖然對(duì)于每一個(gè)應(yīng)用程序只能有一個(gè)工作流運(yùn)行引擎,但工作流運(yùn)行時(shí)引擎內(nèi)可以進(jìn)行多個(gè)工作流實(shí)例并發(fā)工作。
活動(dòng)是工作流的基本單元,它們通過程序被加入到一個(gè)工作流中,其方式就好比將一個(gè)XML DOM子節(jié)點(diǎn)加入到根節(jié)點(diǎn)中。一旦工作流中的所有節(jié)點(diǎn)都運(yùn)行完成,工作流實(shí)例就會(huì)結(jié)束。
2 流程設(shè)計(jì)器設(shè)計(jì)
提供工作流程相關(guān)業(yè)務(wù)配置,主要內(nèi)容:通過流程設(shè)計(jì)器定義流程類別,根據(jù)類別設(shè)置具體流程業(yè)務(wù),并根據(jù)業(yè)務(wù)環(huán)節(jié)需求進(jìn)行業(yè)務(wù)界面設(shè)計(jì)、創(chuàng)建分組、人員分配、分組設(shè)置、基本情況設(shè)置,最終完成流程的設(shè)計(jì)、配置、發(fā)布。各業(yè)務(wù)部門管理員通過集成用戶管理平臺(tái)進(jìn)行流程權(quán)限設(shè)置,流程發(fā)起用戶登錄系統(tǒng)選擇相應(yīng)的業(yè)務(wù)流程,填寫業(yè)務(wù)辦理數(shù)據(jù)信息,上傳業(yè)務(wù)所附文件便可發(fā)起流程,業(yè)務(wù)主管用戶完成各業(yè)務(wù)流程的審核審批,最后業(yè)務(wù)執(zhí)行人員通過導(dǎo)出功能,打印附帶電子簽名的表單進(jìn)行存檔。
設(shè)計(jì)器功能結(jié)構(gòu)如圖2所示。
相關(guān)核心代碼:
(1) 加載流程
using (StringWriter stringWriter = new StringWriter())
{
using (XmlWriter xmlWriter = XmlWriter.Create(stringWriter))
{
WorkflowMarkupSerializer serializer = new WorkflowMarkupSerializer();
serializer.Serialize(xmlWriter, this.workflow);
this.Xoml = stringWriter.ToString();
//設(shè)置選擇改變事件
ISelectionService selectionServiceObj = GetService(typeof(ISelectionService)) as ISelectionService;
if (selectionServiceObj != null)
{
selectionServiceObj.SelectionChanged += new EventHandler(OnSelectionChanged);
IComponent[] componentObj = new IComponent[1];
componentObj[0] = this.workflow as IComponent;
selectionServiceObj.SetSelectedComponents(componentObj);
}
}
}
(2) 保存流程
this.xomlFile = this.xomlFolderName + this.courseName + ".xoml";
this.layoutFile = this.xomlFolderName + this.courseName + ".layout";
this.ruleFile = this.xomlFolderName + this.courseName + ".rules";
//Save XOML File
this.SaveWorkflow(this.xomlFile, saveAsNew);
(3) 編譯流程
//編譯器實(shí)例
WorkflowCompiler compiler = new WorkflowCompiler();
//加載工作流用到的程序集
WorkflowCompilerParameters parameters = new WorkflowCompilerParameters(additionalAssembies);
//編譯生成到DLL文件
parameters.GenerateInMemory = false;
parameters.CompilerOptions = @"/resource:" + myWorkflowRule;
//編譯工作流
WorkflowCompilerResults compilerResults = compiler.Compile(parameters, myWorkflowXoml);
(4) 運(yùn)行流程
//啟動(dòng)工作流引擎
if (this.workflowRuntime == null)
{
this.workflowRuntime = new WorkflowRuntime();
this.workflowRuntime.StartRuntime();
}
//創(chuàng)建工作流程實(shí)例
string typeName = string.Format("{0}.{1}", this.GetType().Namespace, this.WorkflowName);
WorkflowInstance instance = this.workflowRuntime.CreateWorkflow(AppDomain.CurrentDomain.CreateInstanceAndUnwrap(inMemoryAssembly.FullName, typeName).GetType());
//生成無dll的XOML
WorkflowMarkupSerializer wfSerializer = new WorkflowMarkupSerializer();
DesignerSerializationManager sm = new DesignerSerializationManager();
sm.CreateSession();
string xmlName = xomlFolderName + courseName + ".xml";
XmlWriter xmlwriter = XmlWriter.Create(xmlName);
wfSerializer.Serialize(sm, xmlwriter, instance.GetWorkflowDefinition());
xmlwriter.Flush();
xmlwriter.Close();
this.workflowRuntime.StopRuntime();
3 行政辦公管理平臺(tái)開發(fā)應(yīng)用
流程設(shè)計(jì)器主要應(yīng)用在使用流程審批較多的業(yè)務(wù)上,項(xiàng)目組現(xiàn)已成功利用流程設(shè)計(jì)器開發(fā)了某石化公司的行政辦公管理平臺(tái)。下面就行政辦公管理平臺(tái)的開發(fā)項(xiàng)目予以概述。
通過建立行政辦公管理平臺(tái),提高業(yè)務(wù)流程的執(zhí)行力,提高工作效率,確保各項(xiàng)業(yè)務(wù)持續(xù)穩(wěn)健規(guī)范運(yùn)行。通過行政辦公管理平臺(tái)開發(fā)實(shí)施,能夠協(xié)助公司行政業(yè)務(wù)辦理達(dá)到以下目標(biāo):
(1) 建立科學(xué)、規(guī)范的日常行政業(yè)務(wù)辦理審批流程,具備高效的運(yùn)行機(jī)制和管理體系。
(2) 對(duì)業(yè)務(wù)辦理、審批流程進(jìn)行科學(xué)管理,實(shí)現(xiàn)其有效管控。
(3) 實(shí)現(xiàn)審批流程的靈活定制,可根據(jù)業(yè)務(wù)變化需求隨時(shí)修改、調(diào)整審批流程。
(4) 實(shí)現(xiàn)業(yè)務(wù)的網(wǎng)上會(huì)簽功能,提高工作效率,實(shí)現(xiàn)行政管理無紙化辦公,降低人力資源成本和辦公費(fèi)用。
(5) 實(shí)現(xiàn)對(duì)業(yè)務(wù)審批流程中的每一個(gè)環(huán)節(jié)通過郵件服務(wù)器或短信平臺(tái)接口發(fā)送信息,實(shí)現(xiàn)業(yè)務(wù)辦理提醒。
(6) 實(shí)現(xiàn)為公司管理人員提供流程業(yè)務(wù)分析平臺(tái),管理者可以隨時(shí)了解各部門業(yè)務(wù)流程進(jìn)展情況,并為日后考核管理提供數(shù)據(jù)基礎(chǔ)。
(7) 實(shí)現(xiàn)平臺(tái)與集團(tuán)總部PTR域集成認(rèn)證,統(tǒng)一用戶名和密碼。
本系統(tǒng)的主要功能模塊見表1。4 結(jié) 語
某石化公司行政辦公管理平臺(tái)基于流程管理,結(jié)合了公司現(xiàn)有業(yè)務(wù)特點(diǎn),是一套適用于大型石化企業(yè)的行政辦公管理平臺(tái)。該平臺(tái)可以輔助企業(yè)實(shí)現(xiàn)日常業(yè)務(wù)管理流程化、規(guī)范化。平臺(tái)提供了短信、郵件、客戶端方式等信息化提醒手段,為公司業(yè)務(wù)流程考核提供基礎(chǔ)數(shù)據(jù)依據(jù)。該平臺(tái)功能強(qiáng)大,提供圖形化流程配置功能,方便地進(jìn)行辦公管理流程的定制開發(fā)。該平臺(tái)試運(yùn)行以來,實(shí)現(xiàn)了100多個(gè)辦公業(yè)務(wù)流程的應(yīng)用,其業(yè)務(wù)范圍涉及職工休假,業(yè)務(wù)系統(tǒng)賬號(hào)、權(quán)限申請(qǐng),電信業(yè)務(wù)申請(qǐng),規(guī)章制度編審發(fā)布,辦公用戶申請(qǐng)、辦公設(shè)備申請(qǐng)購(gòu)置,辦公設(shè)施安排,會(huì)議申請(qǐng),法律事務(wù)辦理等。通過行政辦公管理平臺(tái)的實(shí)施,實(shí)現(xiàn)了企業(yè)行政辦公業(yè)務(wù)的提醒、催辦;實(shí)現(xiàn)了各部門、各業(yè)務(wù)流程運(yùn)行情況的查詢、統(tǒng)計(jì)、分析決策,大大提高辦公效率,實(shí)現(xiàn)了流程信息化、審批網(wǎng)絡(luò)化及數(shù)據(jù)/文檔的自動(dòng)化流轉(zhuǎn)。
主要參考文獻(xiàn)
[1] 聶瓊. 對(duì)獨(dú)立學(xué)院人力資源管理信息化建設(shè)的思考[J]. 科技致富向?qū)В?010(24).
[2] 周晨. 辦公管理信息系統(tǒng)開發(fā)和協(xié)作模塊、安全模塊研究[J]. 制造業(yè)自動(dòng)化,2011(7).
[3] 毛鐘紅. 高??蒲许?xiàng)目管理信息化建設(shè)探析[J]. 科技管理研究,2007(12).
[4] 章祥蓀,等. 管理信息系統(tǒng)的系統(tǒng)理論與規(guī)劃方法[M]. 北京:科學(xué)出版社,2001.
[5] 劉崧. 論信息技術(shù)對(duì)高等教育的影響及對(duì)策[J]. 今日科苑,2007(8).
[6] 廖春蘭. 辦公管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 科技信息,2008(26).
[7] 鄭人杰,等. 軟件工程概論[M]. 北京:清華大學(xué)出版社,1998.
[8] 姚笛. 淺談高校檔案管理工作的改進(jìn)[J]. 科技情報(bào)開發(fā)與經(jīng)濟(jì),2006(8).
[9] 王旭東. 高校網(wǎng)絡(luò)化行政辦公管理信息系統(tǒng)設(shè)計(jì)研究[J]. 中國(guó)高新技術(shù)企業(yè),2008(11).
[10] 湯庸. 軟件工程方法與實(shí)現(xiàn)[M]. 北京:冶金工業(yè)出版社,2002.
[11] 蘭義湧. 基于B/S結(jié)構(gòu)的高校就業(yè)工作信息化建設(shè)[J]. 中央民族大學(xué)學(xué)報(bào):自然科學(xué)版,2010(1).
[12] 趙寧. 基于B/S結(jié)構(gòu)的辦公管理信息系統(tǒng)的實(shí)現(xiàn)[J]. 技術(shù)與市場(chǎng),2006(11).