具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一个或多个实施例一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书一个或多个实施例保护的范围。
本说明书一个或多个实施例提供了一种任务状态控制方法及装置,通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制各目标任务工单的执行状态流转,进而使得任务工单对应的业务处理事项自动协同推进完成,这样能够减少人工线下沟通,提高工作效率和时效性。
图1为本说明书一个或多个实施例提供的任务状态控制方法的应用场景示意图,其中,如图1所示,用于实现多任务状态协同控制的系统主要包括:中心系统和多个业务系统,其中,以多业务系统协同完成一项新业务上线为例,该中心系统上设置有基础运营平台,该多个业务系统为需要上线新业务的多个关联系统,各业务系统通过串行外设接口SPI与基础运营平台进行通信连接。
在对多任务状态进行控制的过程中,通过任务工单的形式来限定业务系统完成业务上线的流程,为了使得各业务系统在同一流程控制下协同完成新业务上线,先创建主任务工单,再根据该主任务工单创建多个同级别的子任务工单,每个子任务工单对应于一个业务系统,子任务工单中各任务节点的流转在主任务工单的各任务节点的流转控制下协同完成,在具体实施时,针对每个目标任务工单,先根据该任务工单以及该任务工单的至少一个关联任务工单的当前执行状态和相应的状态决策规则确定目标任务工单的目标执行动作,再根据该目标执行动作控制目标任务工单的执行状态流转。
其中,针对确定子任务工单的目标执行动作的过程,该目标执行动作的确定过程可以由中心系统完成,还可以由各业务系统自身完成,优选地,由中心系统统一确定各任务工单的目标执行动作,并基于该目标执行动作控制任务工单的执行状态,使得各业务系统的配置任务在主任务工单的流程控制下协同完成,减少人工线下沟通,提高新业务上线的工作效率和时效性。
图2为本说明书一个或多个实施例提供的任务状态控制方法的第一种流程示意图,图2中的方法的执行主体可以是图1中的中心系统,还可以是图1中的业务系统,优选的,由中心系统统一控制各任务工单的任务状态变更,如图2所示,该方法至少包括以下步骤:
S201,获取任务工单的当前执行状态,其中,该任务工单包括:目标任务工单和该目标任务工单的关联任务工单;
具体的,目标任务工单与关联任务工单之间可以是主从关系,也可以是同属于同一主任务工单的同级别的子任务工单,还可以是不包含主任务工单但彼此关联的同级别的任务工单;上述当前执行状态表示任务工单的当前所在任务节点和在该任务节点下的执行结果,例如,任务节点可以是复核环节,对应的执行结果为等待进入配置复核、复核通过、正在配置复核或复核失败,又如,任务节点可以是灰度测试环节,对应的执行结果为等待进入灰度测试、灰度测试通过、正在灰度测试或灰度测试失败。
S202,获取与目标任务工单相关的状态决策规则,其中,该状态决策规则为基于前置条件决策后续执行动作的规则;
具体的,该目标任务工单为需要控制下一步执行动作的任务工单,该状态决策规则是预先生成的,其中,可以基于接收到的用户根据实际业务需求输入的设置信息生成的,还可以是系统直接根据业务需求自动生成的;该前置条件包括:用于限定目标任务工单和至少一个关联任务工单所在任务节点的约束条件。
S203,根据获取到的当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;
具体的,将获取到的当前执行状态与前置条件进行比对,如果当前执行状态与前置条件一致,则将该前置条件对应的执行动作确定为目标任务工单的目标执行动作。
S204,根据确定出的目标执行动作控制目标任务工单的执行状态流转;
具体的,为了更好地对子任务工单进行任务节点流转控制,如果子任务工单执行完上一任务节点对应的执行动作后,自动进入下一任务节点,但先不执行该下一节点对应的执行动作,只有主任务工单到达该下一任务节点后,统一触发各子任务工单执行该下一节点对应的执行动作,例如,子任务工单执行完配置复核后,自动进入dev发布任务节点,但先不执行dev发布动作,当所有子任务工单均执行完配置复核,并进入dev发布任务节点,此时,主任务工单的目标执行动作为dev发布,进而推进各子任务工单执行dev发布动作,即子任务工单的目标执行动作为dev发布,依次类推,在主任务工单的协同控制下推进各子任务工单的任务节点流转,完成新业务上线。
在本说明书一个或多个实施例中,首先,获取任务工单的当前执行状态,该任务工单包括:目标任务工单和该目标任务工单的关联任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制各目标任务工单的执行状态流转,进而使得任务工单对应的业务处理事项自动协同推进完成,这样能够减少人工线下沟通,提高工作效率和时效性。
需要说明的是,步骤S201和步骤S202的执行没有严格的先后顺序。
具体的,针对某一新业务上线时,需要对多个业务系统进行配置数据更新,例如,如图3所示,给出了在主任务工单控制下多个子任务工单的任务状态流转过程的实现原理示意图,在图3中,先创建主任务工单,再进行业务要素录入生成配置数据,该主任务工单下设置4个子任务工单,每个子任务工单对应于一个业务系统,需要对该业务系统进行配置数据上线,每个子任务工单所包含的任务节点有:配置复核、dev/sit/pre配置发布、配置灰度测试、配置上线。在各子任务工单的任务节点流转过程中,可能存在某一业务系统的配置失败的情况,此时,需要将该业务系统对应的子任务工单的任务节点回滚至指定任务节点,待所有子任务工单的某一任务节点均执行成功后,再进入下一任务节点,直到所有子任务工单均完成配置上线,进入需求关闭节点,完成本次业务系统的任务上线。
其中,需要预先生成用于确定任务工单后续执行动作的状态决策规则,针对系统直接根据业务需求自动生成的情况,基于此,如图4所示,在上述S201获取任务工单的当前执行状态之前,还包括:
S205,根据业务需求生成状态决策规则,其中,该业务需求包括:目标任务工单和该目标任务工单的关联任务工单的协同处理需求,具体的,对业务需求进行分析;针对每个任务节点,确定进入下一步执行动作所需满足的约束条件;根据该约束条件和对应的下一步执行动作,生成该任务节点对应的状态决策规则。
另外,针对基于接收到的用户根据实际业务需求输入的设置信息生成的情况,基于此,接收用户输入的决策规则设置信息,其中,该决策规则设置信息是用户根据实际业务需求确定的,该决策规则设置信息包括:各任务节点对应的约束条件以及满足该约束条件需要完成的下一个执行动作;根据该决策规则设置信息,确定各任务节点对应的状态决策规则。
例如,基于上述图3给出的业务场景,为该业务场景生成对应的状态决策规则集合,针对业务系统的配置数据更新实例,能够基于该状态决策规则集合来控制子任务工单和主任务工单的状态流转,具体的,状态决策规则集合如下表1所示:
表1
在表1中,每一行表示一个任务节点对应的状态决策规则,该状态决策规则中可以包括:工单类型、任务节点、前置条件、下一步执行动作、执行目的之间的对应关系。
具体的,结合配置数据更新的实际业务需求,确定任务环节、前置条件、执行动作和执行目的之间的对应关系,该执行动作为根据业务情况满足前置条件时需要进行的下一步执行动作,其中,在表1中包括:控制主任务工单中各流程节点的第一决策规则集、以及控制子任务工单中各流程节点的第二决策规则集。
需要说明的是,上述表1中的状态决策规则集合仅仅是针对特定业务需求的实例,并不限定本发明的保护范围。
例如,主任务工单的当前所在任务节点“dev发布”对应的状态决策规则中的前置条件为“主任务工单node=devpub&&全部子任务工单node>=sitpub”,即前置条件为主任务工单所在任务节点是dev发布节点且所有子任务工单所在任务节点为sit发布节点,状态决策规则中的执行动作为“sit发布”,从而推进所有子任务工单进入sit发布动作。
又如,某一子任务工单的当前所在任务节点“sit发布”对应的状态决策规则中的前置条件为“子任务工单node=sitpub&&主任务工单node=sitpub”,即前置条件为目标任务工单所在任务节点是sit发布节点且主任务工单所在任务节点也为sit发布节点,状态决策规则中的执行动作为“sit发布”,从而推进所有子任务工单进入sit发布动作。
另外,考虑到不同业务系统可能具有各自的个性化需求,例如,某一业务系统配置不需要灰度验证等等,因此,在推进该业务系统对应的子任务工单时,需要跳过灰度验证环节,为了更好地满足各业务系统的个性化需求,可以在状态决策规则中限定,其中,在生成状态决策规则是,针对控制子任务工单中各流程节点的第二决策规则集,在需要个性化设置的任务节点对应的前置条件中增加子任务工单标识和对应的个性化设置信息。
例如,子任务工单01跳过灰度验证环节,此时,在任务节点为灰度验证对应的前置条件中增加“标识为01&&跳过graypub”,对应的,当满足该前置条件时,针对子任务工单01跳过灰度验证环节,自动认为子任务工单01执行完成灰度测试,将该子任务工单的任务节点设置为线上发布,从而满足子任务工单对应的业务系统的个性化需求。
其中,为了降低后续对状态决策规则进行适应性修改来满足变更后的业务需求的难度和复杂度,基于此,在生成状态决策规则时,针对每个任务节点,设置对应的至少一个状态决策规则,因此,在确定与目标任务工单相关的状态决策规则时,首先要确定目标任务工单的当前所在任务节点是什么,再查表1找到该任务节点下的至少一个状态决策规则,当目标任务工单为主任务工单时,一般每个任务节点对应于一个状态决策规则,而当目标任务工单为子任务工单时,由于子任务工单中的某一任务节点可能存在定位配置错误的情况,一般每个任务节点对应于两个状态决策规则,具体的,针对每个任务节点对应各自的至少一个状态决策规则的情况,如图5所述,上述S202获取与目标任务工单相关的状态决策规则,具体包括:
S2021,确定目标任务工单的当前所在任务节点,例如,目标任务工单为主任务工单,当前所在任务节点为dev发布,又如,目标任务工单为任一子任务工单,当前所在任务节点为sit发布;
S2022,在预先生成的状态决策规则集合中,查询与该当前所在任务节点对应的状态决策规则,其中,该状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系。
例如,针对目标任务工单为主任务工单且当前所在任务节点为dev发布的情况,通过查表1可知,对应的状态决策规则为前置条件主任务工单node=devpub&&全部子任务工单node>=sitpub、执行动作sit发布之间的对应关系;
又如,针对目标任务工单为子任务工单且当前所在任务节点为sit发布的情况,通过查表1可知,对应的状态决策规则为前置条件主任务工单子任务工单node=sitpub&&主任务工单node=sitpub、执行动作sit发布之间的对应关系。
其中,针对确定目标任务工单的目标执行动作的过程,如果状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
具体的,可以利用决策引擎、决策树、或规则引擎,根据获取到的当前执行状态和状态决策规则,确定目标任务工单的目标执行动作。
对应的,如图6所示,上述S203根据获取到的当前执行状态和状态决策规则,确定目标任务工单的目标执行动作,具体包括:
S2031,判断获取到的当前执行状态是否满足状态决策规则中的前置条件,其中,该当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果;
若是,则执行S2032,将与该前置条件对应的执行动作确定为目标执行动作。
具体的,上述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
例如,针对目标任务工单为主任务工单的情况,如果获取到的主任务工单的当前执行状态是处于dev发布节点、以及所有子任务工单的当前执行状态为处于sit发布节点且未进行sit发布,对应的状态决策规则中的前置条件为“主任务工单“主任务工单node=devpub&&全部子任务工单node>=sitpub”,通过当前执行状态和前置条件对比,可知,任务工单的当前执行状态满足对应的状态决策规则中的前置条件,此时,将“sit发布”确定为目标执行动作。
又如,针对目标任务工单为子任务工单的情况,如果获取到的目标任务工单的当前执行状态是处于sit发布节点且未进行sit发布、以及主任务工单的当前执行状态为sit发布完成,对应的状态决策规则中的前置条件为“主任务工单“目标任务工单node=sitpub&&主任务工单node=sitpub”,通过当前执行状态和前置条件对比,可知,任务工单的当前执行状态满足对应的状态决策规则中的前置条件,此时,将“sit发布”确定为目标执行动作。
其中,针对控制目标任务工单的执行状态流转的过程,如果目标任务工单包括:子任务工单,关联任务工单包括:主导该子任务工单的主任务工单、和/或该主任务工单主导的其他子任务工单,具体的,关联任务工单的选择是基于状态决策规则中的前置条件限定的任务工单确定的,例如,子任务工单的状态决策规则中的前置条件包括:用于限定目标任务工单(任一待控制的子任务工单)和至少一个关联任务工单(主任务工单)所在任务节点的约束条件,因此,可以只将主导目标任务工单的主任务工单作为关联任务工单;
对应的,如图7所示,上述S204根据确定出的目标执行动作控制目标任务工单的执行状态流转,具体包括:
S2041,根据确定出的子任务工单对应的目标执行动作,生成相应的控制指令,例如,如果目标执行动作为“sit发布”,因此,子任务工单的下一步执行动作为“sit发布”,则对应的控制指令为携带有执行sit发布指示的控制指令;
S2042,将控制指令下发至子任务工单对应的业务系统,以触发业务系统根据控制指令完成对应的业务处理环节,例如,如果对应的控制指令为携带有执行sit发布指示的控制指令,则触发业务系统执行sit发布;
S2043,在接收到业务系统的处理完成反馈信息后,将子任务工单的当前所在任务节点流转到下一任务节点,例如,如果业务处理环节为执行sit发布,则接收到业务系统返回的sit发布成功信息后,将子任务工单的当前所在任务节点流转到预发布节点。
其中,针对控制目标任务工单的执行状态流转的过程,如果目标任务工单包括:主任务工单,关联任务工单包括:主任务工单所主导的多个子任务工单,具体的,关联任务工单的选择是基于状态决策规则中的前置条件限定的任务工单确定的,例如,主任务工单的状态决策规则中的前置条件包括:用于限定目标任务工单(主任务工单)和至少一个关联任务工单(所有子任务工单)所在任务节点的约束条件,因此,需要将目标任务工单主导的所有子任务工单作为关联任务工单;
对应的,如图7所示,上述S204根据确定出的目标执行动作控制目标任务工单的执行状态流转,具体包括:
S2044,根据确定出的主任务工单对应的目标执行动作,变更该主任务工单的当前执行状态,具体的,将主任务工单的当前所在任务节点变更为该目标执行动作对应的任务节点。
例如,如果主任务工单的目标执行动作为“sit发布”,则需要将主任务工单的当前执行状态中的任务节点设置为sit发布节点。
具体的,如图8所示,给出了基于表1中的状态决策规则控制主任务工单和子任务工单的任务节点流转的实现原理示意图,在图8中,首先,创建主任务工单,即生成主任务工单的流程,例如,针对支持指定币种交易的新业务上线的任务实例,该任务涉及多个任务环节,需要每个任务环节逐步流转,该主任务工单包含的任务节点有:业务要素录入、复核环节、dev发布、sit发布、预发布(pre发布)、灰度测试、线上发布、需求关闭。
然后,当主任务工单的流程按照预设任务节点先后顺序流转时,基于表1中的状态决策规则控制流转节奏,例如,由某一任务节点流转到该任务节点的下一任务节点的过程中,如何执行通过状态决策规则来控制,即任务工单中的流程驱动的过程中,基于状态决策规则来控制每一步需要做什么。其中,在主任务工单创建完成之后,开始进入业务要素录入环节,根据业务要素进行任务分配并生成子任务工单,即元数据转换成功,主任务工单的任务节点进入复核环节,且基于表1中的状态决策规则可知,主任务工单的目标执行动作为“提交复核”,进而推进各子任务工单进行配置复核,即将子任务工单推进到复核环节,每个子任务工单对应的业务系统进行配置复核后,子任务工单的任务节点切换到dev发布节点;当所有子任务节点的当前所在节点均为dev发布节点且主任务工单的当前所在节点为复核节点时,主任务工单对应的目标执行动作为“dev发布”,进而推进各子任务工单进行dev发布,即将子任务工单推进到dev发布,每个子任务工单对应的业务系统进行dev发布,依次类推,结合表1中的状态决策规则控制主任务工单和子任务工单的任务节点流转,从而使得各业务系统的配置任务在主任务工单的流程控制下协同完成。
具体的,每个子任务工单均在主任务工单的流转节奏下,执行各自的任务环节,主任务工单的任务节点流转与子任务工单的任务节点流转同步进行,在业务系统进行某一执行动作时,可能通过,也可能失败返回,返回到哪个任务节点也是基于状态决策规则控制的,例如,某一业务系统在执行dev发布时,可能因发布失败或定位配置错误而需要返回配置环节,此时,基于表1中子任务工单下的状态决策规则,针对任务节点为dev发布节点,对应的前置条件为“发布失败or定位配置错误”,对应的执行动作为退回配置,业务系统对应的子任务工单的任务节点退回到配置环节,其他子任务工单暂停任务,直到所有子任务工单的任务节点均为sit发布节点,主任务工单才继续推进各子任务系统进入sit发布环节,因此,基于状态决策规则的控制,子任务工单不会重复执行处理成功的任务环节,从而避免子任务工单流转过程中的相互影响。
具体的,针对主任务工单的流程推进过程中,即目标任务工单为主任务工单,若主任务工单的当前所在任务节点为“dev发布”,结合表1中的状态决策集合可知,当前所在任务节点“dev发布”对应的状态决策规则中的前置条件为“主任务工单node=devpub&&全部子任务工单node>=sitpub”,即前置条件为主任务工单所在任务节点是dev发布节点且所有子任务工单所在任务节点为sit发布节点,状态决策规则中的执行动作为“sit发布”,从而推进所有子任务工单进入sit发布动作。
如果获取到的主任务工单的当前执行状态是处于dev发布节点、以及所有子任务工单的当前执行状态为处于sit发布节点且未进行sit发布,即任务工单的当前执行状态满足对应的状态决策规则中的前置条件,因此,主任务工单的下一步执行动作为“sit发布”,并将主任务工单的当前所在任务节点设置为sit发布节点。
对应的,针对子任务工单的流程推进过程中,即目标任务工单为子任务工单,若子任务工单的当前所在任务节点为“sit发布”,结合表1中的状态决策集合可知,当前所在任务节点“sit发布”对应的状态决策规则中的前置条件为“目标任务工单node=sitpub&&主任务工单node=sitpub”,即前置条件为目标任务工单所在任务节点是sit发布节点且主任务工单所在任务节点也为sit发布节点,状态决策规则中的执行动作为“sit发布”,从而推进所有子任务工单进入sit发布动作。
如果获取到的目标任务工单的当前执行状态是处于sit发布节点且未进行sit发布、以及主任务工单的当前执行状态为sit发布完成,即任务工单的当前执行状态满足对应的状态决策规则中的前置条件,因此,子任务工单的下一步执行动作为“sit发布”,进一步的,向目标任务工单对应的业务系统发送相应的控制指令,以触发业务系统根据该控制指令完成sit发布,在接收到该业务系统反馈sit发布完成反馈信息后,将子任务工单的当前所在任务节点设置为预发布节点。
依次类推,基于表1中的状态决策集合和任务工单的当前执行状态,逐步控制目标任务工单的任务节点流转,直到确认配置数据线上发布完成。
进一步的,考虑到后续由于业务需求的变更,状态决策规则可能随之变化,基于此,如图9所示,在上述S205根据业务需求生成状态决策规则之后,还包括:
S206,在确定业务需求发生变更后,根据变更后的业务需求调整状态决策规则;
具体的,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
其中,由于考虑到新业务上线和优化频率比较高,每次均需要重新编写代码,针对后续因业务需求变更而需要变更控制条件的情况,在本说明书一个或多个实施例中,利用决策引擎基于状态决策规则实现主从任务工单的节点流转控制,进而控制主从多任务的协调执行,使得各业务系统完成新业务上线,正因为状态决策规则具有很强的可读性、延续性、易修改性,直接根据业务需求适应性修改对应的状态决策规则中的前置条件和/或执行动作参数即可,即调整所需满足的前置条件,或者调整满足对应的前置条件所需执行的动作,进而能够简化后续变更操作,减少维护成本。
本说明书一个或多个实施例中的任务状态控制方法,首先,获取任务工单的当前执行状态,该任务工单包括:目标任务工单和该目标任务工单的关联任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;根据目标执行动作控制目标任务工单的执行状态流转。本说明书一个或多个实施例中,通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制各目标任务工单的执行状态流转,进而使得任务工单对应的业务处理事项自动协同推进完成,这样能够减少人工线下沟通,提高工作效率和时效性。
对应上述图2至图9描述的任务状态控制方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种任务状态控制方法,图10为本说明书一个或多个实施例提供的任务状态控制方法的流程示意图,该方法的执行主体可以是图1中的中心系统,还可以是图1中的业务系统,优选的,由中心系统统一控制各任务工单的任务状态变更,如图10所示,该流程包括:
S1001,获取任务工单的当前执行状态,其中,该任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单,具体的,首先要创建一个主任务工单,再完成业务要素录入进行任务分配生成多个同级别的子工单,即涉及的任务工单中至少包括一主任务工单,涉及的任务工单中的子任务工单均为属于该主任务工单下的子工单;
其中,上述当前执行状态表示任务工单的当前所在任务节点和在该任务节点下的执行结果,例如,任务节点可以是复核环节,对应的执行结果为等待进入配置复核、复核通过、正在配置复核或复核失败,又如,任务节点可以是灰度测试环节,对应的执行结果为等待进入灰度测试、灰度测试通过、正在灰度测试或灰度测试失败。
其中,步骤S1011的具体实施方式参见步骤S201,这里不再赘述。
S1002,获取与目标任务工单相关的状态决策规则,其中,该状态决策规则为基于前置条件决策后续执行动作的规则,该目标任务工单包括:主任务工单或子任务工单;
具体的,该目标任务工单为需要控制下一步执行动作的任务工单,该状态决策规则是预先生成的,其中,可以基于接收到的用户根据实际业务需求输入的设置信息生成的,还可以是系统直接根据业务需求自动生成的;该前置条件包括:用于限定目标任务工单和至少一个关联任务工单所在任务节点的约束条件。
其中,步骤S1012的具体实施方式参见步骤S202,这里不再赘述。
S1003,根据获取到的当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;
具体的,将获取到的当前执行状态与前置条件进行比对,如果当前执行状态与前置条件一致,则将该前置条件对应的执行动作确定为目标任务工单的目标执行动作。
其中,步骤S1013的具体实施方式参见步骤S203,这里不再赘述。
S1004,根据确定出的目标执行动作控制目标任务工单的执行状态流转,以使各子任务工单对应的业务系统进行目标业务更新,从而使得各业务系统完成新业务上线。
其中,步骤S1014的具体实施方式参见步骤S204,这里不再赘述。
在本说明书一个或多个实施例中,首先,获取任务工单的当前执行状态,该任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制目标任务工单的执行状态流转,以使各子任务工单对应的业务系统在主任务工单的协调控制下进行目标业务更新,从而使得各业务系统协同完成新业务上线,这样能够减少人工线下沟通,提高新业务上线的工作效率和时效性。
需要说明的是,步骤S1001和步骤S1002的执行没有严格的先后顺序。
其中,需要预先生成主任务工单和子任务工单,具体的,在S1001获取任务工单的当前执行状态之前,还包括:
根据用于更新目标业务的主任务工单,生成由该主任务工单主导的多个子任务工单,其中,每个子任务工单包括:用于控制其对应的业务系统上的业务配置数据更新的流程。
具体的,为了更好地对子任务工单进行任务节点流转控制,如果子任务工单执行完上一任务节点对应的执行动作后,自动进入下一任务节点,但先不执行该下一节点对应的执行动作,只有主任务工单到达该下一任务节点后,统一触发各子任务工单执行该下一节点对应的执行动作,例如,子任务工单执行完配置复核后,自动进入dev发布任务节点,但先不执行dev发布动作,当所有子任务工单均执行完配置复核,并进入dev发布任务节点,此时,主任务工单的目标执行动作为dev发布,进而推进各子任务工单执行dev发布动作,即子任务工单的目标执行动作为dev发布,依次类推,在主任务工单的协同控制下推进各子任务工单的任务节点流转,完成新业务上线。
其中,针对控制目标任务工单的执行状态流转的过程,当获取到的当前执行状态与某一子任务工单对应的状态决策规则中的前置条件一致时,即目标任务工单包括:子任务工单;
对应的,上述S1004根据目标执行动作控制目标任务工单的执行状态流转,具体包括:
根据目标执行动作生成相应的控制指令,例如,如果目标执行动作为“sit发布”,因此,子任务工单的下一步执行动作为“sit发布”,则对应的控制指令为携带有执行sit发布指示的控制指令,其中,此过程的具体实施方式参见步骤S2041,这里不再赘述;
将控制指令下发至子任务工单对应的业务系统,以触发业务系统根据控制指令完成对应的目标业务更新处理环节,例如,如果对应的控制指令为携带有执行sit发布指示的控制指令,则触发业务系统执行sit发布,其中,此过程的具体实施方式参见步骤S2042,这里不再赘述;
在接收到业务系统的处理完成反馈信息后,将子任务工单的当前所在任务节点流转到下一任务节点,从而控制目标任务工单对应的业务系统与主任务工单主导的其他子任务工单对应的业务系统协同更新目标业务,例如,如果业务处理环节为执行sit发布,则接收到业务系统返回的sit发布成功信息后,将子任务工单的当前所在任务节点流转到预发布节点,其中,此过程的具体实施方式参见步骤S2043,这里不再赘述。
其中,针对控制目标任务工单的执行状态流转的过程,当获取到的当前执行状态与主任务工单对应的状态决策规则中的前置条件一致时,即目标任务工单包括:主任务工单;
对应的,上述S1004根据目标执行动作控制目标任务工单的执行状态流转,具体包括:
根据目标执行动作变更主任务工单的当前执行状态,具体的,将主任务工单的当前所在任务节点变更为该目标执行动作对应的任务节点。例如,如果主任务工单的目标执行动作为“sit发布”,则需要将主任务工单的当前执行状态中的任务节点设置为sit发布节点,其中,此过程的具体实施方式参见步骤S2044,这里不再赘述。
其中,需要预先生成用于确定任务工单后续执行动作的状态决策规则,针对系统直接根据业务需求自动生成的情况,基于此,在上述S1001获取任务工单的当前执行状态之前,还包括:
根据业务需求生成状态决策规则,其中,该业务需求包括:主任务工单和各子任务工单之间的协同处理需求,其中,此过程的具体实施方式参见步骤S205,这里不再赘述。
其中,为了降低后续对状态决策规则进行适应性修改来满足变更后的业务需求的难度和复杂度,基于此,在生成状态决策规则时,针对每个任务节点,设置对应的至少一个状态决策规则,因此,在确定与目标任务工单相关的状态决策规则时,首先要确定目标任务工单的当前所在任务节点是什么,再查表1找到该任务节点下的至少一个状态决策规则,当目标任务工单为主任务工单时,一般每个任务节点对应于一个状态决策规则,而当目标任务工单为子任务工单时,由于子任务工单中的某一任务节点可能存在定位配置错误的情况,一般每个任务节点对应于两个状态决策规则,具体的,针对每个任务节点对应各自的至少一个状态决策规则的情况,上述S1002获取与目标任务工单相关的状态决策规则,具体包括:
确定目标任务工单的当前所在任务节点,其中,此过程的具体实施方式参见步骤S2021,这里不再赘述;
在预先生成的状态决策规则集合中,查询与当前所在任务节点对应的状态决策规则,其中,该状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系,其中,此过程的具体实施方式参见步骤S2022,这里不再赘述。
其中,针对确定目标任务工单的目标执行动作的过程,如果状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
对应的,上述S1003根据获取到的当前执行状态和状态决策规则,确定目标任务工单的目标执行动作,具体包括:
判断获取到的当前执行状态是否满足前置条件,其中,该当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果,其中,此过程的具体实施方式参见步骤S2031,这里不再赘述;
若是,则将与该前置条件对应的执行动作确定为目标执行动作,其中,此过程的具体实施方式参见步骤S2032,这里不再赘述。
具体的,上述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
进一步的,考虑到后续由于业务需求的变更,状态决策规则可能随之变化,基于此,在根据业务需求生成状态决策规则之后,还包括:
在确定业务需求发生变更后,根据变更后的业务需求调整状态决策规则,其中,此过程的具体实施方式参见步骤S206,这里不再赘述;
具体的,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
其中,由于考虑到新业务上线和优化频率比较高,每次均需要重新编写代码,针对后续因业务需求变更而需要变更控制条件的情况,在本说明书一个或多个实施例中,利用决策引擎基于状态决策规则实现主从任务工单的节点流转控制,进而控制主从多任务的协调执行,使得各业务系统完成新业务上线,正因为状态决策规则具有很强的可读性、延续性、易修改性,直接根据业务需求适应性修改对应的状态决策规则中的前置条件和/或执行动作参数即可,即调整所需满足的前置条件,或者调整满足对应的前置条件所需执行的动作,进而能够简化后续变更操作,减少维护成本。
本说明书一个或多个实施例中的任务状态控制方法,首先,获取任务工单的当前执行状态,该任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制目标任务工单的执行状态流转,以使各子任务工单对应的业务系统在主任务工单的协调控制下进行目标业务更新,从而使得各业务系统协同完成新业务上线,这样能够减少人工线下沟通,提高新业务上线的工作效率和时效性。
需要说明的是,本说明书中该实施例与本说明书中上一实施例基于同一发明构思,因此该实施例的具体实施可以参见前述任务状态控制方法的实施,重复之处不再赘述。
对应上述图2至图9描述的任务状态控制方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种任务状态控制装置,图11为本说明书一个或多个实施例提供的任务状态控制装置的第一种模块组成示意图,该装置用于执行图2至图9描述的任务状态控制方法,如图11所示,该装置包括:第一获取模块1101、第二获取模块1102、执行动作确定模块1103和任务状态控制模块1104,第一获取模块1101、第二获取模块1102、执行动作确定模块1103和任务状态控制模块1104依次连接。
在一个具体的实施例中,第一获取模块1101,用于获取任务工单的当前执行状态,其中,所述任务工单包括:目标任务工单和该目标任务工单的关联任务工单;
第二获取模块1102,用于获取与所述目标任务工单相关的状态决策规则,其中,所述状态决策规则为基于前置条件决策后续执行动作的规则;
执行动作确定模块1103,用于根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作;
任务状态控制模块1104,用于根据所述目标执行动作控制所述目标任务工单的执行状态流转。
可选地,所述状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
所述执行动作确定模块1103,具体用于:
判断所述当前执行状态是否满足所述前置条件,其中,所述当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果;
若是,则将与该前置条件对应的执行动作确定为目标执行动作。
可选地,所述第二获取模块1102,具体用于:
确定所述目标任务工单的当前所在任务节点;
在预先生成的状态决策规则集合中,查询与所述当前所在任务节点对应的状态决策规则,其中,所述状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系。
可选地,所述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
可选地,如图12所示,上述装置还包括:
决策规则生成模块1105,用于在获取任务工单的当前执行状态之前,根据业务需求生成状态决策规则,其中,所述业务需求包括:目标任务工单和该目标任务工单的关联任务工单的协同处理需求。
可选地,上述装置还包括:
决策规则调整模块1106,用于在确定业务需求发生变更后,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
可选地,所述任务状态控制模块1104,具体用于:
根据所述目标执行动作生成相应的控制指令;
将所述控制指令下发至所述子任务工单对应的业务系统,以触发所述业务系统根据所述控制指令完成对应的业务处理环节;
在接收到所述业务系统的处理完成反馈信息后,将所述子任务工单的当前所在任务节点流转到下一任务节点。
可选地,所述目标任务工单包括:主任务工单,所述关联任务工单包括:所述主任务工单所主导的多个子任务工单;
所述任务状态控制模块1104,还具体用于:
根据所述目标执行动作变更所述主任务工单的当前执行状态。
本说明书一个或多个实施例中的任务状态控制装置,首先,获取任务工单的当前执行状态,该任务工单包括:目标任务工单和该目标任务工单的关联任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制各目标任务工单的执行状态流转,进而使得任务工单对应的业务处理事项自动协同推进完成,这样能够减少人工线下沟通,提高工作效率和时效性。
在另一个具体的实施例中,第一获取模块1101,用于获取任务工单的当前执行状态,其中,所述任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;
第二获取模块1102,用于获取与目标任务工单相关的状态决策规则,其中,所述状态决策规则为基于前置条件决策后续执行动作的规则,所述目标任务工单包括:主任务工单或子任务工单;
执行动作确定模块1103,用于根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作;
任务状态控制模块1104,用于根据所述目标执行动作控制所述目标任务工单的执行状态流转,以使各子任务工单对应的业务系统进行目标业务更新。
可选地,上述装置还包括:
子工单生成模块,用于在获取任务工单的当前执行状态之前,根据用于更新目标业务的主任务工单,生成由该主任务工单主导的多个子任务工单,其中,每个所述子任务工单包括:用于控制其对应的业务系统上的业务配置数据更新的流程。
可选地,所述目标任务工单包括:子任务工单;所述任务状态控制模块1104,具体用于:
根据所述目标执行动作生成相应的控制指令;
将所述控制指令下发至所述子任务工单对应的业务系统,以触发所述业务系统根据所述控制指令完成对应的目标业务更新处理环节;
在接收到所述业务系统的处理完成反馈信息后,将所述子任务工单的当前所在任务节点流转到下一任务节点。
可选地,所述目标任务工单包括:主任务工单;所述任务状态控制模块1104,具体用于:
根据所述目标执行动作变更所述主任务工单的当前执行状态。
可选地,所述状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
所述执行动作确定模块1103,具体用于:
判断所述当前执行状态是否满足所述前置条件,其中,所述当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果;
若是,则将与该前置条件对应的执行动作确定为目标执行动作。
可选地,所述第二获取模块1102,具体用于:
确定目标任务工单的当前所在任务节点;
在预先生成的状态决策规则集合中,查询与所述当前所在任务节点对应的状态决策规则,其中,所述状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系。
可选地,所述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
可选地,上述装置还包括:
决策规则生成模块1105,用于在获取任务工单的当前执行状态之前,根据业务需求生成状态决策规则,其中,所述业务需求包括:主任务工单和各子任务工单之间的协同处理需求。
可选地,上述装置还包括:
决策规则调整模块1106,用于在确定业务需求发生变更后,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
本说明书一个或多个实施例中的任务状态控制装置,首先,获取任务工单的当前执行状态,该任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制目标任务工单的执行状态流转,以使各子任务工单对应的业务系统在主任务工单的协调控制下进行目标业务更新,从而使得各业务系统协同完成新业务上线,这样能够减少人工线下沟通,提高新业务上线的工作效率和时效性。
进一步地,对应上述图2至图9所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种任务状态控制设备,该设备用于执行上述的任务状态控制方法,如图13所示。
任务状态控制设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器1301和存储器1302,存储器1302中可以存储有一个或一个以上存储应用程序或数据。其中,存储器1302可以是短暂存储或持久存储。存储在存储器1302的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对任务状态控制设备中的一系列计算机可执行指令。更进一步地,处理器1301可以设置为与存储器1302通信,在任务状态控制设备上执行存储器1302中的一系列计算机可执行指令。任务状态控制设备还可以包括一个或一个以上电源1303,一个或一个以上有线或无线网络接口1304,一个或一个以上输入输出接口1305,一个或一个以上键盘1306等。
在一个具体的实施例中,任务状态控制设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对任务状态控制设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
获取任务工单的当前执行状态,其中,所述任务工单包括:目标任务工单和该目标任务工单的关联任务工单;
获取与所述目标任务工单相关的状态决策规则,其中,所述状态决策规则为基于前置条件决策后续执行动作的规则;
根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作;
根据所述目标执行动作控制所述目标任务工单的执行状态流转。
可选地,计算机可执行指令在被执行时,所述状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
所述根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作,包括:
判断所述当前执行状态是否满足所述前置条件,其中,所述当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果;
若是,则将与该前置条件对应的执行动作确定为目标执行动作。
可选地,计算机可执行指令在被执行时,所述获取与所述目标任务工单相关的状态决策规则,包括:
确定所述目标任务工单的当前所在任务节点;
在预先生成的状态决策规则集合中,查询与所述当前所在任务节点对应的状态决策规则,其中,所述状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系。
可选地,计算机可执行指令在被执行时,所述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在获取任务工单的当前执行状态之前,根据业务需求生成状态决策规则,其中,所述业务需求包括:目标任务工单和该目标任务工单的关联任务工单的协同处理需求。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在根据业务需求生成状态决策规则之后,在确定业务需求发生变更后,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
可选地,计算机可执行指令在被执行时,所述目标任务工单包括:子任务工单,所述关联任务工单包括:主导该子任务工单的主任务工单、和/或该主任务工单主导的其他子任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作生成相应的控制指令;
将所述控制指令下发至所述子任务工单对应的业务系统,以触发所述业务系统根据所述控制指令完成对应的业务处理环节;
在接收到所述业务系统的处理完成反馈信息后,将所述子任务工单的当前所在任务节点流转到下一任务节点。
可选地,计算机可执行指令在被执行时,所述目标任务工单包括:主任务工单,所述关联任务工单包括:所述主任务工单所主导的多个子任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作变更所述主任务工单的当前执行状态。
本说明书一个或多个实施例中的任务状态控制设备,首先,获取任务工单的当前执行状态,该任务工单包括:目标任务工单和该目标任务工单的关联任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。可见,通过本说明书一个或多个实施例中的任务状态控制设备,通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制各目标任务工单的执行状态流转,进而使得任务工单对应的业务处理事项自动协同推进完成,这样能够减少人工线下沟通,提高工作效率和时效性。
在另一个具体的实施例中,任务状态控制设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对任务状态控制设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
获取任务工单的当前执行状态,其中,所述任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;
获取与目标任务工单相关的状态决策规则,其中,所述状态决策规则为基于前置条件决策后续执行动作的规则,所述目标任务工单包括:主任务工单或子任务工单;
根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作;
根据所述目标执行动作控制所述目标任务工单的执行状态流转,以使各子任务工单对应的业务系统进行目标业务更新。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在获取任务工单的当前执行状态之前,根据用于更新目标业务的主任务工单,生成由该主任务工单主导的多个子任务工单,其中,每个所述子任务工单包括:用于控制其对应的业务系统上的业务配置数据更新的流程。
可选地,计算机可执行指令在被执行时,所述目标任务工单包括:子任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作生成相应的控制指令;
将所述控制指令下发至所述子任务工单对应的业务系统,以触发所述业务系统根据所述控制指令完成对应的目标业务更新处理环节;
在接收到所述业务系统的处理完成反馈信息后,将所述子任务工单的当前所在任务节点流转到下一任务节点。
可选地,计算机可执行指令在被执行时,所述目标任务工单包括:主任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作变更所述主任务工单的当前执行状态。
可选地,计算机可执行指令在被执行时,所述状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
所述根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作,包括:
判断所述当前执行状态是否满足所述前置条件,其中,所述当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果;
若是,则将与该前置条件对应的执行动作确定为目标执行动作。
可选地,计算机可执行指令在被执行时,所述获取与目标任务工单相关的状态决策规则,包括:
确定目标任务工单的当前所在任务节点;
在预先生成的状态决策规则集合中,查询与所述当前所在任务节点对应的状态决策规则,其中,所述状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系。
可选地,计算机可执行指令在被执行时,所述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在获取任务工单的当前执行状态之前,根据业务需求生成状态决策规则,其中,所述业务需求包括:主任务工单和各子任务工单之间的协同处理需求。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在根据业务需求生成状态决策规则之后,在确定业务需求发生变更后,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
本说明书一个或多个实施例中的任务状态控制设备,首先,获取任务工单的当前执行状态,该任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。可见,通过本说明书一个或多个实施例中的任务状态控制设备,通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制目标任务工单的执行状态流转,以使各子任务工单对应的业务系统在主任务工单的协调控制下进行目标业务更新,从而使得各业务系统协同完成新业务上线,这样能够减少人工线下沟通,提高新业务上线的工作效率和时效性。
进一步地,对应上述图2至图9所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执行时,能实现以下流程:
获取任务工单的当前执行状态,其中,所述任务工单包括:目标任务工单和该目标任务工单的关联任务工单;
获取与所述目标任务工单相关的状态决策规则,其中,所述状态决策规则为基于前置条件决策后续执行动作的规则;
根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作;
根据所述目标执行动作控制所述目标任务工单的执行状态流转。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
所述根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作,包括:
判断所述当前执行状态是否满足所述前置条件,其中,所述当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果;
若是,则将与该前置条件对应的执行动作确定为目标执行动作。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述获取与所述目标任务工单相关的状态决策规则,包括:
确定所述目标任务工单的当前所在任务节点;
在预先生成的状态决策规则集合中,查询与所述当前所在任务节点对应的状态决策规则,其中,所述状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在获取任务工单的当前执行状态之前,还包括:
根据业务需求生成状态决策规则,其中,所述业务需求包括:目标任务工单和该目标任务工单的关联任务工单的协同处理需求。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在根据业务需求生成状态决策规则之后,还包括:
在确定业务需求发生变更后,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述目标任务工单包括:子任务工单,所述关联任务工单包括:主导该子任务工单的主任务工单、和/或该主任务工单主导的其他子任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作生成相应的控制指令;
将所述控制指令下发至所述子任务工单对应的业务系统,以触发所述业务系统根据所述控制指令完成对应的业务处理环节;
在接收到所述业务系统的处理完成反馈信息后,将所述子任务工单的当前所在任务节点流转到下一任务节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述目标任务工单包括:主任务工单,所述关联任务工单包括:所述主任务工单所主导的多个子任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作变更所述主任务工单的当前执行状态。
本说明书一个或多个实施例中的存储介质存储的计算机可执行指令在被处理器执行时,首先,获取任务工单的当前执行状态,该任务工单包括:目标任务工单和该目标任务工单的关联任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。可见,通过本说明书一个或多个实施例中的存储介质,通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制各目标任务工单的执行状态流转,进而使得任务工单对应的业务处理事项自动协同推进完成,这样能够减少人工线下沟通,提高工作效率和时效性。
在另一个具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执行时,能实现以下流程:
获取任务工单的当前执行状态,其中,所述任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;
获取与目标任务工单相关的状态决策规则,其中,所述状态决策规则为基于前置条件决策后续执行动作的规则,所述目标任务工单包括:主任务工单或子任务工单;
根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作;
根据所述目标执行动作控制所述目标任务工单的执行状态流转,以使各子任务工单对应的业务系统进行目标业务更新。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在获取任务工单的当前执行状态之前,还包括:
根据用于更新目标业务的主任务工单,生成由该主任务工单主导的多个子任务工单,其中,每个所述子任务工单包括:用于控制其对应的业务系统上的业务配置数据更新的流程。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述目标任务工单包括:子任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作生成相应的控制指令;
将所述控制指令下发至所述子任务工单对应的业务系统,以触发所述业务系统根据所述控制指令完成对应的目标业务更新处理环节;
在接收到所述业务系统的处理完成反馈信息后,将所述子任务工单的当前所在任务节点流转到下一任务节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述目标任务工单包括:主任务工单;
所述根据所述目标执行动作控制所述目标任务工单的执行状态流转,包括:
根据所述目标执行动作变更所述主任务工单的当前执行状态。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述状态决策规则包括:前置条件和满足该前置条件需要完成的执行动作之间的对应关系;
所述根据所述当前执行状态和所述状态决策规则,确定所述目标任务工单的目标执行动作,包括:
判断所述当前执行状态是否满足所述前置条件,其中,所述当前执行状态包括:当前所在任务节点和在该任务节点下的执行结果;
若是,则将与该前置条件对应的执行动作确定为目标执行动作。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述获取与目标任务工单相关的状态决策规则,包括:
确定目标任务工单的当前所在任务节点;
在预先生成的状态决策规则集合中,查询与所述当前所在任务节点对应的状态决策规则,其中,所述状态决策规则集合包括:各任务节点下的前置条件与执行动作之间的对应关系。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述状态决策规则中的执行动作包括:执行下一任务节点、回滚至指定任务节点、跳过当前任务节点、暂停任务或结束任务中的至少一种。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在获取任务工单的当前执行状态之前,还包括:
根据业务需求生成状态决策规则,其中,所述业务需求包括:主任务工单和各子任务工单之间的协同处理需求。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在根据业务需求生成状态决策规则之后,还包括:
在确定业务需求发生变更后,根据变更后的业务需求更新状态决策规则;或者,
根据变更后的业务需求增加至少一个状态决策规则;或者,
根据变更后的业务需求删除至少一个状态决策规则。
本说明书一个或多个实施例中的存储介质存储的计算机可执行指令在被处理器执行时,首先,获取任务工单的当前执行状态,该任务工单包括:主任务工单和由该主任务工单主导的至少一个子任务工单;以及获取与目标任务工单相关的状态决策规则,该状态决策规则为基于前置条件决策后续执行动作的规则;然后,根据当前执行状态和状态决策规则,确定目标任务工单的目标执行动作;再根据目标执行动作控制目标任务工单的执行状态流转。可见,通过本说明书一个或多个实施例中的存储介质,通过预先设置状态决策规则,再基于该状态决策规则和参考任务工单的当前执行状态,自动控制目标任务工单的执行状态流转,以使各子任务工单对应的业务系统在主任务工单的协调控制下进行目标业务更新,从而使得各业务系统协同完成新业务上线,这样能够减少人工线下沟通,提高新业务上线的工作效率和时效性
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个实施例是参照根据本说明书一个或多个实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书一个或多个实施例而已,并不用于限制本说明书一个或多个实施例。对于本领域技术人员来说,本说明书一个或多个实施例可以有各种更改和变化。凡在本说明书一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例的权利要求范围之内。