流程控制方法及装置制造方法及图纸

技术编号:11100026 阅读:72 留言:0更新日期:2015-03-04 11:50
一种流程控制方法及装置,该方法包括如下步骤:当一个流程启动时,加载预先设置的流程配置文件;对该流程配置文件中的节点内容进行合法性检查,如果通过合法性检查,则根据该流程配置文件创建一个流程树;根据该流程树确定入口节点,并执行该入口节点的行为过程,获取该入口节点的行为过程的执行结果;根据该入口节点的行为过程的执行结果确定对应的目标节点,控制流程跳转至该目标节点,并执行该目标节点的行为过程,直至预设条件成立时结束该流程。利用本发明专利技术可降低软件维护、测试的成本,提高软件产品的质量。

【技术实现步骤摘要】
流程控制方法及装置
本专利技术涉及流程控制
,尤其涉及一种金融业软件的流程控制方法及装置。
技术介绍
目前,一般金融业软件(如ATMC软件)会包括很多交易,例如,存款、取款、查询、转账、缴费等,随着银行业务的不断增加,ATMC软件业务逻辑变得复杂,程序代码的维护非常困难,同时,逻辑复杂会增加修改代码的成本、风险。 进一步地,现有技术主要通过全编码的方式实现业务流程,各个业务逻辑交叉混舌L业务流程不清晰,程序代码难懂,当增加业务流程需要修改代码时会影响到原来的业务,并大大增加测试的工作量。 因此,现有技术中的流程控制程序复杂,流程混乱,开发人员入门难,增加软件维护的成本。另外,修改代码风险大,增加测试成本,降低软件的可靠性。
技术实现思路
鉴于以上内容,本专利技术提出一种流程控制方法及装置,通过预先设置的流程配置文件,控制业务流程的执行。 所述流程控制方法包括:流程加载步骤一,当一个流程启动时,加载预先设置的流程配置文件,该流程配置文件设置有不同节点,每个节点包括一个行为过程所在的程序集、该程序集中执行该行为过程的自定义类名、该行为过程的执行结果、及执行结果对应的目标节点;流程加载步骤二,对该流程配置文件中的节点内容进行合法性检查,如果通过合法性检查,则根据该流程配置文件创建一个流程树,该流程树包括该流程配置文件中的所有节点信息;流程控制步骤一,根据该流程树确定入口节点,并执行该入口节点的行为过程,获取该入口节点的行为过程的执行结果;流程控制步骤二,根据该入口节点的行为过程的执行结果确定对应的目标节点,控制流程跳转至该目标节点,并执行该目标节点的行为过程,直至预设条件成立时结束该流程。 所述流程控制装置包括:流程加载模块,用于当一个流程启动时,加载预先设置的流程配置文件,该流程配置文件设置有不同节点,每个节点包括一个行为过程所在的程序集、该程序集中执行该行为过程的自定义类名、该行为过程的执行结果、及执行结果对应的目标节点;所述流程加载模块,还用于对该流程配置文件中的节点内容进行合法性检查,如果通过合法性检查,则根据该流程配置文件创建一个流程树,该流程树包括该流程配置文件中的所有节点信息; 流程控制模块,用于根据该流程树确定入口节点,并执行该入口节点的行为过程,获取该入口节点的行为过程的执行结果;所述流程控制模块,还用于根据该入口节点的行为过程的执行结果确定对应的目标节点,控制流程跳转至该目标节点,并执行该目标节点的行为过程,直至预设条件成立时结束该流程。 相较于现有技术,本专利技术所述的流程控制方法及装置,通过预先设置的流程配置文件,控制业务流程的执行,降低软件维护、测试的成本,提高软件产品的质量。当开发人员需要新增新业务时,只需要增加实现新业务对应的行为过程(Act1n:完成一定业务功能的代码段),然后在预先设置的流程配置文件中增加该行为过程对应的节点即可,修改范围和风险小,各个行为过程功能独立,可以大幅降低软件开发难度与维护成本。 【附图说明】 图1是本专利技术流程控制装置的结构示意图;图2是本专利技术流程控制方法的整体流程图。 【具体实施方式】 如图1所示,是本专利技术流程控制装置的结构示意图。在本实施方式中,所述流程控制装置2包括流程加载模块21和流程控制模块22,其中,所述流程加载模块21进一步包括配置文件加载子模块211、流程检查子模块212,所述流程控制模块22进一步包括流程节点执行子模块221、流程节点跳转子模块222、及流程总控制子模块223。所述流程加载模块21用于加载预先设置的流程配置文件,并对该流程配置文件中的节点内容进行合法性检查,所述流程控制模块22用于根据该流程配置文件中的节点内容,控制业务流程的执行。 本专利技术所称的模块可以是完成一特定功能的计算机程序段,也可以是固化有上述计算机程序段的芯片。所述流程控制装置2可以是一台电脑或一台服务器,关于各个模块的具体功能参阅图2的描述。 需要说明的是,图1只是流程控制装置2的软件结构和硬件结构的示意性说明,该流程控制装置2还包括其它必要的电子元器件和系统软件,如通过数据线或信号线相连的显示屏幕、输入设备、存储器、处理器、操作系统等,在此不再一一赘述。所述多个模块可以存储于流程控制装置2的存储器中并被配置成由一个或多个处理器执行,以完成本专利技术。 如图2所示,是本专利技术流程控制方法的整体流程图。 步骤S101,当一个流程启动时,配置文件加载子模块211加载预先设置的流程配置文件,该流程配置文件设置有不同节点,每个节点包括一个行为过程所在的程序集、该程序集中执行该行为过程的自定义类名、该行为过程的执行结果、及执行结果对应的目标节点等。 在本实施方式中,定义一个流程由一个或者多个行为过程(Act1n)组成,每个行为过程为完成一定业务功能的代码段。多个行为过程形成一个流程配置文件(或称之为“流程图”),该流程配置文件采用XML格式存储,用于控制行为过程的执行与流程跳转。 以下是流程配置文件的一个例子: <?xml vers1n=l.0 encoding=GB2312?> 〈Flowchart defaultnode=Stepl timeout=600000>〈Node id=〃Stepl〃 assembly=〃Act1ns.dll〃 className= Act1ns.Start〃>〈Transit1n result=〃0K〃 targetnode=〃Step2〃/> 〈/Node〉 〈Node id=〃Step2〃 assembly=〃Act1ns.dll〃 className= Act1ns.Service〉〈Transit1n result=〃Deposit〃 targetnode=〃Step21〃/> 〈Transit1n result=〃Inquire〃 targetnode=〃Step22〃/> 〈Transit1n result=〃Exit〃 targetnode=〃ExitChart〃/> 〈/Node〉 〈Node id=〃Step21〃 assembly=〃Act1ns.dll〃 className= Act1ns.Deposit〉〈Transit1n result=〃Completed〃 targetnode=〃Step2〃/> 〈/Node〉 〈Node id=〃Step22〃 assembly=〃Act1ns.dll〃 className= Act1ns.1nquire〉〈Transit1n result=〃Completed〃 targetnode=〃Step2〃/> 〈/Node〉 〈/Flowchart〉该流程配置文件的节点与属性元素说明如下:Flowchart,代表流程图,即流程配置文件;Timeout,设置每个节点停留的最长时间(如10分钟),如果一个节点对应的行为过程的执行时间超过该停留的最长时间,则记录异常信息,进行异常处理;Defaultnode,指定流程的入口节点;Node,代表流程节点;ID,流程节点的唯一标识符;Aassembly,行为过程对应代码段所在本文档来自技高网...

