近期热点
·ERP走向深入访谈之六:找准目标,协调好全局与局部
·ERP走向深入访谈之五:ERP是工具,理解、应用是基础
·ERP走向深入访谈之四:让数据变为信息
·ERP走向深入访谈之三:深化应用,业务蓝图是关键
·企业知识门户建设和趋势有奖调查
·Inventor夺宝(第二期)
 相关文章
·航空工业现代集成制造系统设计
·基于Solid Edge的集成化CAD/CAPP系统开发
·工作流管理技术支持下的PLM系统构建
·绿色集成制造系统中的CAPP浅析
·基于Web的工作流管理系统研究
·新一代信息流技术-工作流管理技术
 相关博客
 相关新闻
·
“纺织行业现代集成制造系统发展战略”研究报告通过评审
·
Lotus新推工作流管理软件Workflow
 相关热贴
·[讨论]项目管理与工作流管理如何协同管理
·集成制造系统体系与架构
·帮忙,需要工作流管理系统资料。
·工作流管理、协同与ERP
·文章评论:浅谈企业工作流管理系统
·现代集成制造(CIM)
 相关商城商品
· 现代集成制造系统导论—概念、方法、技术和应用
· 工作流管理技术基础
 
 
当前位置:制造业与信息化 -> CIMS
 
现代集成制造中的工作流管理技术研究
发表时间:2000-10-2 于戈 宋宝燕 田文虎 王国仁 郑怀远   来源:CIMS杂志
关键字:集成制造 工作流管理 

    CIMS的核心内容是信息集成、过程集成和企业集成。过程集成中采用的并行工程技术的目标之一就是要将新产品的设计和开发中的各种工作流尽可能地并行进行,以缩短产品开发周期,降低开发成本,实现优良的性能价格比,提高企业竞争力。因此,研究和开发工作流管理技术就成为过程集成和并行工程的关键技术之一。

    1 工作流技术发展状况

    工作流是描述一个企业或组织的业务处理活动过程的模型。例如,一个产品的设计过程是由绘图、仿真、审定、发布等活动组成的工作流,它包含设计人员、CAD系统、工程数据库系统等多个人和系统的交互操作。如果完全依靠人工干预进行管理,其效率将非常低,对于复杂的工作流来说,甚至是不可能的。因此,为了对业务活动(工作流)进行有效的管理,必须建立工作流管理系统(Workflos Management System,WFMS)。
    工作流管理一直是企业界和学术界关注的热点领域。1993年,国际上专门成立了工作流管理联盟(WfMC),以便对工作流实现标准化管理。按照WfMC的定义,一个WFMS就是能完整地定义和管理工作流,并按照计算机表示的工作流逻辑规定的次序,以执行软件的方式执行工作流[1]。从广义上讲,工作流管理系统分为四种:计算机支持协同工作(CSCW)、商用工作流管理系统、商用事务管理系统和事务性工作流管理系统[2]。CSCW依靠人工干预进行协调和控制,以保证工作流执行的正确性和可靠性;商用工作流管理系统提供面向系统的任务控制和协调机制,但是,在出现系统故障或执行失败时需要人工干预;商用事务管理系统可支持事务的基本性质,但不能支持工作流的协作要求;事务性工作流管理系统完全由系统来进行任务控制、任务协调、保证工作流执行的正确性和可靠性。这种系统将事务处理系统的恢复和并发控制能力与商用工作流管理系统的分布事务控制和协调能力结合起来。目前,已推出的工作流管理软件产品都属于商用工作流管理系统。因此,为了满足CIMS复杂应用的需要,研究和开发事务性工作流管理技术是必要的。
    早期的工作流研究和开发主要是集中在CSCW方面,并已取得了很大的进展,市场上有很多可用的CSCW产品,而学术界是把重点放在事务性工作流上。当前的研究重点之一是放在先进事务模型(Advanced Transaction Model,ATM)问题上。传统的事务模型支持事务的ACID性质严重地限制了先进应用系统的可使用性,如分布异构环境中的多数据库系统、工程设计中的长事务系统及各种工作流管理系统等。ATM可分为扩展事务模型和松弛事务模型。扩展事务模型的特点是将事务定义为子事务组成的分层结构,从而可实现不同的执行策略和控制协议,多级事务模型[3]和嵌套事务模型[4]是两种典型的扩展事务模型;松弛事务模型的特点是有选择地放松事务对ACID性质的要求,弹性事务模型是一种典型的松弛事务模型[5]。但是,在工作流管理系统中直接采用ATM是不可行的,因为实际的工作流事务过于复杂,难以用简单的ATM来描述。通常,需要根据不同应用领域的特点,建立专门适用的模型。例如,IBM公司制定了Exotica计划[6],研究如何将高级事务模型应用于其产品FlowMark中。
