CN102254234A - 业务流程的实现方法和工作流引擎 - Google Patents
业务流程的实现方法和工作流引擎 Download PDFInfo
- Publication number
- CN102254234A CN102254234A CN2010101843035A CN201010184303A CN102254234A CN 102254234 A CN102254234 A CN 102254234A CN 2010101843035 A CN2010101843035 A CN 2010101843035A CN 201010184303 A CN201010184303 A CN 201010184303A CN 102254234 A CN102254234 A CN 102254234A
- Authority
- CN
- China
- Prior art keywords
- node
- workflow
- behavior
- operation flow
- workflow engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种业务流程的实现方法和工作流引擎,该方法包括以下步骤:使用工作流引擎描述业务流程,其中,工作流引擎包括工作流节点,每个工作流节点用于描述业务流程的一个环节,工作流节点包括:行为,用于描述环节的行为;状态,用于描述环节的状态;工作流节点的行为与状态之间的关系,用于描述环节的行为与状态之间的关系;工作流节点的行为用来驱动工作流节点的状态的变化;运行工作流引擎以实现业务流程。通过本发明降低了系统的开发周期和维护成本,保障了工作流引擎在市场中的竞争力,提高了用户体验。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种业务流程的实现方法和工作流引擎。
背景技术
在当今的信息技术时代,办公自动化已经成为一个企业做强、做大的基本前提,而作为一个高效运作的企业,其内外必然存在各种各样的业务流程。将这些实际的业务流程与办公自动化技术相结合,就会形成各式各样的电子工作流流程,而这些电子工作流流程往往又存在于很多不同的应用系统中。由于与企业相关的业务流程是以市场需求为导向的,而市场是不断变化的,这也就意味着企业在发展过程中的工作流流程也可能是不断变化的。所以,如何快捷、方便且低成本的来实现这些电子工作流应用系统,如何保证这些工作流应用系统对市场需求变化的响应能力,将会成为一个企业保持市场竞争力的重要因素。
在传统的电子工作流解决方案中,通常是采用耦合的方式,即,根据实际的业务流程,用特定的IT技术进行实现。但是,采用这种方式实现的电子工作流应用系统的业务流程与技术手段耦合度大,需要开发人员不仅要有较深的技术知识,还要熟悉业务流程。并且企业往往都存在很多属于不同的应用系统的业务流程,如果每个应用系统都去实现这样一套工作流应用系统的话,势必存在成本高、周期长、难以维护等问题。另外,这样的工作流应用系统往往是根据最初的业务流程进行实现的,所以,如果后续流程一旦发生变化,则工作流应用系统也可能面临较大的调整。
发明人发现上述的相关技术中,工作流引擎普遍存在与业务流程耦合的情况,即,根据特定领域的业务流程得到的工作流引擎,也就是说,用于绘制业务流程的节点并不是完全独立与业务的,很多都是与业务相关的节点,没有完全从业务流程中抽象出来,这样就限制了工作流引擎的应用范围,使得其在维护上也存在难度。并且,工作流引擎的扩展性不强,在实际的工作流应用中无法满足、或者不能较好地适应业务流程的变化,当业务流程一旦发生变化,系统也需要做相应的更改,从而增加了系统的开发成本和维护成本等。
发明内容
本发明的主要目的在于提供一种业务流程的实现方案,以至少解决上述的问题至少之一。
为了实现上述目的,根据本发明的一个方面,提供了一种业务流程的实现方法。
根据本发明的业务流程的实现方法包括以下步骤:使用工作流引擎描述业务流程,其中,工作流引擎包括工作流节点,每个工作流节点用于描述业务流程的一个环节,工作流节点包括:行为,用于描述环节的行为;状态,用于描述环节的状态;工作流节点的行为与状态之间的关系,用于描述环节的行为与状态之间的关系;工作流节点的行为用来驱动工作流节点的状态的变化;运行工作流引擎以实现业务流程。
进一步地,运行工作流引擎以实现业务流程之前,还包括:配置工作流引擎与应用系统之间的交互方式;应用系统通过该交互方式触发关于业务流程的操作。
进一步地,交互方式包括事件触发机制。
进一步地,运行工作流引擎以实现业务流程之前,还包括:根据接收到的应用系统的消息选择与其对应的接口;通过该接口完成应用系统对业务流程各个环节的控制。
进一步地,在应用系统的消息为执行业务流程的行为的情况下,通过接口完成应用系统对业务流程各个环节的控制包括:判断业务流程的行为的权限和有效性,其中,有效性包括当前状态下是否允许执行业务流程的行为。
进一步地,使用工作流引擎描述业务流程包括:将应用系统的权限模型转换为工作流引擎的权限模型,工作流引擎的权限模型用于对工作流节点的行为进行控制。
进一步地,使用工作流引擎描述业务流程之前,还包括:定义工作流节点的类型包括人工节点、自动逻辑节点和自动业务节点,其中,自动逻辑节点包括以下至少之一:条件节点、分支节点、分发节点、会合节点、子流程节点。
为了实现上述目的,根据本发明的另一方面,还提供了一种工作流引擎。
根据本发明的工作流引擎,包括:描述模块,用于使用工作流引擎描述业务流程,其中,工作流引擎包括工作流节点,每个工作流节点用于描述业务流程的一个环节,工作流节点包括:行为,用于描述环节的行为;状态,用于描述环节的状态;工作流节点的行为与状态之间的关系,用于描述环节的行为与状态之间的关系;工作流节点的行为用来驱动工作流节点的状态的变化;执行模块,用于运行工作流引擎以实现业务流程。
进一步地,描述模块包括:配置模块,用于配置工作流引擎与应用系统之间的交互方式。
进一步地,描述模块还包括:权限转换模块,用于将应用系统的权限模型转换为工作流引擎的权限模型,工作流引擎的权限模型用于对工作流节点的行为进行控制。
通过本发明,采用工作流节点描述业务流程的环节的方式,解决了相关技术中工作流引擎与业务流程耦合度大而导致系统扩展性低的问题,使得开发人员可以通过自行定义来确定工作流引擎的处理机制,根据实际的业务需求来定义业务流程,扩展了工作流引擎的应用领域,降低了系统的开发周期和维护成本,保障了工作流引擎在市场中的竞争力,提高了用户体验。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的业务流程的实现方法的流程图;
图2是根据本发明实施例的工作流引擎的结构框图;
图3是根据本发明优选实施例的工作流引擎的结构框图;
图4是根据本发明实例1的工作流引擎系统的结构框图;
图5是根据本发明实例2的工作流引擎系统的结构框图;
图6是根据本发明实例3的工作流引擎系统的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1是根据本发明实施例的业务流程的实现方法的流程图,如图1所示,该方法包括以下步骤:
步骤S102,使用工作流引擎描述业务流程,其中,工作流引擎包括工作流节点,每个工作流节点用于描述业务流程的一个环节,工作流节点包括:行为,用于描述环节的行为;状态,用于描述环节的状态;工作流节点的行为与状态之间的关系,用于描述环节的行为与状态之间的关系;工作流节点的行为用来驱动工作流节点的状态的变化;
步骤S104,运行工作流引擎以实现业务流程。
通过本发明,采用工作流节点描述业务流程的环节的方式,解决了相关技术中工作流引擎与业务流程耦合度大而导致系统扩展性低的问题,使得开发人员可以通过自行定义工作流节点来确定工作流引擎的处理机制,从而实现根据实际的业务需求的业务流程,扩展了工作流引擎的应用领域,降低了系统的开发周期和维护成本。
优选地,在步骤S102之前,还包括:定义工作流节点的类型包括人工节点、自动逻辑节点和自动业务节点,其中,自动逻辑节点包括以下至少之一:条件节点、分支节点、分发节点、会合节点、子流程节点。
例如,人工节点可以表示在业务流程中需要人工参与的节点,即,需要有人机交互过程的节点,在具体实施过程中,根据不同的业务特点可以对人工节点进行相应的功能配置;自动业务节点可以表示业务含义,同时,该节点不需要人为参与,由系统自动执行,但是,会在业务的历史记录中有相应的记录;自动逻辑节点可以表示业务流程流转过程中的逻辑控制,例如,条件判断、分支处理、分发处理、会合处理等,但是,这些过程的数据不会出现在业务的历史记录中。
本优选实施中,通过定义工作流节点的类型使得工作流节点可以更好地描述业务流程的处理逻辑,从而使得工作流节点与业务流程的各个环节的匹配度升高,提高了系统的适应能力。
优选地,在步骤S102中,将应用系统的权限模型转换为工作流引擎的权限模型,工作流引擎的权限模型用于对工作流节点的行为进行控制。因为应用系统的权限模型反映了执行业务流程的组织架构的权限关系,所以将应用系统的权限模型转换为工作流引擎的权限模型,使得工作流引擎能够描述执行业务流程的组织架构的权限关系。该方法可以对工作流节点的各个不同的状态下所具有的行为进行有效地控制,从而实现不同用户对工作流引擎的执行进行控制,增加了系统的灵活性。
优选地,在步骤S102中,可以更新以下至少之一,以描述业务流程的环节的变化:工作流节点的个数、行为、状态、工作流节点的行为与状态之间的关系。
通过本优选实施例进一步地体现了业务流程与工作流引擎的解耦,即,在实际的业务需求有变化的情况下,只需要更新工作流节点的个数、行为、状态以及行为与状态之间的关系即可同步更新业务流程的变化,提高了系统的性能。
优选地,在步骤S104之前,配置工作流引擎与应用系统之间的交互方式;应用系统通过该交互方式触发关于业务流程的操作。该方法搭建了工作流引擎与应用系统之间的桥梁,使得用户可以通过应用系统的操作界面来触发工作流引擎的执行,提高了用户体验。
优选地,交互方式包括事件触发机制。该方法实现简单,可操作性强。
优选地,在步骤S104之前,可以根据接收到的应用系统的消息选择与其对应的接口;通过该接口完成应用系统对业务流程各个环节的控制。例如,应用系统的消息可以是简单的数据查询,也可以是执行业务流程的行为等用户操作。具体地,上述接口可以是应用程序接口(Application Program Interface,简称为API)接口、WebSerivce接口、数据接口等。该方法可以为各种不同的应用系统提供与工作流引擎的交互接口,从而支持多种应用系统对工作流引擎的调用,提高了系统的处理能力。
优选地,在应用系统的消息为执行业务流程的行为的情况下,通过接口完成应用系统对业务流程各个环节的控制包括:判断业务流程的行为的权限和有效性,其中,有效性包括当前状态下是否允许执行业务流程的行为。
本优选实施例可以对执行业务流程的行为进行有效地控制,从而使得业务流程可以按照预定的规则进行处理,这样可以明确工作流节点的执行时机,使得工作流引擎的执行更有针对性,提高了系统的准确性和有效性。
需要说明的是,本发明实施例在节点类型上进行了高度的抽象,完全独立与业务,例如,人工节点表示需要人工参与的节点,自动业务节点表示可以代表业务含义的自动节点,自动逻辑节点则是业务流程流转的一些逻辑控制节点,不代表业务含义。另外,在具体实施过程中,本发明实施例除了在节点上完全独立与业务以外,在人工节点的可用行为上,实现了一种可以根据业务流程特点自行定义自己的行为,同时引入节点的状态,通过节点的行为驱动节点的状态,通过节点的状态反过来又能限制节点的行为,从而达到对整个业务流程的逻辑控制,而在相关技术中的工作流引擎是没有这种高扩展性机制的。
图2是根据本发明实施例的工作流引擎的结构框图,如图2所示,该工作流引擎包括:描述模块22和执行模块24,下面对该结构进行详细说明。
描述模块22,用于使用工作流引擎描述业务流程,其中,工作流引擎包括工作流节点,每个工作流节点用于描述业务流程的一个环节,工作流节点包括:行为,用于描述环节的行为;状态,用于描述环节的状态;工作流节点的行为与状态之间的关系,用于描述环节的行为与状态之间的关系;工作流节点的行为用来驱动工作流节点的状态的变化;执行模块24,耦合至描述模块22,用于运行工作流引擎以实现业务流程。
通过本发明实施例,可以实现业务流程与实现的解耦,使得业务流程定义人员在不需要什么技术的背景下能够很好的完成业务流程的定义,扩展了工作流引擎系统的应用领域,降低了工作流应用系统的开发周期。
图3是根据本发明优选实施例的工作流引擎的结构框图,如图3所示,描述模块22包括:配置模块222,用于配置工作流引擎与应用系统之间的交互方式。
优选地,描述模块222还包括:权限转换模块224,用于将应用系统的权限模型转换为工作流引擎的权限模型,工作流引擎的权限模型用于对工作流节点的行为进行控制。
本优选实施例中,用户可以通过应用系统的操作界面来触发工作流引擎的执行,对工作流节点的各个不同的状态下所具有的行为进行有效地控制,增加了系统的灵活性,提高了用户体验。
下面将结合实例对本发明实施例的实现过程进行详细描述。
实例1
图4是根据本发明实例1的工作流引擎系统的结构框图,如图4所示,该工作流引擎系统40包括:工作流引擎和业务流程定义子系统42和工作流引擎后台处理子系统44。下面对该结构进行详细说明。
工作流引擎和业务流程定义子系统42,提供可视化的定义和配置工具,完成对工作流引擎的处理机制、具体的业务流程的流程图。即,最后输出工作流引擎、业务流程等相关的定义和配置数据。
在具体实施过程中,对工作流引擎的处理机制的定义可以包括对工作流节点存在多少行为、状态、以及行为和状态之间的相互关系的定义,同时还负责对工作流引擎的权限的定义,将应用系统的权限模型转换为工作流引擎的权限模型。对具体的业务流程的流程图的定义可以包括根据实际的业务需求对具体的业务流程的流程图定义,通过各种各样的节点类型来定义实际的业务流程环节的类型,在定义流程的过程中,还包括对流程运行过程中应用系统与工作流引擎之间的交互方式的配置。
需要说明的是,因为应用系统的权限模型反映了执行业务流程的组织架构的权限关系,所以将应用系统的权限模型转换为工作流引擎的权限模型,使得工作流引擎能够描述执行业务流程的组织架构的权限关系。
工作流引擎后台处理子系统44,基于工作流引擎和业务流程定义子系统42输出的相关定义和配置数据作为基础,通过对工作流引擎定义数据的解析来确定工作流引擎的工作机制,对业务流程定义数据的解析处理来确定业务流程的处理逻辑以及工作流引擎与应用系统之间的交互方式。可见,工作流引擎后台处理子系统44提供了一种机制,该机制支持动态地定义工作流引擎,动态地定义各种业务流程以及动态地配置工作流引擎与应用系统之间的交互方式,通过这种机制,工作流引擎就可以根据实际的业务应用进行定制,并为应用系统提供流程流转的基础支撑服务。
在本实例中,提供了一种可以让用户根据实际的业务流程自行定义工作流引擎的处理机制、一种可以自行定义业务流程的流程图的机制,一种工作流引擎系统与应用系统之间的事件交互机制,解决了工作流应用系统中业务与实现的耦合度大的问题,缩短了工作流应用系统的开发周期和变化响应时间,降低了系统的维护成本,提高了工作流引擎的可扩展性。另外,通过可视化的定义工具能够进一步提高工作流系统的开发效率和友好性。
实例2
图5是根据本发明实例2的工作流引擎系统的结构框图,如图2所示,工作流引擎后台处理子系统44包括:接口模块442、执行引擎模块444、数据持久化模块446。下面对该结构进行详细说明。
接口模块442,用于对需要集成工作流引擎的应用系统提供丰富的交互接口(例如,API接口、WebService接口和数据库接口等)以及接收来自应用系统的消息。在接口模块442接收到应用系统的请求消息后,经过执行引擎模块444的处理,再将处理结果消息返回给应用系统。这样保证了工作流引擎能够应用于各式各样的应用系统中。
执行引擎模块444,用于对接口模块442中的所有接口进行相应的实现,对应用系统通过接口模块442的请求消息予以响应处理并返回结果。执行引擎模块444可以包括如下子模块:行为与状态模块4442、权限模块4444、事件交互模块4446和流程控制模块4448。
行为与状态模块4442,用于通过对预先定义的行为和状态进行解析处理,完成对行为和状态之间的逻辑处理。例如,在初始状态下,可以提供哪些可用行为,每种行为执行以后流程实例的状态又变化为什么,新的状态下又可以提供那些可用行为。即,通过这种行为与状态的相互作用可以驱动流程实例从一个状态到另一个状态的变迁,同时也能够为应用系统提供不同状态下的不同可用行为。
权限模块4444,用于将应用系统中权限模型转换为工作流引擎的权限模型,以达到可以通过权限来控制流程中所有行为的执行情况的目的。即,工作流引擎通过这种权限模型转换机制来适应各种应用系统的权限模型。例如,提供一个通用的权限位配置,由使用工作流引擎的应用系统人员根据应用系统的权限模型定义工作流引擎权限位(包括使用哪几位,每一位的含义是什么),然后将接入工作流引擎的每个用户根据预先定义权限位初始化相应的权限位数据,形成一个工作流引擎的权限,这个权限便可以在工作流引擎中对流程的每个环节的每个行为进行控制,从而达到工作流的权限控制的目的。
事件交互模块4446,用于在流程的流转过程中提供一种事件触发的机制来达到工作流引擎与应用系统之间的相互交互的目的。这样可以很大程度提高工作流引擎的灵活性,特别是在遇到一些定制化程度高、比较特殊的业务流程时,可以通过应用系统的一些外部行为(或者在流程的执行过程中灵活的控制业务逻辑)来影响流程的执行。另外,该模块还可以提供丰富的事件来供应用系统的使用,从而实现工作流引擎与应用系统之间的交互。例如,流程开始事件,流程结束事件,环节进入前事件,环节进入后事件,某个行为执行前事件和某个行为执行后事件,以及其它事件等。
流程控制模块4448,用于流程的流转控制,即,通过接收用户的行为请求来完成流程在环节内以及环节之间的流程。在具体实施过程中,该模块可以提供丰富的节点类型来支撑流程的流转,例如,人工节点、自动逻辑节点(可以包括条件节点、分支节点、分发节点、会合节点和子流程节点等)和自动业务节点等。该模块通过与接口模块442,行为和状态模块4442,权限模块4444,事件交互模块4446,数据持久化模块446协同工作,最终达到支撑实际的业务流程的流转的目的。
数据持久化模块446,用于将工作流相关的数据进行持久化存储(例如,可以存储在数据库或者其它设备上)以及完成对执行引擎模块444中需要与工作流数据进行交互的各种操作(例如,添加新的数据,变更,删除数据或者查询数据等)。
在本优选实施例中,实现了业务流程与工作流引擎的解耦,这样可以使业务流程定义人员在不需要什么技术的背景下能够很好的完成业务流程的定义,让流程开发人员可以通过自行地定义来确定工作流引擎的处理机制,自行地根据实际的业务需求来定义业务流程,以及自行地根据需求来配置工作流引擎系统与应用系统之间的交互方式,扩展了工作流引擎系统的应用领域,降低了工作流应用系统的开发周期,缩短业务流程变化的响应时间,降低维护成本,最终确保应用系统在市场上的竞争力。
实例3
图6是根据本发明实例3的工作流引擎系统的结构示意图,如图6所示,该工作流引擎系统的实现方法可以包括如下步骤:
步骤S602,在工作流引擎和业务流程定义环境62中定义工作流引擎和业务流程。其中,工作流引擎和业务流程定义环境62是一个可视化的定义工具,可以对工作流引擎的处理机制进行定义(包括业务流程的行为、状态以及他们之间的关系),通过丰富的节点类型可以定义出各种各样的业务流程图,同时还可以在工作流引擎与应用系统之间配置他们的交互方式。通过该工具定义出来的相关数据,将会作为工作流引擎支撑业务流程运行的基础数据,这些数据将会在后面的很多步骤中得到应用。
步骤S604,应用系统通过接口模块442向工作流引擎发送消息以完成一个操作(例如,发起一个新流程实例,执行流程的某个行为等)。其中,接口模块442只是为应用系统提供了接入工作流引擎可用接口的描述(例如,API接口、WebSerivce接口和数据接口等),对于接口的具体实现则在执行引擎模块444中进行相应的实现。
步骤S606,接口模块442将收到的来自应用系统的消息经过初步的筛选以后,再交给执行引擎模块444进行处理,执行引擎模块444将选择对应的接口的具体实现进行处理。如果消息只是简单的数据查询,则可能不需要其内部其它模块的参与,直接调用数据持久化模块446完成数据的查询,然后返回结果。如果消息是诸如执行流程的行为时,则需要执行引擎模块444内部各个模块的协同参与。
步骤S608,对于涉及到流程执行的消息(例如,步骤S606中提到的执行流程的行为),进入流程控制模块4448,流程控制模块4448根据消息的内容,对涉及到的流程实例进行相关数据的查询,从而为后续的步骤做准备。
步骤S610,完成步骤S608中数据的准备和检验后,需要调用行为和状态模块4442和权限模块4444进行判断。在具体实施过程中,可以首先判断该用户是否具有执行该行为的权限。因为整个业务流程的处理过程和权限的控制在工作流引擎和业务流程定义环境62最初的业务流程定义中已经完成,所以,此时如果用户不具有该行为的权限,则不允许用户继续执行。完成权限验证以后,还需要验证行为本身的有效性,即,根据行为状态模块4442中定义的逻辑关系,在当前的这个状态下,该流程是否能够执行这个行为,如果不能执行这个行为,则也不允许用户继续执行。如果这两个条件都满足,则继续进行流程的执行。
需要说明的是,在流程的执行过程中,如果还配置有事件交互,则需要在事件交互模块4446中调用配置的事件响应器进行相应的处理,然后返回到流程的执行过程中来。在执行了流程的行为以后,还需要根据行为与状态模块4442中定义的逻辑关系来动态的改变当前流程实例的新的状态,以及该状态下对应的可用的新的行为和行为的权限。
步骤S610,结束该消息的逻辑处理。
另外,在这个流程的执行过程中,会多次的与数据持久化模块446进行交互,例如,历史步骤数据的记录,新的流程实例信息的变化,新的状态的变化,新的行为的变化和权限的变化等。
通过本优选实例,用户可以根据具体的业务流程对工作流引擎的处理机制进行定义(可以包括流程中可能的所有的行为,状态,权限以及他们之间的关系),结合这些定义,用户再定义出各种具体的业务流程,然后就可以对业务流程中每个环节的行为,行为的权限以及他们的状态进行配置,最后,如果工作流引擎与应用系统还需要动态的交互,则可以通过事件交互的方式进行配置。通过将这些定义和配置的输出数据加载到工作流引擎的后台处理子系统44中,就可以形成一个真正的能够支撑流程执行的工作流引擎系统。
综上所述,通过本发明实施例,解除了业务流程与具体实现的耦合关系,让业务流程人员能够真正的将精力投入业务流程的定义和配置上来,扩展了工作流引擎的应用范围,使得用户可以根据不同的应用系统的业务要求进行快速的工作流引擎的处理方式的定义和流程的定义,同时也增强了工作流引擎与应用系统之间的交互能力,能够方便、快捷地满足很多特定的业务要求,从而最终提升工作流应用系统的开发效率,降低工作流应用系统的维护成本,增强工作流应用系统在面对频繁变化的业务流程时的响应能力。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种业务流程的实现方法,其特征在于,包括以下步骤:
使用工作流引擎描述业务流程,其中,所述工作流引擎包括工作流节点,每个所述工作流节点用于描述所述业务流程的一个环节,所述工作流节点包括:行为,用于描述所述环节的行为;状态,用于描述所述环节的状态;所述工作流节点的行为与状态之间的关系,用于描述所述环节的行为与状态之间的关系;所述工作流节点的行为用来驱动所述工作流节点的状态的变化;
运行所述工作流引擎以实现所述业务流程。
2.根据权利要求1所述的方法,其特征在于,运行所述工作流引擎以实现所述业务流程之前,还包括:
配置所述工作流引擎与应用系统之间的交互方式;
所述应用系统通过所述交互方式触发关于所述业务流程的操作。
3.根据权利要求2所述的方法,其特征在于,所述交互方式包括事件触发机制。
4.根据权利要求1所述的方法,其特征在于,运行所述工作流引擎以实现所述业务流程之前,还包括:
根据接收到的所述应用系统的消息选择与其对应的接口;
通过所述接口完成所述应用系统对所述业务流程各个环节的控制。
5.根据权利要求4所述的方法,其特征在于,在所述应用系统的所述消息为执行所述业务流程的行为的情况下,通过所述接口完成所述应用系统对所述业务流程各个环节的控制包括:
判断所述业务流程的行为的权限和有效性,其中,所述有效性包括当前状态下是否允许执行所述业务流程的行为。
6.根据权利要求1所述的方法,其特征在于,使用工作流引擎描述业务流程包括:
将所述应用系统的权限模型转换为所述工作流引擎的权限模型,所述工作流引擎的权限模型用于对所述工作流节点的行为进行控制。
7.根据权利要求1所述的方法,其特征在于,使用所述工作流引擎描述业务流程之前,还包括:
定义所述工作流节点的类型包括人工节点、自动逻辑节点和自动业务节点,其中,所述自动逻辑节点包括以下至少之一:条件节点、分支节点、分发节点、会合节点、子流程节点。
8.一种工作流引擎,其特征在于,包括:
描述模块,用于使用工作流引擎描述业务流程,其中,所述工作流引擎包括工作流节点,每个所述工作流节点用于描述所述业务流程的一个环节,所述工作流节点包括:行为,用于描述所述环节的行为;状态,用于描述所述环节的状态;所述工作流节点的行为与状态之间的关系,用于描述所述环节的行为与状态之间的关系;所述工作流节点的行为用来驱动所述工作流节点的状态的变化;
执行模块,用于运行所述工作流引擎以实现所述业务流程。
9.根据权利要求8所述的工作流引擎,其特征在于,所述描述模块包括:
配置模块,用于配置所述工作流引擎与应用系统之间的交互方式。
10.根据权利要求9所述的工作流引擎,其特征在于,所述描述模块还包括:
权限转换模块,用于将所述应用系统的权限模型转换为所述工作流引擎的权限模型,所述工作流引擎的权限模型用于对所述工作流节点的行为进行控制。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101843035A CN102254234A (zh) | 2010-05-17 | 2010-05-17 | 业务流程的实现方法和工作流引擎 |
PCT/CN2011/070667 WO2011143949A1 (zh) | 2010-05-17 | 2011-01-26 | 业务流程的实现方法和工作流引擎 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101843035A CN102254234A (zh) | 2010-05-17 | 2010-05-17 | 业务流程的实现方法和工作流引擎 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102254234A true CN102254234A (zh) | 2011-11-23 |
Family
ID=44981482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101843035A Pending CN102254234A (zh) | 2010-05-17 | 2010-05-17 | 业务流程的实现方法和工作流引擎 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102254234A (zh) |
WO (1) | WO2011143949A1 (zh) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999816A (zh) * | 2012-12-05 | 2013-03-27 | 福建邮科通信技术有限公司 | 可个性化定制业务流程的工作流引擎 |
CN103092610A (zh) * | 2012-12-31 | 2013-05-08 | 武汉中地数码科技有限公司 | 一种基于手持终端的电信外线资源一站式查询流程的配置方法 |
CN103227727A (zh) * | 2013-04-10 | 2013-07-31 | 沈阳昭软软件有限公司 | 一种在工作流系统中控制任务发送权限的方法 |
CN103324487A (zh) * | 2013-07-10 | 2013-09-25 | 浙江中新力合控股有限公司 | 一种流程引擎SaaS化的实现方法 |
CN103353957A (zh) * | 2013-06-19 | 2013-10-16 | 浙江中烟工业有限责任公司 | 一种以人为中心的协同型工作流系统实现方法和装置 |
CN103455324A (zh) * | 2013-07-24 | 2013-12-18 | 北京起步科技有限公司 | 一种用于业务开发流程的模型 |
CN104239052A (zh) * | 2014-09-12 | 2014-12-24 | 浙江宇视科技有限公司 | 业务流生成方法及装置 |
CN104281906A (zh) * | 2013-07-11 | 2015-01-14 | 江苏达科信息科技有限公司 | 一种业务流程中的流程引擎实现方法及其流程引擎系统 |
CN104574183A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 跨系统信息处理方法及装置 |
CN105139103A (zh) * | 2015-07-24 | 2015-12-09 | 广州支点网络科技有限公司 | 项目管理的流程流转控制方法、装置及终端设备 |
CN105760180A (zh) * | 2016-03-23 | 2016-07-13 | 浪潮通信信息系统有限公司 | 一种工作流引擎的扩展开发方法 |
CN106384211A (zh) * | 2016-11-08 | 2017-02-08 | 国云科技股份有限公司 | 一种快速构建工作流程的系统及其实现方法 |
CN106648573A (zh) * | 2015-11-04 | 2017-05-10 | 北京广联达正源兴邦科技有限公司 | 工作流业务的控制方法、控制系统和终端 |
CN107133780A (zh) * | 2017-05-02 | 2017-09-05 | 山东浪潮通软信息科技有限公司 | 一种开放式任务集中管理方法和装置 |
CN107784433A (zh) * | 2017-09-26 | 2018-03-09 | 上海虹谷信息科技有限公司 | 两个平行流程互动的建模方法、系统、终端及存储介质 |
CN107844924A (zh) * | 2017-12-18 | 2018-03-27 | 马上消费金融股份有限公司 | 一种控制工作流的执行方法、装置及介质 |
CN109598407A (zh) * | 2018-10-26 | 2019-04-09 | 阿里巴巴集团控股有限公司 | 一种业务流程的执行方法及装置 |
CN109840073A (zh) * | 2017-11-24 | 2019-06-04 | 北京京东尚科信息技术有限公司 | 业务流程的实现方法和装置 |
CN110443573A (zh) * | 2019-07-23 | 2019-11-12 | 杭州数梦工场科技有限公司 | 审批管理平台及其审批方法、工作流生成方法 |
CN111984256A (zh) * | 2020-08-19 | 2020-11-24 | 上海翘腾科技有限公司 | 一种基于云原生架构的低代码应用流程系统和运行方法 |
CN112348326A (zh) * | 2020-10-23 | 2021-02-09 | 中国建设银行股份有限公司 | 一种银行业务处理方法和系统 |
CN113253991A (zh) * | 2020-02-08 | 2021-08-13 | 北京沃东天骏信息技术有限公司 | 任务可视化处理方法及装置、电子设备、存储介质 |
WO2022001355A1 (zh) * | 2020-06-28 | 2022-01-06 | 华为技术有限公司 | 一种工作流程编排方法及装置 |
CN115169891B (zh) * | 2022-07-07 | 2024-04-19 | 北京有生博大软件股份有限公司 | 一种包含多起点多分支流程的工作流引擎的实现方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101038635B (zh) * | 2006-03-15 | 2012-09-26 | 北大方正集团有限公司 | 一种工作流管理系统流程权限控制系统的实现方法 |
CN101201753B (zh) * | 2007-12-13 | 2012-12-26 | 浪潮通信信息系统有限公司 | 一种多状态机管理引擎的配置管理方法 |
CN101673358B (zh) * | 2008-09-10 | 2012-01-25 | 中兴通讯股份有限公司 | 基于权限组件对工作流组件中的权限管理的方法及装置 |
-
2010
- 2010-05-17 CN CN2010101843035A patent/CN102254234A/zh active Pending
-
2011
- 2011-01-26 WO PCT/CN2011/070667 patent/WO2011143949A1/zh active Application Filing
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999816A (zh) * | 2012-12-05 | 2013-03-27 | 福建邮科通信技术有限公司 | 可个性化定制业务流程的工作流引擎 |
CN102999816B (zh) * | 2012-12-05 | 2016-02-24 | 中邮科通信技术股份有限公司 | 可个性化定制业务流程的工作流引擎 |
CN103092610B (zh) * | 2012-12-31 | 2016-02-10 | 武汉中地数码科技有限公司 | 一种基于手持终端的电信外线资源一站式查询流程的配置方法 |
CN103092610A (zh) * | 2012-12-31 | 2013-05-08 | 武汉中地数码科技有限公司 | 一种基于手持终端的电信外线资源一站式查询流程的配置方法 |
CN103227727A (zh) * | 2013-04-10 | 2013-07-31 | 沈阳昭软软件有限公司 | 一种在工作流系统中控制任务发送权限的方法 |
CN103227727B (zh) * | 2013-04-10 | 2016-09-14 | 沈阳昭软软件有限公司 | 一种在工作流系统中控制任务发送权限的方法 |
CN103353957A (zh) * | 2013-06-19 | 2013-10-16 | 浙江中烟工业有限责任公司 | 一种以人为中心的协同型工作流系统实现方法和装置 |
CN103324487B (zh) * | 2013-07-10 | 2014-09-10 | 浙江中新力合控股有限公司 | 一种流程引擎应用服务化的实现方法 |
CN103324487A (zh) * | 2013-07-10 | 2013-09-25 | 浙江中新力合控股有限公司 | 一种流程引擎SaaS化的实现方法 |
CN104281906A (zh) * | 2013-07-11 | 2015-01-14 | 江苏达科信息科技有限公司 | 一种业务流程中的流程引擎实现方法及其流程引擎系统 |
CN103455324A (zh) * | 2013-07-24 | 2013-12-18 | 北京起步科技有限公司 | 一种用于业务开发流程的模型 |
CN104239052A (zh) * | 2014-09-12 | 2014-12-24 | 浙江宇视科技有限公司 | 业务流生成方法及装置 |
CN104574183A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 跨系统信息处理方法及装置 |
CN105139103A (zh) * | 2015-07-24 | 2015-12-09 | 广州支点网络科技有限公司 | 项目管理的流程流转控制方法、装置及终端设备 |
CN106648573A (zh) * | 2015-11-04 | 2017-05-10 | 北京广联达正源兴邦科技有限公司 | 工作流业务的控制方法、控制系统和终端 |
CN106648573B (zh) * | 2015-11-04 | 2020-07-31 | 北京广联达正源兴邦科技有限公司 | 工作流业务的控制方法、控制系统和终端 |
CN105760180A (zh) * | 2016-03-23 | 2016-07-13 | 浪潮通信信息系统有限公司 | 一种工作流引擎的扩展开发方法 |
CN105760180B (zh) * | 2016-03-23 | 2019-01-25 | 浪潮天元通信信息系统有限公司 | 一种工作流引擎的扩展开发方法 |
CN106384211A (zh) * | 2016-11-08 | 2017-02-08 | 国云科技股份有限公司 | 一种快速构建工作流程的系统及其实现方法 |
CN107133780A (zh) * | 2017-05-02 | 2017-09-05 | 山东浪潮通软信息科技有限公司 | 一种开放式任务集中管理方法和装置 |
CN107784433B (zh) * | 2017-09-26 | 2021-10-01 | 上海虹谷信息科技有限公司 | 两个平行流程互动的建模方法、系统、终端及存储介质 |
CN107784433A (zh) * | 2017-09-26 | 2018-03-09 | 上海虹谷信息科技有限公司 | 两个平行流程互动的建模方法、系统、终端及存储介质 |
CN109840073A (zh) * | 2017-11-24 | 2019-06-04 | 北京京东尚科信息技术有限公司 | 业务流程的实现方法和装置 |
CN109840073B (zh) * | 2017-11-24 | 2022-07-05 | 北京京东尚科信息技术有限公司 | 业务流程的实现方法和装置 |
CN107844924A (zh) * | 2017-12-18 | 2018-03-27 | 马上消费金融股份有限公司 | 一种控制工作流的执行方法、装置及介质 |
CN109598407A (zh) * | 2018-10-26 | 2019-04-09 | 阿里巴巴集团控股有限公司 | 一种业务流程的执行方法及装置 |
CN109598407B (zh) * | 2018-10-26 | 2024-04-05 | 创新先进技术有限公司 | 一种业务流程的执行方法及装置 |
CN110443573A (zh) * | 2019-07-23 | 2019-11-12 | 杭州数梦工场科技有限公司 | 审批管理平台及其审批方法、工作流生成方法 |
CN113253991A (zh) * | 2020-02-08 | 2021-08-13 | 北京沃东天骏信息技术有限公司 | 任务可视化处理方法及装置、电子设备、存储介质 |
WO2022001355A1 (zh) * | 2020-06-28 | 2022-01-06 | 华为技术有限公司 | 一种工作流程编排方法及装置 |
CN111984256A (zh) * | 2020-08-19 | 2020-11-24 | 上海翘腾科技有限公司 | 一种基于云原生架构的低代码应用流程系统和运行方法 |
CN112348326A (zh) * | 2020-10-23 | 2021-02-09 | 中国建设银行股份有限公司 | 一种银行业务处理方法和系统 |
CN115169891B (zh) * | 2022-07-07 | 2024-04-19 | 北京有生博大软件股份有限公司 | 一种包含多起点多分支流程的工作流引擎的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2011143949A1 (zh) | 2011-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102254234A (zh) | 业务流程的实现方法和工作流引擎 | |
CN100545851C (zh) | 使用命令行环境的远程系统管理 | |
CN101408899B (zh) | 一种网站多数据源切换方法和装置 | |
EP0489351A2 (en) | Software work tool | |
CN101427220A (zh) | 用于计算工具的计算环境的组件化自动供应和管理 | |
CN111061788A (zh) | 一种基于云架构的多源异构数据转换整合系统及其实现方法 | |
CN105577475A (zh) | 自动化性能测试系统及方法 | |
CN101888320A (zh) | 增强型网络适配器框架 | |
CN106055325B (zh) | 一种支撑多系统同时运行的服务构建方法 | |
CN101097619A (zh) | 用于监控业务流程的系统和方法 | |
CN101894348A (zh) | 一种自扩展的联机交易系统及其实现方法 | |
CN112181402B (zh) | 业务系统的业务处理方法、装置、存储介质及电子设备 | |
CN102810184A (zh) | 一种动态执行工作流的方法、装置及企业系统 | |
CN103577165A (zh) | 一种表单生成方法和表单生成器 | |
CN110162464A (zh) | Mcok测试方法及系统、电子设备及可读存储介质 | |
CN103729742B (zh) | 一种基于soa架构和模型驱动架构的数据资源管理系统 | |
CN101615116B (zh) | 一种接口获取方法、装置及系统 | |
CN106354507A (zh) | 一种企业级应用管理系统及其运行方法 | |
CN101043648B (zh) | 业务服务交换系统 | |
CN1588411B (zh) | 一种基于流程定制的流程控制方法 | |
CN103971225A (zh) | 一种工作流动态扩展方法及系统 | |
CN101175229A (zh) | 用于智能网的计费装置 | |
CN103019808A (zh) | 一种业务状态的调节装置及方法 | |
CN116011943A (zh) | 基于低代码的机器人自动化流程服务系统、方法及介质 | |
CN104081381B (zh) | 用于实施概念服务的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20111123 |