【技术保护点】
一种流程控制方法,应用于流程控制装置,其特征在于,该方法包括:流程加载步骤一,当一个流程启动时,加载预先设置的流程配置文件,该流程配置文件设置有不同节点,每个节点包括一个行为过程所在的程序集、该程序集中执行该行为过程的自定义类名、该行为过程的执行结果、及执行结果对应的目标节点;流程加载步骤二,对该流程配置文件中的节点内容进行合法性检查,如果通过合法性检查,则根据该流程配置文件创建一个流程树,该流程树包括该流程配置文件中的所有节点信息;流程控制步骤一,根据该流程树确定入口节点,并执行该入口节点的行为过程,获取该入口节点的行为过程的执行结果;及流程控制步骤二,根据该入口节点的行为过程的执行结果确定对应的目标节点,控制流程跳转至该目标节点,并执行该目标节点的行为过程,直至预设条件成立时结束该流程。

【技术特征摘要】
1.一种流程控制方法,应用于流程控制装置,其特征在于,该方法包括: 流程加载步骤一,当一个流程启动时,加载预先设置的流程配置文件,该流程配置文件设置有不同节点,每个节点包括一个行为过程所在的程序集、该程序集中执行该行为过程的自定义类名、该行为过程的执行结果、及执行结果对应的目标节点; 流程加载步骤二,对该流程配置文件中的节点内容进行合法性检查,如果通过合法性检查,则根据该流程配置文件创建一个流程树,该流程树包括该流程配置文件中的所有节点信息; 流程控制步骤一,根据该流程树确定入口节点,并执行该入口节点的行为过程,获取该入口节点的行为过程的执行结果;及 流程控制步骤二,根据该入口节点的行为过程的执行结果确定对应的目标节点,控制流程跳转至该目标节点,并执行该目标节点的行为过程,直至预设条件成立时结束该流程。2.根据权利要求1所述的流程控制方法,其特征在于,所述流程配置文件还设置有: 每个节点停留的最长时间,如果一个节点对应的行为过程的执行时间超过该停留的最长时间,则记录异常信息;及 每个节点的一个或多个出口分支,其中,每个出口分支对应一个执行结果。3.根据权利要求2所述的流程控制方法,其特征在于,所述合法性检查包括:检查该流程配置文件中的入口节点是否存在;检查跳转的目标节点是否存在;检查节点ID是否有同名;检查程序集是否存在。4.根据权利要求2所述的流程控制方法,其特征在于,所述流程控制步骤一包括: 确定该流程树中的入口节点属性指定的节点,将该节点作为该流程的当前执行节点,加载当前执行节点对应的程序集,并创建当前执行节点的自定义类的对象,并调用该自定义类的对象的入口函数执行该行为过程,获取该入口节点的行为过程的执行结果。5.根据权利要求4所述的流程控制方法,其特征在于,所述流程控制步骤二包括: 根据上述入口函数的执行结果及当前执行节点的出口分支,确定该执行结果在该出口分支中对应的目标节点,控制流程跳转至该目标节点;及 将该目标节点作为流程的当前执行节点,继续执行该目标节点的行为过程,直到预设条件成立时结束流程,其中,所述预设条件包括:该流程对应的业务关闭,或者当前执行节点的执行结果对应的目标节点ID为预设的结束字符。...

【专利技术属性】
技术研发人员:李进南
申请(专利权)人:深圳怡化电脑股份有限公司深圳市怡化时代科技有限公司深圳市怡化金融智能研究院
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1