由于工作流应用环境大多是在复杂的分布异构环境中,如企业内部网或因特网,因此应用最新的分布对象处理技术和Web技术,实现工作流管理成为当前研究的重点。有影响的工作流原型系统有:
    1)美国佐治亚大学研制的Meteor系统[7]该系统是一个支持多范型的工作流管理系统,主要用于处理医疗保健应用。多范型是指该系统能够支持分布异构环境下的企业内和企业间的各种工作流。这些工作流可以是数据库管理系统和分布式事务处理系统中的事务,也可以是EDI等特殊应用。Meteor系统可以在Web或CORBA环境下运行。
    2)美国普度大学开发的CORBAflow系统[8]该系统提出了基于CORBA的体系结构,支持跨平台的异构分布系统集成,支持弹性ACID性质;扩展了IDL语言以定义事务性工作流中的补偿事务。
    3)土耳其中东大学开发的METUFlow系统[9]该系统提出了一种基于CORBA环境的工作流服务,包括基于ACTA扩展事务模型的工作流模型、块结构化定义语言、工作流调度管理和并发控制机制等。
    工作流的概念早在70年代就已提出,许多概念来自于办公自动化、文档管理、计算机支持协同工作(CSCW)等领域。至今约有300个称为工作流工具的商品化软件,但只有数十个是真正的WFMS软件。一些著名的WFMS产品有:
    (1)IBM公司的FlowMark系统[9]该系统由对象数据库管理系统ObjectStore支持。主要组件包括服务器、建立客户器、运行客户器和程序执行客户器。服务器负责与数据库交互及协调工作流执行;建立客户器提供用于设计工作流的图形接口;运行客户器提供工作表方式的用户接口;程序执行客户器提供API调用方式的应用接口。
    (2)Action公司的ActionWorkflow系统该系统由微软的SQL服务器或Lotus Notes支持,包含三个基本组件:①管理系统内核用于集成和管理工作流事务;②分析器提供设计工作流的专门工具;③应用建立器用于将工作流定义转化成可执行的过程。此外,还提供辅助工具,如报表器用于查询工作流的进展状态。
    (3)Sigma图象系统公司的OmniDesk系统它使用提供ODBC接口的数据库。其中,路径管理器用于工作流管理和负载平衡;路径建立器用于定义路径逻辑;表格建立器用于创建工作流接口。虽然OmniDesk系统主要是为图象文档管理设计的,但是也可以管理其他类型的工作流。
    (4)Wang公司的OPEN/workflow系统该系统建立在自含的数据库引擎之上。系统分为数据库服务、图形过程建立器、集成工具箱、报表工具。数据库服务提供基本的完整性、安全性、并发控制、恢复和管理功能;图形过程建立器用于定义过程;集成工具箱提供应用之间交互需要的API调用和通信服务;报表工具如查询建立器和报表建立器用于访问有关过程执行的信息.
    实际上,大多数产品的开发由于没有清楚地理解用户的需求,而不能满足用户的迫切需要,特别是像CIMS这样的工程应用。许多工作流系统主要是解决共享和协作(某些问题仍未很好解决,如异构平台环境、多媒体数据),而像性能、可伸缩性、可靠性对于复杂应用系统来说至关重要的问题,现有工作流软件并没有考虑。主要原因是,这些系统的建立不是基于在线事务处理(OLTP)技术和数据库技术,只是使用数据库做底层存储,因而在这些领域缺乏技术成熟性和系统健壮性。

    2 现代集成制造与工作流管理

    一个CIMS企业的所有业务处理活动都是由工作流组成的。作为CIMS中最重要的过程集成技术之一的并行工程,就是一个很好的工作流实例。从概念设计、详细设计、工艺设计、制定材料单、工艺分析、原型制造及测试、到生产制造,构成了非常复杂的工作流,其中既包含控制流,又包含数据流;既涉及多个人的操作,又涉及多个系统的操作。一个 WFMS具有说明、执行、报告和动态地控制的功能(包括多人和系统的工作流)。因此,利用WFMS可以为并行工程中涉及的产品信息、开发活动、企业资源和组织机构等方面分别建立相应的工作流模型,并在模型间建立映射关系,将各阶段有效地组织起来,然后利用工作流管理系统的仿真能力,验证这个工作流的正确性和有效性,为业务过程重组(BPR)提供依据,这些技术正是并行工程中的关键技术。再有,WFMS强调任务间的协同工作(相互依赖,包括控制和数据依赖),这也正是并行工程的核心内容之一的协同工作环境。
    并行工程多是从控制和调度方面考虑制造过程的并行性的,较少考虑并行过程中的事务性、数据一致性、系统可用性和可靠性,然而,这几点在WFMS中已有充分的体现。WFMS不仅能支持并行地组织、协调制造过程的制造步骤,而且还可利用ATM保证制造过程中的事务原子性、数据一致性,通过弹性事务和补偿事务机制,提供系统高可用性和高可靠性。可见,并行工程和工作流管理系统是相辅相成的,并行工程为WFMS提供运行场所,WFMS为并行工程提供技术支撑。另一方面,PDM和CAx等可以作为WFMS的应用(任务)被集成到WFMS中,由WFMS统一、自动地调度这些系统,可增加整个系统的并发性、正确性,提高系统效率。因此,工作流管理是实现CIMS企业业务处理自动化和集成化的关键技术之一。
    由于已有的绝大多数WFMS产品和原型系统的设计是面向普通的办公室应用,而不是面向CIMS工程应用的,因此存在以下不足:①工作流模型只能描述如办公自动化中电子邮件或文档等简单的工作流,而不能描述工程设计等复杂过程处理;②CIMS系统是复杂的异构环境,现有产品不能提供很好的互操作性。例如,在异构环境中,IBM的FlowMark不提供API接口以支持一个工作流的输出,作为下一个工作流的输入;③CIMS应用是大规模的,一个工作流可能涉及到多个单位和车间,或多个工厂和企业,例如,在虚拟制造应用中,可能包含成百上千个用户,覆盖广域网络中的数十个场地,上百台计算机系统。大多数现有工作流软件只是设计为一种协作工具,适用于小群体之间业务的工作流,在体系结构上存在缺陷,缺乏可伸缩性;④CIMS应用要求系统具备非常高的可用性和健壮性。现有工作流软件只适合于小团体和轻负载,缺乏有效的后备机制,不具备强的故障恢复能力,达不到CIMS应用要求。
    为了进一步研究开发支持应用集成的CIMS工作流管理技术,我们认为,需要解决以下关键技术:
    (1)面向CIMS的工作流建模技术包括工作流模型和定义语言。如何采用弹性事务模型、分层事务模型和工程数据模型相结合的方法,设计出一种适合于CIMS工程应用的工作流模型。
    (2)基于CIMS信息集成平台的工作流管理系统体系结构CORBA软件总线提供了良好的平台透明性和分布透明性,以及分布对象操作能力,如何充分利用CORBA软件总线和信息集成平台,实现一个高效的工作流管理系统。
    (3)面向分布对象的工作流管理和执行技术CORBA软件总线系统提供了对象引用、启动和联编机制。工作流管理与执行机制需在此基础上完成作为对象任务的创建、调度、执行、提交或取消,保证工作流的正确性和可靠性。还需要考虑在CORBA软件总线上增加新的公共服务,如持久性对象仓储服务、故障恢复服务等。
    (4)面向CIMS目标产品的集成技术工作流管理系统是一种中间件技术,适合于任何计算机分布处理系统,在CIMS应用集成涉及的有关系统中,如PDM、MRPII等,都需要这方面的集成技术。

    3 ScopeWork工作流管理系统

    为了满足CIMS集成框架和并行工程的迫切需要,我们正在开发和研制新一代CIMS工作流管理系统。该系统建立在我们完成的基于CORBA的CIMS信息集成平台系统SCOPE上[10],故命名为ScopeWork。其设计目标包括:①支持异构计算环境下的分布式客户/服务器体系结构。对系统中的所有用户提供分布透明性、跨平台透明性、异构数据透明性;②支持工作流任务在企业内和企业间的协调和控制,保证工作流的正确性和可靠性;③支持各种类型(事务型和非事务型)的任务和应用;④支持和利用现行的数据库管理系统和已有的数据库资源;⑤支持可靠的安全授权管理;⑥在各个自治的企业机构的数据交换过程中,尽可能地采用标准化(如STEP标准、EDI标准);⑦对系统中的所有用户提供标准的友好用户接口,方便修改,支持快速原型法,提供良好的可伸缩性和可扩展性。
    因此,该系统的主要功能包括:①具有符合WFMC的工作流模型,能完全描述CIMS环境下各种工作流;②提供CIMS工作流定义语言SWDL,该语言在CORBA的IDL语法基础上扩充任务定义语句;③提供基于CORBA软件总线的工作流管理软件插件;④实现支持多种工作流的应用适配器插件,包括关系数据库应用系统适配器插件、工程设计系统适配器插件等。
    由于CIMS是分布、自治和异构环境中的典型应用,大量遗产系统分布、独立地运行于企业中,这对我们设计和开发CIMS环境下的工作流管理系统提出了新的要求。故其目标之一就是将这些自治系统有机地结合起来,增加系统间的一致性。为了处理这些应用系统间的异构性,ScopeWork系统采用CORBA软件总线和Scope信息集成平台作为系统的基础结构。CORBA是为解决分布式应用的互操作性问题而制定的标准,在处理系统异构性领域中越来越受到人们的关注。
    通过使用CORBA的ORB软件,可以将企业中的自治系统进行包装和接口标准化,从而屏蔽由于平台或语言等带来的系统间的异构性;使用CORBA软件,还可以从复杂、烦琐的系统通信中解脱出来,由CORBA的ORB负责通信的具体细节,从而使我们更加关注所需的功能。在ScopeWork中,无论是工作流调度器、监控器,还是应用适配器、仓储服务,都是以CORBA服务器形式存在的。这样,不但很自然地符合企业实际环境,而且还有以下好处: ①弹性失败,不会因为某个场地失败而导致这个系统瘫痪;②消除中央化数据库的需要,增强系统的可用性和性能;③系统扩展能力强,易于继承遗产系统,保护用户的先前投资.
    基于软件总线思想的ScopeWork系统总体结构设计如图1所示。该系统主要包括工作流定义器、工作流调度器、工作流监控器、持久对象仓储管理器、并发控制器、故障恢复器、事件公告器等七种软件插件插接在CORBA软件总线上。下面简要说明各主要功能模块的设计思想和实现方法。

    3.1 工作流定义和生成
    一个工作流是由若干个为完成特定目标的任务和相关数据组成。任务是最基本的执行单位,任务间存在执行次序和依赖性等约束关系。执行次序规定了任务间启动的先后次序,分为并行方式和串行方式。依赖性规定了在发生提交和废弃时,任务之间的约束关系。根据CIMS的工程应用特点,并行执行的依赖类型分为与、或和异或;串行执行的依赖类型分为级联、应急和循环。还提供一种条件依赖,以用于说明更复杂的依赖关系。为了描述任务间的复杂约束关系,将具有相同关系的任务定义为任务组,若干个任务组构成工作流。因此,一个工作流模型可表示为有向图、节点表示任务、有向边表示控制流和数据流。控制流由任务间的约束关系定义;数据流由任务间的输入输出定义。
    为了定义工作流过程,ScopeWork将提供工作流定义语言(SWDL)。结合CORBA分布对象模型,每个任务定义为具有特定行为和数据结构的对象。该语言将在CORBA接口定义语言IDL的基础上进行扩充,定义任务对象类,支持对相应约束条件和约束关系的定义。而数据流由IDL语言中的入口、出口参数定义。此外,ScopeWork将提供一套工作流过程与系统交互的库函数联入任务的运行代码中,以实现任务调度等控制。

    3.2 工作流调度、执行和监控
    在每个任务启动后,系统为其生成一个实例,并分配一个唯一标识。在系统持久性对象仓储中,根据工作流定义信息,建立和维护一个任务表,保存每个运行任务的标识、类型、依赖条件和状态。工作流调度器接受到一个任务后,首先保存该任务的标识和数据对象引用,然后判断依赖条件和依赖关系。如果成立,则任务递交给应用适配器去执行。同时启动一个超时检测机制,如任务在规定的时间内不能完成,则认为执行失败。工作流监控器负责检查和报告工作流运行状态,以及系统中各场地的状态。

    3.3 工作流并发控制
    数据库系统中采用的常规并发控制技术(如2PL)在不适合工作流系统的情况下,如果采用2PL协议,则所涉及的资源将被长期阻塞,而导致整个系统可用性极低。我们采用分层事务模型的方法,提前提交子事务(任务),释放被封锁住的资源,避免底层子事务(任务)冲突造成的阻塞。这样,任务的正确性由任务调度系统负责,工作流的正确性由工作流系统负责。并且,在定义工作流时,用户必须向系统提供关于工作流的正确性的语义信息。

    3.4 工作流故障恢复和异常处理
    作流执行失败的情况可分为两类:一类是因系统故障(如掉电、断网)导致工作流执行中止;另一类是执行条件不成立或授权代理(人或计算机)的干预,导致工作流执行中止或取消已提交的任务。当出现执行失败时,工作流停留在不一致的状态上。为了将其恢复到正确的状态上,则有两种手段:一种是采用应急任务,向前恢复;另一种是采用补偿任务,向后恢复。为此,可利用持久性对象仓储服务,为工作流的执行建立日志,记录工作流当前的和历史的执行状态。此外,在工作流执行过程中,还可能出现其它异常情况,并且大多数情况是不可能在设计工作流时预测的,如数据冲突、人员变化、规则调整等。因此,需要设置公告处理机制,当出现系统不能处理的异常时,一方面保存好用于以后恢复的所有状态,另一方面报警通知操作人员进行人工干预。

    4 结语

    工作流管理技术是新一代CIMS现代集成制造系统中的关键技术之一,尚存在许多难题有待于去解决。我们以863/CIMS主题专家组制定的CIMS集成框架结构和并行工程为背景,设计了一个基于CORBA信息集成平台的CIMS工作流管理系统,力图成为集成框架结构与并行工程的基础设施。此外,该系统在所有涉及自动化信息处理的复杂计算机系统中(如电子商务系统、银行业务系统、医疗保健系统、电信业务系统等)都有很大的需求。因此,我们在系统设计与实现过程中,既强调先进性,又注重实用性,以进一步开发CIMS目标产品为最终目的,促进我国新一代CIMS事业的发展。

 责任编辑:王玥