CN102566536B - 系统流程控制设备和方法 - Google Patents

系统流程控制设备和方法 Download PDF

Info

Publication number
CN102566536B
CN102566536B CN201110437045.1A CN201110437045A CN102566536B CN 102566536 B CN102566536 B CN 102566536B CN 201110437045 A CN201110437045 A CN 201110437045A CN 102566536 B CN102566536 B CN 102566536B
Authority
CN
China
Prior art keywords
rule
system flow
code
flow control
regulation 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.)
Expired - Fee Related
Application number
CN201110437045.1A
Other languages
English (en)
Other versions
CN102566536A (zh
Inventor
许晓毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WUXI ALBANY TECHNOLOGY CO LTD
Original Assignee
WUXI ALBANY TECHNOLOGY CO LTD
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WUXI ALBANY TECHNOLOGY CO LTD filed Critical WUXI ALBANY TECHNOLOGY CO LTD
Priority to CN201110437045.1A priority Critical patent/CN102566536B/zh
Publication of CN102566536A publication Critical patent/CN102566536A/zh
Application granted granted Critical
Publication of CN102566536B publication Critical patent/CN102566536B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及系统流程控制设备和方法。一种系统流程控制设备,包括:规则库,用于存储规则;规则引擎,用于生成规则、对规则库中的规则进行索引以及将规则转换成代码;以及流程控制器,用于利用一组规则来表征所述系统流程,其中通过规则引擎将通过流程控制器得到的该组规则转换成代码。

Description

系统流程控制设备和方法
技术领域
本发明涉及系统流程控制的领域。
背景技术
系统流程控制广泛用于流程自动化,它是由系统流程再造和工作流技术发展而来的,目前是企业信息化技术的发展前沿。系统流程控制关注的重点是企业系统流程再造;企业信息化管理系统集成;系统流程监控、报告。中心思想是将应用程序与系统规则分离开来。系统流程控制是当前全球IT企业级应用软件的新增长热点。近年来,很多企业都已经开始或正在构建系统流程控制平台,对原有的系统流程进行流程化改进。
系统流程控制系统将系统流程从代码中分离出来,使开发者和使用者能将注意力更集中于业务本身而不是编码。规则引擎因此成为系统流程控制的核心,规则引擎用规则来描述流程中的逻辑因素,将规则从信息系统中提炼出来进行专门管理。然而,大型的基于规则引擎的系统流程控制系统通常包括百万级以上,甚至上亿条规则,因此大型的系统流程控制产品都面临数据规则量成倍上涨时的管理难题。
现有规则引擎由推理引擎发展而来,实现了将系统决策从应用程序代码中分离出来,并使用预定义的语义模块编写系统决策,接受数据输入,解释业务规则,并根据系统规则做出系统决策。
现有规则引擎的工作原理如下:通过己经定义好的过滤条件,将信息传入判断其能否匹配正在运行的规则引擎中规则所定义的动作的条件,如果不满足,继续传入信息,如果满足,执行规则引擎中规则所定义的动作。在规则引擎的工作机制中有两个重要的组成,第一个是信息元,它是包含了特定事件中的所有对象的集合队列管理器,用来管理信息元的队列。规则引擎从队列管理器中按顺序接收信息元,然后根据引擎中定义的规则顺序检查信息元中的规则。信息元通过队列管理器加入规则引擎后,将已定义好的规则和信息元中规则进行比对,如果匹配,执行相应的操作,然后再进行信息元中下一条规则的比对,如果不匹配,则直接忽略此规则的所有相关动作,进行下一条规则的比对,直到信息元中的所有规则比对完毕。在一个信息元的所有规则执行完毕后信息元将被销毁掉,然后从队列管理器中接收下一个信息元。
现有规则引擎的原理是基于解释型的,也就是模式匹配、议程和执行的过程。解释型是一种弱引用的实现方式,只限用于决策逻辑,解决模块间的引用关系。由于现有规则引擎的这种限制,导致现有系统流程控制中能够采用的规则种类非常有限,具体地,只限于流程和决策这两种规则种类。
发明内容
针对上述一个或多个技术问题,本发明提供了一种系统流程控制设备和方法。
根据本发明的一个方面,提供了一种系统流程控制设备,包括:规则库,用于存储规则;规则引擎,用于生成规则、对规则库中的规则进行索引以及将规则转换成代码;以及流程控制器,用于利用一组规则来表征所述系统流程,其中通过规则引擎将通过流程控制器得到的该组规则转换成代码。
根据本发明的另一个方面,提供了一种系统流程控制方法,包括:利用一组规则来表征所述系统流程;以及将该组规则转换成代码。
附图说明
图1示出了根据本发明的一个实施例的系统流程控制设备的框图;
图2示出了根据本发明的一个实施例的图1的系统流程控制设备的流程控制器的框图;
图3示出了根据本发明的另一个实施例的图1的系统流程控制设备的流程控制器的框图;
图4示出根据本发明的实施例的图1的系统流程控制设备的规则引擎的框图;
图5示出了根据本发明的一个实施例的系统流程控制方法的流程图;
图6示出了根据本发明的另一个实施例的系统流程控制方法的流程图;
图7示出了根据本发明的又一个实施例的系统流程控制方法的流程图。
具体实施方式
下面结合优选实施例和说明书附图对本发明作进一步详细的描述。
具体地,以下结合某一化工厂中的硫酸钡生产流程控制来对本发明进行解释,但是这仅仅是示例性的,并且为了便于说明本发明的原理,该示例是非常简化的,但是本领域技术人员应该意识到,本发明可以应用于更复杂的情形,并且能够应用于其他行业,例如但不限于半导体制造、医疗等等。
参照图1,提供了根据本发明的一个实施例的系统流程控制设备100,其包括流程控制器10、规则引擎20和规则库30。其中所述流程控制器10用于利用一组规则来表征系统流程,所述规则引擎20用于生成规则、对规则库中的规则进行索引以及将规则转换成代码,并且所述规则库30用于存储规则,其中通过规则引擎20将通过流程控制器10得到的该组规则转换成代码。根据本发明的一个实施例,所述规则可以用XML格式表达,所述规则库30可以采用关系型数据库的形式,所述代码的格式可以采用JAVA、JSP、HTML、JSF、XHTML等等。
优选地,如图2所示,所述流程控制器10包括规则选择/定义器11、规则分类器12、规则抽取器13、规则流程化器14。
所述规则选择/定义器11用于通过规则引擎20来选择/定义规则。具体地,如果规则库30中没有所需的规则,则该规则选择/定义器11根据需要来通过规则引擎20定义新的规则并且新的规则存储到规则库30中,或者如果规则库30中包含所需的规则,通过规则引擎20来查询规则库30以从中取得所需的规则。
所述规则分类器12用于对所选择/定义的规则进行分类。该分类是按照预定义规则体系来进行的。例如,对于某一化工厂中的硫酸钡生产的流程控制,可以预定义如下规则体系:化工行业规则、化工厂机构规则、硫酸钡生产工艺规则。当然这种规则体系划分仅仅是示例性的,本领域技术人员可以想到采用其他规则体系。
所述规则抽取器13用于对经分类的规则进行抽取。该抽取是按照预定义规则体系来对规则进行分层抽取的。例如,对于上述某一化工厂中的硫酸钡生产工艺的流程控制所定义的三层规则体系,可以按照化工行业规则、化工厂机构规则、硫酸钡生产工艺规则的顺序逐层抽取规则,从而获得所需的硫酸钡生产工艺规则。以上按照预定义规则体系对规则进行分类和分层抽取,主要考虑是当今各个行业中系统流程控制的复杂度很高,所涉及的规则数目非常大,所以直接获得与系统流程直接相关的规则集合难以实现。此外,由于规则的分层抽取,可以实现跨业务、跨机构的规则重用,例如对于本例而言,化工行业规则、化工厂机构规则这两个层级的规则就可以重用于另一化工厂的另一种化工产品的生产流程控制中。
所述规则流程化器14用于对所抽取出的规则进行流程化。具体地,对于本例而言,按照硫酸钡生产工艺各步骤发生的次序、发生的场所以及逻辑顺序(如输入输出的依赖性等)对规则进行流程化。
更优选地,如图3所示,除了图2中的规则选择/定义器11、规则分类器12、规则抽取器13、规则流程化器14之外,所述流程控制器10还包括优化器15,其用于根据预定目标对流程化的规则进行优化。对于本例而言,预定目标可以为缩短工艺时长或者减少能耗等等。根据本发明的一个实施例,所述优化器15被配置为对关键流程进行细化,对性能瓶颈进行分析以及基于性能瓶颈分析来重置规则。优选地,所述性能瓶颈分析采用六西格玛方法:SIPOC价值流图,因果分析,失效模式分析,IDEFO,What-If分析。
参考图4,提供了根据本发明的实施例的规则引擎20的组成。该规则引擎20包括规则产生器21、规则索引器22和规则编译器23。
其中所述规则产生器21用于生成规则并将规则存储在数据库中;
所述规则索引器22,基于数据库的查询对规则进行索引;
所述规则编译器23,将规则转换成代码。
另外,本发明的系统流程控制设备具有以下特点:
1)将规则用特定格式表达,并存储在关系型数据库中
系统流程控制系统包括流程监视、决策节点、用户界面等因素。所有这一切系统流程控制系统的组成因素都是用于组成系统流程控制系统的规则。在该系统流程控制产品中,我们用特定格式描述这些规则,大到流程走向,小到界面字符的字体大小。规则以字符串的形式存储在数据库中。每一条规则信息都包含了精确描述其所对应的因素所需要的所有信息,以及这一规则和其他规则的之间的关联关系。在实际项目中,当一条规则被改动时,系统可以自动向上或者向下追溯可能受影响的规则集合。
2)规则本身是面向对象的
规则是系统组成的最小单位。规则本身是面向对象的,规则之间存在继承、多态等面向对象系统的特征。这种独特的面向对象的规则体系使基于该系统流程控制设备具有良好的可维护性、可重用性和可扩展性,使规则能够在跨机构、跨部门重用。
3)将规则进行版本控制,并将之和规则查询相结合
规则是系统组成的最小单位,如同源代码在信息系统中一样。大型的系统流程控制系统通常包括百万级以上,甚至上亿条规则,因此大型的系统流程控制产品都面临数据规则量成倍上涨时的处理难题。在此引入软件工程的概念,使规则版本化,从而强化了在项目过程中的对规则的管理和控制。
4)根据当前环境设定对规则进行多维查询
一条规则常常对应着几个或者几十个不同的版本。在实际应用中,系统可以根据当前环境设定和当前用户的身份信息,对规则进行多维查询,从而确定适用的业务规则集合。
5)根据当前环境设定,得到适用的规则集,并将其实时编译和执行
在根据当前环境设定和当前用户的身份信息,对规则进行多维查询,确定适用的规则集合后,系统将业务规则实时转换成代码,并将其实时执行。编译后生成的可执行代码将保存在系统的缓存空间内,下次,如果同样的业务规则集合被调用,上次编译的可执行代码将被自动载入系统。
6)对海量规则数据的优化查询
规则是系统组成的最小单位,如同源代码在信息系统中一样。大型的。系统流程控制系统通常包括百万级以上,甚至上亿条规则,因此大型的系统流程控制产品都面临数据规则量成倍上涨时的管理难题,海量数据查询成为关键难点。为此,我们对规则进行预处理,根据当前系统环境的设定,预先载入部分规则,同时部分规则列入不被查询的规则列表,以此来减少规则查询量。
7)在超长期项目中,对海量规则数据的管理和维护
大型的系统流程控制系统项目经常长达5-7年,涉及流程超过100条,上亿条规则。规则在项目各个时期的管理成为核心技术难点。我们引入软件工程的理论,将规则版本化,同时用规则集合的形式对规则打包,从而强化对规则的管理和维护。
在根据本发明的系统流程控制设备中,逻辑与规则间是强引用关系,即编译型,用规则定义所有的逻辑。而用规则来描述所有逻辑,能够实现系统逻辑的完全规则化,并然后转化为代码并部署运行,大大提高了系统流程控制及改造的效率,降低了控制及改造成本。此外,由于逻辑与规则间是强引用关系,使得相比传统系统流程控制,在该系统流程控制设备100中可以采用的规则种类更为多样,即不限于流程和决策这两种。具体地,除了流程和决策之外,所述规则的种类还可以包括表达、集成、数据结构、约束、安全、通讯、计算等等中的一个或多个。为便于理解,以下表1示出了各种规则的示例。当然,这些规则的种类仅仅是示例性,本领域技术人员可以根据需要创建更多规则种类,从而更为准确地表征系统流程以便实现对其进行更有效地控制。
表1
参考图5,提供了根据本发明的一个实施例的系统流程控制方法500。在步骤510,利用一组规则来表征所述系统流程。在步骤520,将该组规则转换成代码。据本发明的一个实施例,所述规则可以用XML格式表达,所述规则库30可以采用关系型数据库的形式,所述代码的格式可以采用JAVA、JSP、HTML、JSF、XHTML等等。
优选地,如图6所示,步骤510进一步包括四个子步骤501-504。
在步骤501,选择/定义规则。具体地,如果现有规则库中没有所需的规则,则根据需要来定义新的规则并且新的规则存储到规则库中,或者如果现有规则库中包含所需的规则,通过查询规则库以从中取得所需的规则。
在步骤502,对所选择/定义的规则进行分类。该分类是按照预定义规则体系来进行的。例如,对于某一化工厂中的硫酸钡生产的流程控制,可以预定义如下规则体系:化工行业规则、化工厂机构规则、硫酸钡生产工艺规则。当然这种规则体系划分仅仅是示例性的,本领域技术人员可以想到采用其他规则体系。
在步骤503,对经分类的规则进行抽取。该抽取是按照预定义规则体系来对规则进行分层抽取的。例如,对于上述某一化工厂中的硫酸钡生产工艺的流程控制所定义的三层规则体系,可以按照化工行业规则、化工厂机构规则、硫酸钡生产工艺规则的顺序逐层抽取规则,从而获得所需的硫酸钡生产工艺规则。以上按照预定义规则体系对规则进行分类和分层抽取,主要考虑是当今各个行业中系统流程控制的复杂度很高,所涉及的规则数目非常大,所以直接获得与系统流程直接相关的规则集合难以实现。此外,由于规则的分层抽取,可以实现跨业务、跨机构的规则重用,例如对于本例而言,化工行业规则、化工厂机构规则这两个层级的规则就可以重用于另一化工厂的另一种化工产品的生产流程控制中。
在步骤504,对所抽取出的规则进行流程化。具体地,对于本例而言,按照硫酸钡生产工艺各步骤发生的次序、发生的场所以及逻辑顺序(如输入输出的依赖性等)对规则进行流程化。
更优选地,如图7所示,除了图6中的子步骤501-504之外,所述步骤510还包括子步骤505,在该步骤根据预定目标对流程化的规则进行优化。对于本例而言,预定目标可以为缩短工艺时长或者减少能耗等等。根据本发明的一个实施例,该优化包括对关键流程进行细化,对性能瓶颈进行分析以及基于性能瓶颈分析来重置规则。优选地,所述性能瓶颈分析采用六西格玛方法:SIPOC价值流图,因果分析,失效模式分析,IDEFO,What-If分析。
使用上述方法500能够获得与上述系统流程控制设备100同样的好处,故在此不再赘述。
应该理解的是,本发明的实施例可以由软件、硬件或由软件和硬件的组合来实施。就这一点来说,应该注意,图中的逻辑流程的任何块可以表示程序步骤或互连的逻辑电路、块和函数、或者程序步骤和逻辑电路、块和函数的组合。
最后应说明的是:以上实施例仅用以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围,而所附权利要求意在涵盖落入本发明精神和范围中的这些修改或者等同替换。

