孫強強,李 永,居昌英
(1.濱州學院 信息工程學院;2.濱州學院 教務處,山東 濱州 256603)
《中國制造2025》指出中國的制造企業智能化轉型之路任重道遠。利用自動化軟件可以為智能制造提供技術支撐,其發展前景廣闊[1]。計算機環境下的業務過程自動化是計算機支持的協同工作的一部分,是一系列自動進行、相互銜接的業務或任務[2],也稱為工作流,例如請假申請、加班、出差等日常業務流程,廣泛應用于物業服務、教育、消費品、制造和電信服務等行業。由于行業發展限制,應用比較普及的還是在傳統媒介上的工作流,比如紙質媒介、板報等。而在自動化軟件上建立模型可以為整個業務流程的閱讀、傳輸和展示等環節提供便利,能在時間和空間上提供一種超越傳統的信息操作方式[3]。因此,本文基于模型-視圖-控制器(MVC)設計模式,引入事件派發機制、事件流機制、組件式開發模式和代碼分層技術,設計開發了一個既便捷又輕量的業務流程建模軟件。該軟件可滿足業務過程的核心需求,有效提高企業中日常業務的效率。
隨著信息技術的發展,網絡在企業信息化建設中的地位日益凸顯[4]。在提高企業的工作效率以及降低運營成本方面,傳統的、人工的紙質流程已無法適應事務流程在時間及空間的要求。現代企業迫切需要建立一套穩定、便捷、安全的基于計算機環境的電子化文件傳輸平臺[5]。企業工作人員可以不受時間、地點束縛,開展協同辦公,真正實現無紙化辦公。這在提高工作效率的同時也降低了運營成本,從而提高企業的競爭力。
業務過程軟件就是實現在計算機環境下業務過程自動化的軟件,可以實現業務過程的部分或者實現全部的自動化[6]。業務流程的安排和執行僅僅依賴于計算機網絡,企業、機關以及部門便能夠有機的聯系在一起,從而大大提高工作效率。根據需求分析,本軟件的用例圖如圖1所示。用戶可以在計算機上對業務過程實現基本的模型創建、模型保存、文件打開及修改、打印和動畫展示功能。

圖1 系統用例圖
根據總體結構和模塊間的關系,定義了多個功能模塊接口、控制接口并對其審核。功能包括:模型繪制、屬性設置、文件保存、文件打開、打印功能和動畫展示。其核心是模型繪制,可以通過圖形的方式把用戶需要的流程模型圖進行設計和展示,并配以明確的圖形和箭頭。同時,為增加系統魯棒性和易維護性,本軟件使用了事件派發、事件流、組件式開發、代碼分層等機制。
本軟件各模塊功能介紹如下:
(1)模型繪制。組件庫提供大量模板,提供編輯面板對模型元件進行設計,可添加線路牽引并繪制完整的業務流程模型。
(2)屬性設置。設置文字顏色和大小等。
(3)文件保存。把創建好的業務流程模型生成統一的xml文件。
(4)文件打開。重新編輯模型。
(5)打印功能。對xml文件和對業務流程圖進行打印。
(6)動畫展示。以動畫的形式展示整個業務過程,通過角色走動的路線來表現業務的執行過程。
在程序編寫中應用事件派發機制,事件機制是ActionScript3.0的核心功能之一[7]。通過事件機制的應用可以完成大部分的功能。事件派發是事件機制的一部分,程序要偵聽一個“事件”,那么就要存在這個事件。要讓程序知道有這個事件,然后去偵聽它,就用到了事件派發,事件派發的作用就是讓整個程序知道某個對象派發了某個事件,當對那個對象注冊監聽時就可以注冊自定義事件的監聽。
在軟件設計過程中,事件流機制如下:
(1)捕獲階段。從舞臺到發送事件的目標對象的父節點之間的所有節點,對每個節點進行遍歷,加入到達的節點是注冊了本事件的節點,就達到了目標。
(2)目標階段。僅包括目標節點,到達注冊了所發生的事件的節點時就是目標階段。
(3)冒泡階段。從目標對象到舞臺之間還回過程中所遇到的所有對象。默認情況下注冊事件是沒有冒泡的,也有一些事件不能添加冒泡。事件流模型如圖2所示。

