一种基于配置文件的程序流程控制方法

文档序号:6638299阅读:373来源:国知局
专利名称:一种基于配置文件的程序流程控制方法
技术领域
本发明涉及程序流程控制技术,具体是一种基于配置文件的程序流程控制方法,特别是一种通过使用配置文件控制程序执行流程的方法。
背景技术
通常,在C/S,B/S等模式的应用程序开发中,服务端程序要接受各类不同的输入请求命令,通过运算返回相应的结果。
由于要处理的逻辑是复杂多样的,并且随着系统的完善,可能不断的有新的功能需要加入到系统中。因此服务端程序的处理逻辑在设计时候,应尽量包括主要功能,并具有一定的扩展性,以满足将来功能扩充之需。
现有的C/S,B/S系统服务端程序一般都采用完整的代码逻辑方式,即把所有可能的客户端请求的处理都包括到代码逻辑中。通过请求标识(命令码或参数等)来进行逻辑分支选择处理。
这样做的好处是效率比较高,中间冗余过程少。但是,采用这种方式,服务端功能模块相对会比较庞大复杂。并且,如果系统开发完成后,需要加入新的功能,或有另外一个类似的但需求略有不同的应用系统,则代码要被修改才能满足新的应用系统需求。

发明内容
本发明针对应用系统复杂多变的情况,采取配置文件方式,来定义应用系统中的操作执行流程,本发明所提供的一种基于配置文件的程序流程控制方法,根据不同的组合形式,使得同一套代码能方便的满足各类不同的业务处理需求,达到快速构建系统和灵活扩展的目的。
本发明是这样具体实现的
一种基于配置文件的程序流程控制方法,其特征在于,包括如下处理通过配置文件定义应用程序的执行流程,根据实际需要以顺序或分支形式把多步操作组合成所需的操作流程;通过流程调度,读取配置信息,对各步操作进行调度执行,包含操作调度、入参选择。
所述流程调度进一步包括如下处理流程调度模块根据输入参数,找到配置文件中的对应配置项;配置项定义一系列的操作步骤;流程调度模块根据配置项的具体内容,选择特定的应用程序处理逻辑进行执行;所述选择特定的应用程序处理逻辑执行的先后顺序与配置文件中定义的操作顺序一致。
所述配置项中可以有分支判断配置,在调度过程中,可以动态的对某步骤执行情况进行判断,根据当时的执行结果决定下一步骤调用哪一个处理进行执行。
所述配置项定义的一系列操作步骤包含本步操作标识ID、执行的入参来源、具体执行方法名、下一步操作标识ID操作基本信息。
所述操作调度根据每一步骤的配置信息,定位具体的应用处理逻辑,传入参数进行调用,返回结果存入临时结果集,作为后续步骤调用的基础,再根据配置信息中下一步操作的标识内容,决定当前步骤执行完成后,需要执行的下一步操作内容,进行调用。
所述入参选择根据配置信息,决定执行所需参数类型和来源,从临时结果集中找到此步骤执行所需要的参数。
所述流程调度还可以包括分支逻辑控制,如果配置文件中配置了分支选择信息,流程调度模块可以根据当前步骤的执行结果,动态的决定下一步执行哪一操作。
本发明采用使用配置文件定制程序流程的控制方法,把各独立的小功能模块组合在一起完成一个完整的功能,则背景技术中所述的问题可以被很好解决。
通过不同的组合方式可以让同一套代码实现不同的程序流程,满足在功能上相近的同一类应用系统需求;配置文件负责操作主流程控制,则服务端应用程序就相对简单,功能独立,无太多的分支处理逻辑;如果原有系统升级,增加新的需求,则可以通过更新配置流程内容达到目的。系统也有可能会增加新的功能模块,但不必修改程序中流程控制部分的逻辑。只用修改配置文件就可以把新增功能加入到整个操作处理逻辑流程中。
从上述描述可以看出使用配置文件方式控制程序流程,使得应用系统开发工作变得便捷高效,系统具有比较好的复用性和扩展性。
相对于现有方法,本发明的方法采用配置文件管理程序流程,具有很强的灵活性。对子功能模块进行积木式的组合,可适应不同的应用场景定制要求,大大提高代码的复用性,也使得不同应用场景的逻辑实现变得简单、快捷、灵活。