Claims (9)

1.一种系统流程控制设备,包括:
规则库,用于存储规则;
规则引擎,用于生成规则、对规则库中的规则进行索引以及将规则转换成代码;以及
流程控制器,用于利用一组规则来表征所述系统流程的所有逻辑以实现系统流程中逻辑的完全规则化,
其中通过规则引擎将通过流程控制器得到的该组规则转换成代码;
其中所述流程控制器包括:
规则选择/定义器,用于通过规则引擎来选择/定义规则;
规则分类器,用于对所选择/定义规则进行分类;
规则抽取器,用于对经分类的规则进行抽取;
规则流程化器,用于对所抽取出的规则进行流程化;以及
流程优化器,用于根据预定目标对流程化的规则进行优化;
其中所述流程优化器被配置为对关键流程的细化,对性能瓶颈进行分析以及基于性能瓶颈分析来重置规则;
其中所述性能瓶颈分析采用六西格玛方法:SIPOC价值流图,因果分析,失效模式分析,IDEFO,What-If分析。
2.如权利要求1所述的设备,其中所述规则分类器被配置为按照预定义规则体系进行分类。
3.如权利要求1所述的设备,其中所述规则抽取器被配置为按照预定义规则体系对规则进行分层抽取。
4.如权利要求1-3中任一项所述的设备,其中,所述规则的种类包括流程、决策、表达、集成、数据结构、约束、安全、通讯、计算中的一个或多个。
5.如权利要求1所述的设备,其中所述规则引擎包括:
规则产生器,用于生成规则并将规则存储在数据库中;
规则索引器,基于数据库的查询对规则进行索引;
规则编译器,将规则转换成代码。
6.一种系统流程控制方法,包括:
利用一组规则来表征所述系统流程的所有逻辑以实现系统流程中逻辑的完全规则化;以及
将该组规则转换成代码;
其中利用一组规则来表征所述系统流程包括:选择/定义规则、对所选择/定义规则进行分类、对经分类的规则进行抽取以及对所抽取出的规则进行流程化,根据预定目标对流程化的规则进行优化;
其中所述优化包括对关键流程的细化,对性能瓶颈进行分析以及基于性能瓶颈分析来重置规则;
其中所述性能瓶颈分析采用六西格玛方法:SIPOC价值流图、因果分析、失效模式分析、IDEFO、What-If分析。
7.如权利要求6所述的方法,其中所述分类是按照预定义规则体系进行分类。
8.如权利要求6所述的方法,其中所述抽取都按照预定义规则体系进行分层抽取。
9.如权利要求6-8任一项所述的方法,其中,所述规则的种类包括流程、决策、表达、集成、数据结构、约束、安全、通讯、计算中的一个或多个。
CN201110437045.1A 2011-12-23 2011-12-23 系统流程控制设备和方法 Expired - Fee Related CN102566536B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110437045.1A CN102566536B (zh) 2011-12-23 2011-12-23 系统流程控制设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110437045.1A CN102566536B (zh) 2011-12-23 2011-12-23 系统流程控制设备和方法