圖2 事件流模型圖
采用全組件式的模塊化開發方式,將所有的模塊開發成組件。在系統運行時,通過建立每個組件聯系即實例化每個組件以實現想要的功能。通過組合模式實現遞歸和分級數據結構的優化處理[8]。
業務流程軟件有個主要舞臺,系統所有的模塊都要呈現在主舞臺上[9]。而舞臺被劃分為3個模塊:
(1)節點面板。里面有所有類型的節點和線段。
(2)屬性面板。可以對節點和線段的屬性進行編輯。
(3)模型編輯面板。可以實現模型的編輯。此外,使用右鍵快捷菜單可以快捷添加牽引線段。
2.5代碼分層
將系統按照功能的不同進行邏輯劃分,可以降低系統開發及維護成本。在組件中集成數據訪問和邏輯操作,可以使系統擴展性增強的同時提高系統的復用性。運用分層的思想可以抽象出代碼的整體框架、脈絡[10],有利于代碼復用。要復用某段邏輯的前提是把該段邏輯單獨作為一個模塊封裝出來,同時需要把模塊封裝得非常徹底,不能與其他模塊過多地耦合,否則就不能“一處定義到處使用”。
代碼的合理封裝是代碼分層的基礎。只有封裝才能產生層次結構,進而實現固定不變隔離變化,也只有封裝才能實現代碼復用[11]。在業務過程軟件設計過程中就利用了代碼分層的思想,將事件處理的事件類、元件類等不同功能的類分開編寫,可以讓代碼有效利用MVC綜合模式。MVC模式通常用來為軟件應用程序創建接口,由3個元素組成:一是模型,包含應用程序數據和邏輯來管理程序的狀態;二是視圖,在屏幕上呈現用戶接口和應用程序狀態;三是控制器,處理用戶輸入來改變應用程序狀態。
計算機環境下的業務過程自動化軟件的開發平臺有Adobe Flash Professional CS 5.5和Flash Develop兩個。
(1)Adobe Flash Professional CS 5.5,在此平臺上進行組件皮膚的開發和動畫在時間軸上的編寫。主要的皮膚文件包括菜單按鈕的皮膚、滾動條的皮膚等。在此平臺上設計的文檔最后要輸出swc格式的文件,它可以包含一些class文件、圖片以及css樣式文件,也可以選擇包含其他文件,這個文件就可以作為一個類庫在代碼編寫的時候進行調用。
(2)Flash Develop平臺有很好的代碼提示功能,將代碼編寫都在這個平臺上進行,軟件最后編譯成swf的形式。編程語言為ActionScript 3.0。軟件運行的最低硬件需求為Intel Pentium 4或AMD Athlon 64處理器,1 GB內存和配備了OpenGL硬件加速技術的圖形卡。操作系統需要Windows 7及以上操作系統,也可以兼容IOS操作系統。
通過在節點欄將需要的節點拖到主編輯面板,能夠向面板添加新點選的元件。開始前需要添加開始和結束節點,然后添加中間節點和牽引路線。在編輯面板里面的元件可以任意的拖動,并且之間的牽引線段會根據前后節點的位置進行重新繪制,還能自動選擇連接的點。如圖3,右邊是屬性面板,可以對節點的屬性進行改變。
文件的打開功能可以實現打開本地保存的xml格式的模型文件、展示、再編輯等。文件的保存功能采用統一的數據格式,有讀寫方便和在遠程傳送時數據量低的優點。編輯完的業務過程模型化后,系統會生成xml模型的源文件。把生成的xml格式的文件保存到本地計算機,能夠實現模型的保存以備下次查看和執行其他操作。而文件的保存和打開都是使用了FileReference類的功能,文件打開和保存見圖4。

圖3 模型編輯面板編輯視圖

圖4 文件打開和保存
本軟件實現了對生成xml文件的打印和對生成業務流程圖的打印功能。通過獲取編輯面板上的業務過程的模型或者xml代碼,將其轉換成像素。然后把像素生成圖片調用本地的打印機程序進行打印。打印功能是計算機媒介與傳統媒介的結合,提高了業務過程的人性化使用,文件打印如圖5所示。
繪制模型的整個業務過程可以通過動畫的形式進行展示,然后通過動畫中角色的走動路線來表現業務的執行過程。此處人物角色是選擇的一款游戲里面的八面人物,根據走動路徑的角度來選擇角色使用的面來更好地展示動畫。每次節點位置的改變都會派發一個位置更改事件,注冊了監聽的對象就會做出更新,同時節點之間的線段會重繪。其中,角色走動的方向是根據線段兩端的點進行判斷的,動畫展示功能如圖6所示。

圖5 文件打印

圖6 動畫展示業務過程
本文研究了業務過程軟件在如今企業管理和發展中的作用和意義,業務過程自動化軟件的開發有效地實現了基于網絡的文件傳輸。在軟件開發過程中,運用了系統工程的流程思想,提高了軟件開發的效率和以后維護的可能性。該軟件能夠在計算機環境下實現業務過程的模型創建、修改、保存、打印、動畫展示等功能。將來可以在互聯網上建立一個專門的傳輸平臺,進行定向定時的高效推送,進一步提高系統的智能化程度。