图1本发明基于配置文件的程序流程调度原理图;图2CAF系统工具框架原理图;图3流程控制子模块的流程调度原理图。
具体实施例方式
为实现发明目的,本发明提出的方法主要包括以下步骤(1)以配置文件形式定义应用程序逻辑模块的执行流程。应用实现过程中可以根据实际需要以顺序或分支形式把多步操作组合成所需的操作流程;说明书附图1基于配置文件的程序流程调度原理图显示了这种调度方式的基本框架结构。
调度基本流程如下●流程调度模块根据输入参数,找到配置文件中的对应配置项;●配置项定义了一系列的操作步骤,每一步操作包含了一些操作基本信息,如“本步操作标识ID”、“执行的入参来源”、“具体执行方法名”,“下一步操作标识ID”等。
●流程调度模块根据配置项具体内容,选择特定的应用程序处理逻辑进行方法调用;●所述选择特定的应用程序处理逻辑执行的先后顺序与配置文件中定义的操作顺序一致;●如需要,配置项中还可以有分支判断配置。调度过程中,可以动态的对某步骤执行情况进行判断,根据当时的执行结果决定下一步骤调用哪一个处理进行执行。
(2)流程调度模块是本发明的重要部分,负责读取配置信息,对各步操作进行调度执行。可以包含操作调度、入参选择、分支逻辑控制等相关模块。
具体说明如下操作调度根据每一步骤的配置信息,定位具体的应用处理逻辑,传入参数进行调用,返回结果存入临时结果集,作为后续步骤调用的基础。再根据配置信息中下一步操作的标识内容,决定当前步骤执行完成后,需要执行的下一步操作内容,进行调用。
入参选择根据配置信息,决定执行所需参数类型和来源,从临时结果集中找到此步骤执行所需要的参数。
分支逻辑控制如果配置文件中配置了分支选择信息,则执行该步骤方法时,流程调度模块可以根据当前步骤的执行结果,动态的决定下一步执行哪一操作。
下面结合附图2和图3对本发明的一个实际应用作详细的说明在CDMA网管系统服务端的CAF系统工具框架模块中使用了本发明,达到了灵活控制上行/下行消息处理流程的目的。
CAF系统工具框架模块根据基于配置文件的程序流程控制技术实现了一套灵活的应用自定义业务流程的机制,并控制流程的正确执行,将重用的粒度细化到方法。
图2为“CAF系统工具框架原理图”,图中展示了工具CAF中的基本消息处理流程。
上行消息处理流程●网管客户端发起上行请求消息;
●该消息被送达网管服务端程序,上行流程调度模块根据配置文件,调用相应的网管业务模块中的方法,执行对应的上行处理。不同的应用在网管服务端可根据需要配置自己的操作步骤,决定消息在服务端具体做什么处理。
●消息经过网管服务端程序处理后被发送到前台网元设备。
下行消息处理流程●前台网元向后台网管程序上报消息;●数据被送到网管服务端程序,下行流程调度模块根据配置文件,调用相应的网管业务模块,执行对应的下行处理。不同的应用在网管服务端可根据需要配置自己的操作步骤,决定前台上报的消息在服务端具体做什么处理。
●消息经过网管服务端程序处理后被发送到网管的客户端。
以下给出一具体实施示例以具有对应配置信息的上行消息为例说明,根据配置信息将此消息按以下流程被处理1.首先执行FuncA方法;2.如果执行正常,根据Next=”Maf2”标识,执行一下步;3.执行步骤”Maf2”的FuncB方法,该步骤Next=”Fin”,流程执行到此结束;4.如果在执行步骤1的FuncA方法出现分支异常,根据Exception=″Maf3,进行分支跳转,执行下一步;5.执行步骤”Maf3”的Func3方法,该步骤Next=”Fin”,流程执行到此结束。
框架部分,主要包括框架初始化子模块、上/下行流程控制子模块。初始化子模块主要负责从配置文件中读取与处理流程相关的配置信息等工作。
上/下行流程控制模块则负责接收来自网管客户端或前台网元的消息,并从初始化子模块获取相关上/下行流程信息,再通过调度控制执行该流程。图3就是流程控制子模块的流程调度原理图●调度模块中流程控制器首先从操作选择器获得操作具体信息;●流程控制器调用单步操作执行器进行操作指定方法的调用;
●单步操作执行器执行时使用入参选择器从临时结果集合中获得入参;●单步执行完成后,处理结果存入临时结果集合。流程控制器取下一步操作进行执行。
从上述介绍可看出,本发明应用在了CAF系统工具框架模块中,配置信息由初始化子模块读取和管理,流程控制子模块负责解析执行这些信息,最终完成对上/下行消息的处理。
使用同一套CAF的代码,不同的应用程序只需要提供相应的配置文件和业务处理模块,就可以完成不同的业务流程处理功能。如遇新需求要求变更原有处理流程,无须修改代码,只通过修改配置文件内容就可以达到目的。可见使用这种基于配置文件的流程控制技术可以增加应用系统的复用性和扩展性。
权利要求
1.一种基于配置文件的程序流程控制方法,其特征在于,包括如下处理通过配置文件定义应用程序的执行流程,根据实际需要以顺序或分支形式把多步操作组合成所需的操作流程;通过流程调度,读取配置信息,对各步操作进行调度执行,包含操作调度、入参选择。
2.如权利要求1所述基于配置文件的程序流程控制方法,其特征在于,所述流程调度进一步包括如下处理流程调度模块根据输入参数,找到配置文件中的对应配置项;配置项定义一系列的操作步骤;流程调度模块根据配置项的具体内容,选择特定的应用程序处理逻辑进行执行;所述选择特定的应用程序处理逻辑执行的先后顺序与配置文件中定义的操作顺序一致。
3.如权利要求2所述基于配置文件的程序流程控制方法,其特征在于所述配置项中可以有分支判断配置,在调度过程中,可以动态的对某步骤执行情况进行判断,根据当时的执行结果决定下一步骤调用哪一个处理进行执行。
4.如权利要求2所述基于配置文件的程序流程控制方法,其特征在于,所述配置项定义的一系列操作步骤包含本步操作标识ID、执行的入参来源、具体执行方法名、下一步操作标识ID操作基本信息。
5.如权利要求1或2所述基于配置文件的程序流程控制方法,其特征在于,所述操作调度根据每一步骤的配置信息,定位具体的应用处理逻辑,传入参数进行调用,返回结果存入临时结果集,作为后续步骤调用的基础,再根据配置信息中下一步操作的标识内容,决定当前步骤执行完成后,需要执行的下一步操作内容,进行调用。
6.如权利要求1或2所述基于配置文件的程序流程控制方法,其特征在于所述入参选择根据配置信息,决定执行所需参数类型和来源,从临时结果集中找到此步骤执行所需要的参数。
7.如权利要求1或2所述基于配置文件的程序流程控制方法,其特征在于,所述流程调度还可以包括分支逻辑控制,如果配置文件中配置了分支选择信息,流程调度模块可以根据当前步骤的执行结果,动态的决定下一步执行哪一操作。
全文摘要
本发明涉及程序流程控制领域,公开了一种基于配置文件的程序流程控制方法,包括如下步骤通过配置文件定义应用程序的执行流程,根据实际需要以顺序或分支形式把多步操作组合成所需的操作流程;通过流程调度模块,读取配置信息,对各步操作进行调度执行,包含操作调度、入参选择。本发明采用使用配置文件定制程序流程的控制方法,把各独立的小功能模块组合在一起完成一个完整的功能,相对于现有方法,具有很强的灵活性,对子功能模块进行积木式的组合,可适应不同的应用场景定制要求,大大提高代码的复用性,也使得不同应用场景的逻辑实现变得简单、快捷、灵活。
文档编号G06F9/44GK1920779SQ200510093028
公开日2007年2月28日 申请日期2005年8月25日 优先权日2005年8月25日
发明者崔巍, 郑继峰, 陈彦彪, 孙旭东 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1