CN104809126A - 业务流程引擎系统 - Google Patents
业务流程引擎系统 Download PDFInfo
- Publication number
- CN104809126A CN104809126A CN201410037756.3A CN201410037756A CN104809126A CN 104809126 A CN104809126 A CN 104809126A CN 201410037756 A CN201410037756 A CN 201410037756A CN 104809126 A CN104809126 A CN 104809126A
- Authority
- CN
- China
- Prior art keywords
- interface
- flow
- event
- class
- engine system
- 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.)
- Granted
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种业务流程引擎系统,涉及计算机领域,为解决固化的业务流程引擎无法满足用户的个性化需求的问题,包括:标准接口、标准接口的实现类设置单元以及事件的实现类设置单元;标准接口的实现类设置单元,用于通过Spring编写标准接口的实现类,通过该标准接口的实现类设置单元生成的标准接口文件采用常量名标识;事件的实现类设置单元,用于通过预先设置的事件配置文件规则编写事件的实现类,或者通过业务流程引擎系统提供的图形界面获取事件相关参数将预设的事件的实现类嵌入到业务流程引擎系统中。本发明可以应用在业务流程设计中。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种业务流程引擎系统。
背景技术
业务流程管理系统广泛应用于各行各业,工程领域的相关研制活动更是离不开业务流程管理系统的支撑,例如:产品设计和制造等过程,这些远比普通的业务流程复杂得多,不但要求业务流程管理系统能够支撑常见的各种变更管理,而且要能够对流程执行产生的中间数据进行管理及对流程执行过程进行实时监控,同时要能够满足复杂的研制任务迭代和任务动态分解等需求。业务流程引擎是实现这些功能的核心动力,其不但提供了处理这些功能的逻辑,而且决定了流程执行的准确性和效率。
在现有技术中,业务流程引擎是固化的,开发人员根据需求生成业务流程引擎的功能模块,并将功能模块进行封装形成业务流程引擎。对用户而言,业务流程引擎是封闭的,用户在使用时只能使用其设置好的功能进行操作。然而,对于不同的企业,业务流程是千差万别的,固化的业务流程引擎无法满足不同用户的个性化需求,从而导致用户使用业务流程引擎的体验不好。
发明内容
本发明要解决的技术问题是用户使用固化的业务流程引擎体验不好,无法满足用户的个性化需求。
为解决上述技术问题,本发明的实施例提供一种业务流程引擎系统,包括:标准接口、标准接口的实现类设置单元以及事件的实现类设置单元;所述标准接口的实现类设置单元,用于通过Spring编写标准接口的实现类,通过该标准接口的实现类设置单元生成的标准接口文件采用常量名标识;所述事件的实现类设置单元,用于通过预先设置的事件配置文件规则编写事件的实现类,或者通过所述业务流程引擎系统提供的图形界面获取事件相关参数将预设的事件的实现类嵌入到所述业务流程引擎系统中。
进一步地,如果所述事件的实现类为用户自定义的类,所述事件相关参数包括:类名、函数名和函数参数;如果所述事件的实现类为由Javascript函数生成的类,所述事件相关参数包括:函数名和函数参数。
进一步地,所述标准接口包括:流程对象映射接口、流程设计接口、流程执行接口、流程序列化接口和流程监视接口。
进一步地,所述流程对象映射接口包括:流程模型接口、节点模型接口、节点模型集合接口、流程线接口和流程线集合接口。
进一步地,所述流程监视接口包括:流程监视器接口和流程监视任务接口。
进一步地,所述流程设计接口调用所述流程对象映射接口进行模型的设计;所述流程设计接口调用所述流程序列化接口存储和读取流程模型;所述流程执行接口调用所述流程序列化接口存储和读取流程实例及流程任务节点数据,并根据读取的流程实例数据及调用流程对象映射接口生成流程实例模型;所述流程监视接口设置监视的任务队列并监视所述流程执行接口的任务执行情况。
本发明的上述技术方案的有益效果如下:
上述方案中用户可以通过标准接口的实现类设置单元编写标准接口的实现类,从而达到了将自定义接口嵌入到业务流程引擎系统中的作用,并且,用户可以通过事件的实现类设置单元编写事件的实现类,或者将预先设置好的事件嵌入到业务流程引擎系统中,从而实现了用户可以根据需求对业务流程引擎系统事件进行扩展的目的,解决了现有的业务流程引擎是固化的,用户无法根据自身业务需求设置相关功能,造成用户使用业务流程引擎的体验差的问题。本发明提供的业务流程引擎系统,用户可以根据预置规则编写业务所需的功能或者嵌入已有的第三方软件的功能,使得用户的使用体验更好,能够满足不同用户的个性化需求。
附图说明
图1为采用本发明实施例提供的业务流程引擎系统中标准接口的实现类设置单元配置自定义标准接口的实现类的配置格式;
图2为采用本发明实施例提供的业务流程引擎系统中事件的实现类设置单元设置事件的配置规则格式;
图3为采用本发明实施例提供的业务流程引擎系统中事件的实现类设置单元通过图形界面将事件嵌入的操作示意图;
图4为本发明实施例提供的业务流程引擎系统中标准接口的逻辑关系示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对固化的业务流程引擎无法满足用户的个性化需求的问题,提供一种业务流程引擎系统。
本发明的实施例提供一种业务流程引擎系统,包括:标准接口、标准接口的实现类设置单元以及事件的实现类设置单元。
其中,标准接口的实现类设置单元,用于通过Spring编写标准接口的实现类,例如:如图1所示。需要说明的是,通过标准接口的实现类设置单元编写的标准接口实现类可以包括业务流程引擎系统默认的接口的实现类。通过该标准接口的实现类设置单元生成的标准接口文件采用常量名标识,在本实施例中,常量名为BEAN_ID,用户可以将自定义接口的常量值作为BEAN_ID的赋值,从而实现将自定义的接口实现类连接到业务流程引擎系统中的目的。
事件的实现类设置单元,用于通过预先设置的事件配置文件规则编写事件的实现类,如图2所示,用户只需要按照规则编写配置文件即可,该文件可以被所有的流程节点的服务端“动作”属性引用;或者通过业务流程引擎系统提供的图形界面获取事件相关参数将预设的事件的实现类嵌入到业务流程引擎系统中,如图3所示。例如,为了实现当某任务节点启动时可以发送一个默认邮件的功能,就可以在服务端撰写一个发邮件的类,工作流引擎能够自动调用该类实现邮件发送的业务;再如,用户可以将JavaScript编写的调用审批界面的函数嵌入业务流程引擎系统中,业务流程引擎系统可以调用该函数。
需要说明的是,当通过图3所示的图形界面嵌入事件时,如果事件的实现类为用户自定义的类,事件相关参数包括:类名、函数名和函数参数;如果事件的实现类为由Javascript函数生成的类,事件相关参数包括:函数名和函数参数。
本发明实施例提供的业务流程引擎系统中,标准接口可以包括:流程对象映射接口、流程设计接口、流程执行接口、流程序列化接口和流程监视接口等。
1.流程对象映射接口
流程对象映射接口是对流程各种组成对象的计算机程序抽象,进一步地,该流程对象映射接口可以包括流程模型接口、节点模型接口、节点模型集合接口、流程线以及流程线集合接口等。
(1)流程模型接口(BPModel)
功能:对流程模型进行计算机程序的抽象。
构成:基本属性、动作、事件、添加节点、删除节点、添加流程线、删除流程线、获得子流程等。
说明:一个流程下面有多个节点和多个流程线。
(2)节点模型接口(BPNode)
功能:对节点模型进行计算机程序的抽象。
构成:基本属性、动作、事件、数据指标项、要求、推荐工具、参与者。
说明:节点模型包括基本节点、逻辑节点、聚合节点、任务节点。
(3)节点模型集合接口(BPNodes)
构成:添加节点、删除节点、查找节点等。
功能:对不同类型的节点模型提供一个容器,便于对节点模型的统一管理。
说明:每个节点对象不能重复,存在唯一ID。
(4)流程线接口(BPLine)
功能:是对各种类型流程线的计算机程序抽象。
构成:线型、描述、前驱节点、后续节点、数据传递映射
说明:将两个节点关联起来,并建立节点之间数据传递映射关系,包括控制线、数据线和回溯线。
(5)流程线集合接口(BPLines)
功能:对不同类型的流程线提供一个容器,便于对流程线的统一管理。
构成:添加流程线、删除流程线、查找流程线。
说明:每个流程线对象不能重复,存在唯一ID。
2.流程设计接口(BPDesign)
功能:是对流程建模和管理的计算机程序抽象。
构成:流程逻辑校验、发布流程、共享流程、复制流程、读取流程设计界面的资源文档、读取图库文档、读取流程对象(支持对象形式、XML形式、字符串形式)、写流程对象(支持对象形式、XML形式、字符串形式)、查找常用的服务端和客户端事件、查找用户、查找角色、查找审核人、添加子流程、添加节点、添加流程线、删除子流程、删除节点、删除流程线、查找节点、查找流程线。
3.流程执行接口(BPExecute)
功能:是对流程实例执行过程的计算机程序抽象
构成:建立流程实例、读取流程实例(支持对象形式、XML形式、字符串形式)、启动流程实例、暂停流程实例、挂起流程实例、结束流程实例、启动流程节点、暂停流程节点、挂起流程节点、结束流程节点、提交任务节点、回溯任务节点、查询任务节点数据、查询流程实例状态、查询节点状态。
说明:新建流程实例,流程实例版本会递增;启动流程实例时候,如果流程实例是顺序执行,则启动开始节点,如果流程实例是任意节点执行,则启动所有任务节点。任务节点提交完成后,会顺序结束当前任务节点,并启动后续的所有节点。流程回溯时会携带指定版本数据回溯到目标节点,目标节点之后的所有节点自动结束,并且启动目标节点。
4.流程序列化接口(BPSerial)
功能:将流程模型存储到XML文档或数据库以及从XML文档或数据库读取流程模型。
构成:读取XML文档或数据库、写XML文档或数据库、删除XML文档或数据库。
5.流程监视接口
在本实施例中,流程监视接口可以包括流程监视器接口(BPMoniter)和流程监视任务接口(BPMoniterTask)。
(1)监视器接口(BPMoniter)
功能:对监视器进行管理。
构成:添加任务、删除任务、监视时间。
(2)监视任务接口(BPMoniterTask)
功能:定义具体监视的任务。
构成:监视的任务执行。
如图4所示,本发明实施例提供的业务流程引擎系统中标准接口的逻辑关系为:
流程设计接口调用流程对象映射接口进行模型的设计,在本实施例中,流程对象映射接口具体为流程模型接口;
流程设计接口调用流程序列化接口存储和读取流程模型;
流程执行接口调用流程序列化接口存储和读取流程实例及流程任务节点数据,根据读取的流程实例数据及调用流程对象映射接口生成流程实例模型;
流程监视接口设置监视的任务队列并监视流程执行接口的任务执行情况,具体地,流程监视器接口调用流程监视器任务接口设置监视的任务队列,流程监视任务接口监视流程执行接口的任务执行情况。
上述方案中用户可以通过标准接口的实现类设置单元编写标准接口的实现类,从而达到了将自定义接口嵌入到业务流程引擎系统中的作用,并且,用户可以通过事件的实现类设置单元编写事件的实现类,或者将预先设置好的事件嵌入到业务流程引擎系统中,从而实现了用户可以根据需求对业务流程引擎系统事件进行扩展的目的,解决了现有的业务流程引擎是固化的,用户无法根据自身业务需求设置相关功能,造成用户使用业务流程引擎的体验差的问题。本发明提供的业务流程引擎系统,用户可以根据预置规则编写业务所需的功能或者嵌入已有的第三方软件的功能,使得用户的使用体验更好,能够满足不同用户的个性化需求。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (6)
1.一种业务流程引擎系统,其特征在于,包括:标准接口、标准接口的实现类设置单元以及事件的实现类设置单元;
所述标准接口的实现类设置单元,用于通过Spring编写标准接口的实现类,通过该标准接口的实现类设置单元生成的标准接口文件采用常量名标识;
所述事件的实现类设置单元,用于通过预先设置的事件配置文件规则编写事件的实现类,或者通过所述业务流程引擎系统提供的图形界面获取事件相关参数将预设的事件的实现类嵌入到所述业务流程引擎系统中。
2.根据权利要求1所述的业务流程引擎系统,其特征在于,
如果所述事件的实现类为用户自定义的类,所述事件相关参数包括:类名、函数名和函数参数;
如果所述事件的实现类为由Javascript函数生成的类,所述事件相关参数包括:函数名和函数参数。
3.根据权利要求1所述的业务流程引擎系统,其特征在于,所述标准接口包括:流程对象映射接口、流程设计接口、流程执行接口、流程序列化接口和流程监视接口。
4.根据权利要求3所述的业务流程引擎系统,其特征在于,所述流程对象映射接口包括:流程模型接口、节点模型接口、节点模型集合接口、流程线接口和流程线集合接口。
5.根据权利要求3所述的业务流程引擎系统,其特征在于,所述流程监视接口包括:流程监视器接口和流程监视任务接口。
6.根据权利要求3所述的业务流程引擎系统,其特征在于,所述流程设计接口调用所述流程对象映射接口进行模型的设计;所述流程设计接口调用所述流程序列化接口存储和读取流程模型;所述流程执行接口调用所述流程序列化接口存储和读取流程实例及流程任务节点数据,并根据读取的流程实例数据及调用流程对象映射接口生成流程实例模型;所述流程监视接口设置监视的任务队列并监视所述流程执行接口的任务执行情况。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410037756.3A CN104809126B (zh) | 2014-01-26 | 2014-01-26 | 业务流程引擎系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410037756.3A CN104809126B (zh) | 2014-01-26 | 2014-01-26 | 业务流程引擎系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104809126A true CN104809126A (zh) | 2015-07-29 |
CN104809126B CN104809126B (zh) | 2019-03-05 |
Family
ID=53693954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410037756.3A Active CN104809126B (zh) | 2014-01-26 | 2014-01-26 | 业务流程引擎系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104809126B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108363594A (zh) * | 2018-01-08 | 2018-08-03 | 浪潮通用软件有限公司 | 一种工作流系统中参与者解析的方法 |
CN109495457A (zh) * | 2018-10-31 | 2019-03-19 | 厦门畅享信息技术有限公司 | 跨网络限制的业务流程引擎及业务执行方法 |
CN109872032A (zh) * | 2018-12-29 | 2019-06-11 | 广州兴森快捷电路科技有限公司 | 一种产品工艺流程编写方法、装置、设备及存储介质 |
CN109993444A (zh) * | 2019-04-04 | 2019-07-09 | 江苏新纪元信息发展有限公司 | 一种流程引擎 |
CN113326060A (zh) * | 2020-02-28 | 2021-08-31 | 北京沃东天骏信息技术有限公司 | 业务请求处理方法、装置和系统以及业务配置方法和装置 |
CN113657750A (zh) * | 2021-08-16 | 2021-11-16 | 中通服网络信息技术有限公司 | 自定义可视化流程引擎 |
CN115658270A (zh) * | 2022-11-02 | 2023-01-31 | 广州市易鸿智能装备有限公司 | 视觉系统的工作流执行方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7506072B2 (en) * | 2003-10-14 | 2009-03-17 | Sun Microsystems, Inc. | Web browser as web service server in interaction with business process engine |
CN101539855A (zh) * | 2008-12-25 | 2009-09-23 | 厦门亿力吉奥信息科技有限公司 | 一种业务基础软件平台 |
CN102291464A (zh) * | 2011-08-29 | 2011-12-21 | 上海普元信息技术股份有限公司 | BPM中业务流程动态生成Web Service的系统及方法 |
CN103177156A (zh) * | 2013-02-27 | 2013-06-26 | 北京视博数字电视科技有限公司 | 一种企业应用集成适配器的设计器系统及其设计方法 |
-
2014
- 2014-01-26 CN CN201410037756.3A patent/CN104809126B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7506072B2 (en) * | 2003-10-14 | 2009-03-17 | Sun Microsystems, Inc. | Web browser as web service server in interaction with business process engine |
CN101539855A (zh) * | 2008-12-25 | 2009-09-23 | 厦门亿力吉奥信息科技有限公司 | 一种业务基础软件平台 |
CN102291464A (zh) * | 2011-08-29 | 2011-12-21 | 上海普元信息技术股份有限公司 | BPM中业务流程动态生成Web Service的系统及方法 |
CN103177156A (zh) * | 2013-02-27 | 2013-06-26 | 北京视博数字电视科技有限公司 | 一种企业应用集成适配器的设计器系统及其设计方法 |
Non-Patent Citations (2)
Title |
---|
程松涛: ""基于Spring框架的分布式工作流引擎设计系统"", 《中国优秀硕士学位论文全文数据库,信息科技辑》 * |
陈国君: "《Java 2 程序设计基础》", 31 July 2009, 《清华大学出版社》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108363594A (zh) * | 2018-01-08 | 2018-08-03 | 浪潮通用软件有限公司 | 一种工作流系统中参与者解析的方法 |
CN109495457A (zh) * | 2018-10-31 | 2019-03-19 | 厦门畅享信息技术有限公司 | 跨网络限制的业务流程引擎及业务执行方法 |
CN109495457B (zh) * | 2018-10-31 | 2021-04-09 | 厦门畅享信息技术有限公司 | 跨网络限制的业务流程引擎及业务执行方法 |
CN109872032A (zh) * | 2018-12-29 | 2019-06-11 | 广州兴森快捷电路科技有限公司 | 一种产品工艺流程编写方法、装置、设备及存储介质 |
CN109993444A (zh) * | 2019-04-04 | 2019-07-09 | 江苏新纪元信息发展有限公司 | 一种流程引擎 |
CN113326060A (zh) * | 2020-02-28 | 2021-08-31 | 北京沃东天骏信息技术有限公司 | 业务请求处理方法、装置和系统以及业务配置方法和装置 |
CN113657750A (zh) * | 2021-08-16 | 2021-11-16 | 中通服网络信息技术有限公司 | 自定义可视化流程引擎 |
CN115658270A (zh) * | 2022-11-02 | 2023-01-31 | 广州市易鸿智能装备有限公司 | 视觉系统的工作流执行方法、装置、设备及存储介质 |
CN115658270B (zh) * | 2022-11-02 | 2023-08-25 | 广州市易鸿智能装备有限公司 | 视觉系统的工作流执行方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104809126B (zh) | 2019-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104809126A (zh) | 业务流程引擎系统 | |
CN105404507A (zh) | 一种流程模板的构建方法及系统 | |
CN103729460A (zh) | 一种基于元数据的图形化数据模型管理方法和系统 | |
CN103051652B (zh) | 一种移动终端云计算发布平台 | |
CN109725986B (zh) | 一种图形化和容器化的虚拟网络环境构建及批量部署方法 | |
US9367289B2 (en) | Method and apparatus for enabling agile development of services in cloud computing and traditional environments | |
CN104731588B (zh) | 页面布局文件生成方法和页面布局文件生成装置 | |
US9361139B1 (en) | System and method for visualizing virtual system components | |
CN106202006A (zh) | 文件生成方法和装置 | |
US8788248B2 (en) | Transparent flow model simulation implementing bi-directional links | |
CN106951254B (zh) | 支付系统中相似业务功能模块复用的方法及装置 | |
CN103500094A (zh) | 一种支持用户可视化自定义的服务平台监控模型 | |
WO2019080231A1 (zh) | 工作流系统中的邮件发送方法、装置和计算机设备 | |
WO2023143151A1 (zh) | 一种代码开发方法、服务器及存储介质 | |
CN110738038A (zh) | 合同文本的生成方法、装置、设备及计算机可读存储介质 | |
CN110784377A (zh) | 一种多云环境下的云监控数据统一管理的方法 | |
van Dongen et al. | EMiT: A process mining tool | |
CN115237295A (zh) | 一种可视化拖拽生成流程图的方法、电子设备及介质 | |
CN103425490B (zh) | 基于crm系统中运行对象数据的管理方法 | |
CN105824944A (zh) | 一种基于脚本语言的xml配置数据维护方法及系统 | |
CN105573769B (zh) | 一种水泥生产远程监控可视化配置方法和装置 | |
CN103942046A (zh) | 一种基于对象的统一模型开发方法 | |
CN103310304B (zh) | 流程模型的管理方法和装置 | |
CN103093322A (zh) | 即席分析业务数据的系统和方法 | |
CN103699746A (zh) | 基于数据库的cadds5管系三维设计方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |