0 引言
PDM(Product Data Management)是用來管理所有與產品相關的信息(包括零件、配置、圖文檔、結構、類別、變更、權限等),和所有與產品相關的過程(包括過程定義和過程管理)的技術。目前隨著企業需求的擴大,信息技術的逐步發展,PDM技術的研究與開發已經越來越普遍。通過由信息技術主導的制造模式的發展趨勢可以看出,制造業要想提高生產效率,實施信息化戰略是唯一選擇;而在眾多的先進設計與制造技術中,實施產品數據管理是信息化過程中最核心的內容,因為PDM管理的是一個企業的核心競爭力——產品的相關數據,而這些數據是其他管理技術(ERP/MRP)賴以生存的根本所在。其他管理技術更多的是充當企業價值鏈上的服務環節,PDM則處于企業管理的核心位置。
工作流管理聯盟(WFMC)對工作流的定義:工作流是一類在計算機技術的支持下能夠完全或者部分實現自動執行的經營過程,它根據一系列過程規則,使信息、任務能夠在不同的參與者之間傳遞與執行。
采用PDM與工作流技術相結合,能有效地實現產品數據在概念設計、計算分析、詳細設計、加工制造、銷售維護直到產品消亡的整個生命周期內按一定的管理模式加以定義、組織和管理,使得產品數據在整個生命周期內保持一致、共享和安全,同時可按照預先定義的業務流程,自動流轉于各個環節,從而提高企業運作的效率,增強企業的競爭力。
1 基于有向圖的工作流模型設計
PDM系統中的工作流程管理主要是對產品設計、工藝、生產及銷售全過程的管理,在工作流概念下實現業務過程集成管理則是通過定義不同任務之間相互關系的工作流模型來實現的。工作流模型是對工作流的抽象表示,是整個工作流管理系統的基礎。在工作流模型中,無論是具體的物料轉移、實際物理裝置的操作,還是抽象的信息處理與決策過程,都可以用工作流的基本組成元素——任務(活動)來統一地進行描述。同樣,反映不同任務之間的關系,無論是具體的車間中零件加工順序、辦公自動化中的文件批轉,還是抽象的決策流之間的關系都可以用工作流的基本組成元素——連接弧來統一地進行描述。連接弧反映了企業業務經營過程的一種控制邏輯,定義了活動之間的連接關系和執行順序。
有向圖模型是一種被廣泛采用的流程定義模型,它的優點是比較直觀、容易理廨,因此工作流模型建立在有向圖的基礎上,采用有向圖對具體的工作流程進行描述建模。下面給出作者采用的有向圖的一些基本定義:
定義1 設定有向圖G=(V,E),V、E中的元素分別表示圖的節點與弧。e=(u,v)∈E,則稱u為e的起點或頭,v為e的終點或尾,又稱u為v的前驅,v為u的后繼,前驅域為,Γ-(v),后繼域為Γ+(v)。
定義2 給定一個有向圖G=(V,E),在V中指定了一點為發點vs,另一點為收點v1,其余是中間點;對于每一個弧(vi,vj)∈E,對應有一個c(vi,vj)≥0,稱為弧的容量。通常把這樣的G稱為網絡,記做G=(V,E,C)。
下面在上述圖和流的基本定義的基礎上做一些擴展和調整,以簡化對實際工作流程的建模:
定義3設G'=(V,E,ψ)。其中V是非空有限集合,它的元素為工作流的節點,令V=(v1,v2,…,vn),其中指定v1為起始節點,vn為終止節點;T也是非空有限集合,它是邊的定義域,其元素通常為自然數,每一自然數代表了一條邊;ψ是表示V之間關聯關系的映射。
作者采用有向圖理論對具體的工作流程進行建模,圖1為某模具企業產品設計發布的基本工作流程圖。
圖1 產品設計發布流程圖
圖2 設計發布流程對應的有向圖
圖2是基于有向圖的定義為以上工作流程建立的一個有向圖實例,其中V=(v1,v2,v3,v4,v5,v6,v7),v1~v7代表了圖1中的各個圓形節點中的內容,也即工作流程的具體任務(活動);E=(1,2,3,4,5,6,7),用帶箭頭的連接弧代表了工作流程中任務的連接關系、執行順序;v之間的影射關系ψ則如圖3所示。
圖3 任務(活動)映射圖
在對上述設計發布工作流程建立好相應的有向圖模型后,將把具體的工作流及對應的節點模型信息作為一個工作流程模板存人數據庫,供工作流引擎調用。
2 工作流管理模塊的設計與實現
工作流管理系統WFMS(Workflow Management System)是一個軟件系統,它完成工作流的定義和管理,并按照在計算機中預先定義好的工作流運行邏輯來推進工作流實例的執行,是在企業業務背景下對工作流技術的具體應用。
2.1 工作流引擎的JAVA類和數據模型設計
工作流引擎是工作流管理系統的核心,是工作流程的狀態轉換機和路由控制器。文中的工作流管理模塊的工作流引擎是基于JAVA技術開發的,主要由3個方面的模塊來實現:工作流模板、工作流實例和工作流監控。
(1)工作流模板包括兩個JAVA類和兩個數據模型:WorkFlow類和Node類,WorkFlow數據模型和Node數據模型。其中WorkFlow類和WorkFlow數據模型用來完成定義工作流模板時基本信息的記錄,Node類和Node模型記錄定義好的工作流模板中每個節點的屬性。工作流模板的數據模型對應上述采用有向圖為具體工作流程建立的模型。
(2)工作流實例包括2個JAVA類和2個數據模型:WorkFlowInstance類和InstanceNode類,WorkFlowInstance數據模型和InstanceNode數據模型。WorkFlowInstance類和WorkflowInstance數據模型用于記錄工作流實例的具體信息。InstanceNode類和InstanceNode數據模型記錄了工作流實例中每個節點實例的屬性,并同時包括每個工作流節點指定的具體用戶的信息。
(3)工作流監控需要1個類和1個數據模型:HistoryRecord類和HistoryRecord表。工作流監控實際就是記錄工作流實例每個節點執行時的信息,包括節點的執行時間、執行人和執行人所做的操作。
圖4描述了工作流引擎模塊中定義的各個實體類(只列出了類的主要屬性和方法)及其相互關系,工作流引擎中數據模型的定義將在下面詳細介紹。
圖4 工作流引擎JAVA類圖
2.2 應用服務器及數據庫系統設計
工作流管理系統模塊是在PDM系統的基礎上開發的,以Tomcat5.0作為應用服務器,數據庫則采用現有PDM系統使用的關系數據庫MYSQL5.0;镜臄祿﨓-R(ENTITY-RELATION)圖如圖5所示。
圖5 工作流管理模塊基本E-R圖
圖5中每一個實體(ENTITY)基本對應數據庫中一張表,用來存貯工作流引擎執行所需要的數據模型及其他相關信息。
2.3 工作流管理模塊的實現
工作流模塊是在現有PDM系統的基礎上,采用3層體系的B-S結構開發的:表示層采用Jsp、JavaScript、Ajax技術實現對業務的顯示,完成與用戶的交互;控制層采用JAVA技術,利用JAVA類實現對具體工作流程的控制、管理等操作,滿足各種具體業務的需要;數據層采用MYSQL數據庫對相應的工作流模板、工作流實例、監控記錄等相關內容進行存儲。
3 結束語
工作流程管理是PDM系統中實施業務過程管理與過程控制的一項關鍵技術。為了提高產品設計的效率,降低產品設計的成本,迫切需要將工作流技術與產品數據管理技術緊密結合,將工作流技術應用到現有的PDM系統中來,改進提高PDM系統中的不夠完善的工作流程管理功能,從而從整體上提高企業管理經營的自動化水平,為企業在未來的競爭中建立優勢。東莞某企業在使用PDM系統工作流管理模塊后,大大提高了該企業產品開發的效率,縮短了產品上市的時間,降低了產品開發的成本,提升了該企業的競爭力。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:PDM系統中工作流技術的研究與應用