PDM/PLM/CAPP
按行业筛选
请选择行业
----------------------
-全部行业
------------------
-机床与金属加工设备
-刀具/量具/夹具/磨具
-模具设计与制造
-塑料机械/橡胶机械
-通用机械/化工机械
-工程机械/建材机械
-交通运输/海工装备
-农业机械
-食品机械/烟草机械
-包装机械
-印刷机械/广告设备
-纺织机械
-木工/造纸/环保/医疗设备
-物流设备
-智能楼宇/安防设备
-炉窑/热处理设备
-五金工具
------------------
-工业自动化
-佳工激光网
-仪器/仪表/衡器
-电力设备
-电子/通讯/办公文具
-家电/照明/健康设备
------------------
-基础件/通用件
-标准件
-工业原材料
-电子元器件及材料
-包装材料
------------------
-CAD/CAM/PDM/PLM
-ERP/制造业信息化
-管理咨询/认证
-服务/培训/工业设计
按产品筛选
----------------------
-本行业全部文章
--------------------
-CAD/CAM软件
-CAE/模拟仿真
-PDM/PLM/C
-EDA/专用CAD
-三维打印机
-三坐标测量机
-三维扫描仪
-CAD硬件/先进制
查看本类全部文章
基于PDM的产品设计过程动态工作流管理
作者:刘艳平 赵武 熊欣
如今,越来越多的企业开始利用PDM (Product Data Management)进行信息和流程管理。为了适应市场的快速变化,满足用户的个性化要求,需要企业在产品设计过程中形成广泛的信息交互及快速传输机制。在制造企业,产品信息是所有信息中最基本的部分,因此PDM系统的开发是企业走向信息化 之路的关键步骤[1]。
工作流管理是PDM系统的重要功能之一。工作流有静态和动态之分,如今许多工作流都是基于静态过程定义的,很难有效处理流程中出现的动态变化。目前许多学者对工作流建模进行了广泛的研究并取得了诸多成果,然而有关工作流程动态变化的问题却没有得到很好地解决,并且相关研究多数只停留在理论阶段,现存的解决方案不能够为管理丁作流变化提供有效的方法,因此有必要研究如何实现实际PDM系统中的工作流程动态变化的问题。
1 PDM简介
PDM是以软件为基础,管理所有与产品相关的信息和所有与产品相关的过程的技术[2],是一种在产品数据与工作流集成思想指导下,以产品数据和过程为中心,科学合理地对企业业务流程、全生命周期产品数据和过程进行管理的集成平台。为了顺应市场需求变化,PDM系统整合管理了产品从设计制造到最终用户支持的所有信息。从用户的角度出发,PDM系统旨在使不同地域和行业的人们参与到整个产品生命周期的各个步骤中来;而从产品的角度来看,PDM系统旨在管理产品从最初概念设计到最终产品成形的所有工程产品数据,其核心思想是设计数据有序化、设计过程优化、资源共享和系统集成。
PDM进行信息管理的两条主线是静态的产品结构和动态的产品设计流程,所有的信息组织和资源管理都是围绕产品设计展开的,主要面向制造型企业,实现对产品相关的数据、过程、资源的一体化集成管理。PDM系统中数据、过程、资源和产品的关系,如图1所示。
图1 产品、数据、过程和资源的关系图
2 PDM系统中的工作流管理
2.1 工作流管理概述
为了完成某项任务,按照一定顺序进行一系列工作的过程即为工作流。根据企业制定的管理规则,PDM系统对产生、修改和使用产品数据的过程进行协调和控制。工作流管理是协调企业组织任务和过程以便获得最大生产效率的技术,一般可分为以下四步:建模、可行性论证、设计实施以及工作流变更。一个工作流的定义可以用流程示意图来形象表示,如图2所示。通过在PDM系统中引人工作流技术,可以使企业相关人员在正确的时间、以正确的方式得到正确的任务,从而保证企业设计过程有计划地进行,监督并及时反映产晶数据的处理情况[3]。
图2 工作流示意图
2.2 工作流管理的主要功能
(1)工作流编辑器。提供过程单元元定义手段,并根据用户的指定将过程单元连接或需要的工作流程,规定了提交工作流程执行的设计对象,如部件、零件、文档等,能够对工作流模板进行查询、修改等操作。(2)工作流管理器,接收工作流编辑器提交的流程定义数据,建立有关人员的工作任务列表,并根据流程的走向记录每个任务列表的执行信息,支持工作流程的异常处理和过程重组。(3)工作流通信服务器,跟据工作流程的进展情况,向有关人员提供电子审批与发放,并通过Email接口技术,进行用户通信和过程信息传递。
2.3 工作流管理的研究及应用情况
到目前为止,大部分的工作流管理系统,如PTC(Parametric Technology Corporation)的Windehill PDM和EDS公司的IMAN都不完美[4]。在经营过程中采用工作流管理系统的企业仍然只是一小部分,而且这些系统的应用范围也很有限,并不能全方位地支持企业的关键业务流程。工作流管理的研究成果中,比较著名的有IBM公司开发的基于持久消息队列的分布式工作流管理系统——Exotica/FMQM,佐治亚大学;计算机系研究开发的具有自适应能力的工作流管理系统——Meteor、基于分布式主动数据库技术的工作流管理系统——WIDE以及基于状态与活动图的工作流管理系统[5]。
3 产品设计过程中的动态工作流管理
目前大部分工作流管理模型是基于静态过程定义的,一经建立就必须完成或者重新开始,很难有效地处理流程中出现的动态变化。—个动态的工作流在执行期间有可能发生变化,透常是由于以下两种原因[3]:(1)在设计期间由于缺乏认知导致的工作流程规范不完整;(2)在工作流执行期间发生错误或异常。这些都能够导致系统崩溃,降低服务质量以及产生一系列矛盾等等。
一旦工作流发生变化。新的工作流模板将被定义,相应的工作流实例将被建立。在应用新的工作流模板之前,依照旧模板建立起来的实例不得不停止或重启,这可能会导致运行时期信息的丢失,更重要的是,一些已经完成的任务将被不必要的重新执行,此时,如果工作流实例很复杂且有大量的外部协同者参与,企业将付出较高的成本。
支持工作流动态变化的管理系统可分为两种:(1)基于实例,即直接更改有关实例;(2)基于模板.即按照新的工作流模板重启实例,同时尽可能减少有关节点的重复执行。
在动态工作流研究领域,许多学者认为工作流模型应该建立在—套正式且尽可能简单的理论之上,提出了一些不同的技术手段,如集成外部工具、异常处理方法(利用ECA规则)、移交策略描述语言、Reflection方法、SEAM(state-entity-activity-model)以及UML活动图等[6]。然而,目前大多数工作流建模技术都是基于Petri网(PN-Petri Net)或有向网络图(DNG-Direct Network Graph)的。下面将针对有向王络图,对工作流动态变化判别方法进行讨论。
4 基于DNG的工作流动态变化判别方法
4.1 基于DNG工作流动态变化判别方法
基于DNG的工作流建模方法广泛应用于工业级工作流平台。新加坡国立大学机械工程系的Z.M.Qiu提出了一种基于DNG的工作流动态判别方法,主要思想综合如下:
将—个实例的所有节点归类为已提交节点、未完成节点和已完成节点,在执行器件节点的状态将发生变化,一个节点不同状态间的转换,如图3所示。—个工作流实例发生以下变化时将被停止:(1)添加,去除节点;(2)添加/去除连接;(3)更改节点属性。更改蒋的工作流模板将重新启动工作流实例。
图3 节点不同状态转换图
为方便动态工作流管理,主要依据以下三个条件对节点进行判断,依次对这三个条件判断完成后,才能确定节点n在新工作流中是否需要重新执行:(1)节点的n的属性和连接(触发条件)是否发生了变化,即节点是否为未变化节点;(2)节点n的任务是否已经完成,即节点是否为已完成节点;(3)节点n的所有前节点是否都不需要重新执行,即节点的所有前节点是否都为可绕开节点。
4.2 方法实现
在上述判别方法的基础上,根据判断节点n是否需要重新执行的三个条件建立了节点判断流程,如图4所示。根据节点判断流程图,利用递归方法实现计算机程序化,遍历所有节点即可找出不需要重复执行的节点。
图4 节点判断流程
4.2.1 节点识别方法
(1)识别未变化节点。节点属性发生变化,一个节点的属性主要包括用户和任务,如果任务发生变化,此节点被判定为变化节点,而用户发生变化将被判定为未变化节点。对于任务,应首先对其版本进行管理。以便进行版本查询。任务是否发生变化可以通过比较其版本和路径进行判断。
节点连接发生变化,如图5所示,两种节点连接发生变化的情况。显然如果某个节点的所有输入输出均未发生变化,则此节点的连接未发生变化。若使连接、相同,需同时满足以下条件:①c1r=c2r;②c1ns=c2ns;③c1ne=c2ne。其中r表示连接响应(接受或拒绝),ns表示连接起始节点。ne表示连接终止节点。当节点属性和节点连接均未发生变化时。即可判断节点n为未变化节点。
图5 节点连接变化举例
(2)识别已完成节点。在工作流管理系统中,通过访问节点的状态属性即可识别已完成节点。
(3)识别可绕开节点。可绕开节点即节点任务在旧工作流实例中已经完成,并且在新工作流实例中仍然有效,因此不需要重复执行的节点。如果某个节点之前插入了新节点,那么此节点将被重新执行。—个节点是否需要重新执行将受到其所有输入连接的影响。判断一个节点n为可绕开节点,需满足三个条件:①节点n的属性未发生变化;②节点n为已完成节点;③节点的所有前节点都为可绕开节点。
4.2.2 程序实现步骤
根据节点判断流程图,利用Delphi编程语言开发程序,数据库采用SQL Server 2000,具体实现步骤如下:
(1)数据库设计,主要用来保存各个节点的相关信息以及建立好的流程模板的相关定义;(2)工作流程及相关数据定义,包括过程的名称、创建者、创建时间以及活动列表等;(3)启动PDM系统中的工作流管理模块;(4)读取一个流程实例;(5)用户针对此实例新建一个工作流模板,并将其保存于相应的引擎服务器中;(6)将旧工作流实例保存,同时将新工作流模板添加到流程中;(7)依照节点判断流程,利用递归方法遍历所有节点,找出流程实例中的所有可绕开节点,并进行标记;(8)启动新工作流实例,将更改后流程中的所有未标记节点,即未完成节点发送给目标用户。
将此程序应用于PDM系统中工作流管理模块的开发,除了能够处理基于单个工作流模板的工作流实例外,通过告知工作流管理系统之前或当前的工作流模板,也可以对个人工作流实例进行处理。此外,利用工作流版本管理来记录工作流模板和实例的变化也是必要的。
5 应用实例
将上述程序方法与某企业的实际情况相结合,对其PDM系统工作流管理模块进行了开发。效果良好。如图6所示,为工作流动态变化之前某企业设计图纸审批流程,为串行和并行相结合的—个流程实例,其中已完成节点用圆形框表示,未完成节点用矩形框表示。
当此实例应用一段时间后,企业提出需要在批准节点之前添加标审节点。虽然在旧工作流实例中批准节点为已完成节点,但是由图5可知。在批准节点之前加入标审节点后,批准节点的节点连接发生了变化,根据图4节点判断流程可知,批准节点在新工作流实例中为变化节点,需要重新执行,因此在图7中用矩形框表示。而启动节点、设计节点、校对节点、审核节点以及会签节点的节点属性和节点连接均未发生变化,且全部满足第四节所述的三个判断节点是否需要重新执行的条件,因此在新工作流实例中不需要再重新执行,仍然用圆形框表示。工作流动态变化之后的流程实例,如图7所示。
图6 审批流程动态变化之前
图7 审批流程动态变化之后
6 小结
(1)通过运用此方法对PDM系统中的工作流进行管理,可以提高工作流管理系统的柔性,使其能够更好地适应工作过程中的动态变化,提高企业的工作效率和生产管理水平。
(2)讨论了工作流管理在PDM系统中的重要作用,特别强调了动态工作流管理的重要性。同时介绍了一种基于DNG的动态工作流建模方法,在此基础上开发了计算机程序,并将其应用于某企业PDM系统工作流管理模块的开发,证明了该方法的实用性,在很大程度上提高了企业的效率和竞争力。
参考文献
1 Buyun Sheng,Jiangxia YIL Research on the Modeling ofPDM System Based on Object-oriented Technique. The 8th International Conference on Computer Supported Cooperative Work in Design Proceodings 2003:747-752
2 庞士宗,肖平阳等.产品数据管理(PDM)——现代企业信息化管理与集成的理想平台[M].北京:机械工业出版社。2001
3 FAN Xiaodong,Xiong Guangleng,FAN Wenhui Study On Improvement of Worldlow Management System of PDM.IEEE SMC,2002:1-2
4 Lorenzo Capra,Walter Cazzola.A Reflective PN-based Approach to DynamicWorkflow Change.Ninth International Symposium on Symbolic and Numeric Algorithms for Scientific Computing.2008:533-540
5 于万钧.工作流管理技术研究:[博士学位论文]吉林:吉林大学,2004.10-17(end)
文章内容仅供参考
(投稿 )
(如果您是本文作者,请点击此处 )
(5/28/2009)
对 PDM/PLM/CAPP 有何见解?请到 PDM/PLM/CAPP论坛 畅所欲言吧!