Publications (2)

Publication Number Publication Date
CN102566536A CN102566536A (zh) 2012-07-11
CN102566536B true CN102566536B (zh) 2015-12-02

Family

ID=46412180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110437045.1A Expired - Fee Related CN102566536B (zh) 2011-12-23 2011-12-23 系统流程控制设备和方法

Country Status (1)

Country Link
CN (1) CN102566536B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298726B (zh) * 2014-09-26 2018-07-03 惠州市亿能电子有限公司 一种基于数据库的bms数据存储系统及其方法
CN106354110B (zh) * 2016-10-31 2019-01-01 中冶赛迪重庆信息技术有限公司 一种原料场自由流程控制系统及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056210A (zh) * 2007-06-05 2007-10-17 网御神州科技(北京)有限公司 一种网络集中管理平台上的事件处理系统和方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6468069B2 (en) * 1999-10-25 2002-10-22 Jerome H. Lemelson Automatically optimized combustion control
CN102014414A (zh) * 2010-12-24 2011-04-13 北京拓明科技有限公司 一种网络优化智能决策向导系统及自动化分析方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056210A (zh) * 2007-06-05 2007-10-17 网御神州科技(北京)有限公司 一种网络集中管理平台上的事件处理系统和方法

Also Published As

Publication number Publication date
CN102566536A (zh) 2012-07-11

Similar Documents

Publication Publication Date Title
CN101617292B (zh) 面向生成器图的编程和执行
Cicchetti et al. Managing dependent changes in coupled evolution
CN111712809A (zh) 通过示例来学习etl规则
US8782597B2 (en) Ontology updating apparatus, method and system
CN108829884A (zh) 数据映射方法及装置
Jeong et al. IDEF method-based simulation model design and development
CN102566536B (zh) 系统流程控制设备和方法
CN101331505B (zh) 用于解决一类现实组合优化问题的算法开发环境的方法和装置
Liu et al. A dynamic updating method of digital twin knowledge model based on fused memorizing-forgetting model
CN103258255A (zh) 一种适用于电网管理系统的知识发现方法
CN104462705A (zh) 一种基于微粒群算法的夹具装配序列规划方法
CN109669671B (zh) 一种基于微服务的多层次自适应方法
Chen Design and implementation of automatic code generation method based on model driven
Rahmouni et al. Approach by modeling to generate an e-commerce web code from laravel model
CN107025110B (zh) 一种基于软件开发要素及要素之间的联系的时态建模方法
Ghaibi et al. A tool support for the adaptation of user interfaces based on a business rules management system
Huang et al. Object-oriented development of the embedded system based on Petri-nets
Smaizys et al. Business Rules based agile ERP systems development
Kumar et al. A hybrid approach to perform test case prioritisation and reduction for software product line testing
Roldán et al. Knowledge representation of the software architecture design process based on situation calculus
Cotter Integrating IDEF0 into a systems framework for statistical engineering
Zhang et al. Predicting Relations in SG-CIM Model Based on Graph Structure and Semantic Information
US20230280991A1 (en) Extensibility recommendation system for custom code objects
Manika et al. Knowledge Representation in Business Process Automation Systems
Chen et al. Failure mode databases and their knowledge-based management

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151202

Termination date: 20181223

CF01 Termination of patent right due to non-payment of annual fee