CN105068793A - 生成业务逻辑关系图以及实现业务应用的方法和装置 - Google Patents

生成业务逻辑关系图以及实现业务应用的方法和装置 Download PDF

Info

Publication number
CN105068793A
CN105068793A CN201510418219.8A CN201510418219A CN105068793A CN 105068793 A CN105068793 A CN 105068793A CN 201510418219 A CN201510418219 A CN 201510418219A CN 105068793 A CN105068793 A CN 105068793A
Authority
CN
China
Prior art keywords
state
relation
service logic
action
graph
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.)
Pending
Application number
CN201510418219.8A
Other languages
English (en)
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.)
Inspur General Software Co Ltd
Original Assignee
Inspur General Software 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 Inspur General Software Co Ltd filed Critical Inspur General Software Co Ltd
Priority to CN201510418219.8A priority Critical patent/CN105068793A/zh
Publication of CN105068793A publication Critical patent/CN105068793A/zh
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

本发明提供生成业务逻辑关系图以及实现业务应用的方法和装置。生成业务逻辑关系图的方法包括:设置关系图的图元,所述图元包括:动作、状态及状态值、前置条件以及状态转移,还包括:根据业务应用中的每一个对象,确定当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移;根据当前对象对应的业务逻辑,关联所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。本方案能够减少代码编写的工作量。

Description

生成业务逻辑关系图以及实现业务应用的方法和装置
技术领域
本发明涉及网络通信技术,特别涉及一种生成业务逻辑关系图的方法和装置、以及实现业务应用的方法和装置。
背景技术
每一种业务应用通常都对应着业务逻辑。比如,在执行完一个动作后,需要执行后续的哪个动作,或者,在执行完一个动作后,分析当前是否满足转移条件,根据转移条件转向执行另一个动作等。
目前,为了实现业务应用,业务应用开发人员需要根据业务应用中涉及到的所有业务逻辑,开发业务应用代码。后续实现时,用户只需要在用户端执行业务应用代码,则可以实现相应的业务应用。
可见,在目前的业务应用中,是靠代码来实现所有业务逻辑的。然而,在实际的业务实现中,很多业务逻辑比如与具体业务数据的值相关的业务逻辑是受当前业务数据的状态控制的,而且这种控制关系非常容易受行业或者客户的业务流程的不同而经常需要调整,或者当客户业务流程变更时,也经常涉及到控制关系的调整。此种情况下,现有技术中,则必须修改代码来实现相应业务逻辑的调整,从而使得业务应用能够满足调整需求。然而修改代码的方式,必须由专业的代码编写人员实现,难度较高,而且也不利于满足用户的个性化需求。
发明内容
本发明提供一种生成业务逻辑关系图的方法和装置、以及实现业务应用的方法和装置,能够减少代码编写的工作量。
一种生成业务逻辑关系图的方法,设置关系图的图元,所述图元包括:动作、状态及状态值、前置条件以及状态转移,还包括:
根据业务应用的可变业务逻辑中的每一个对象,确定当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移;
根据当前对象对应的业务逻辑,关联所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。
所述动作用于描述与所述状态值有关的业务逻辑的封装;
所述状态用于描述一个对象的特征;所述状态值用于描述一个对象的特征值,其中,每个对象包括0~n个状态,每一个状态包括2~m个状态值;其中,n和m为正整数;
所述前置条件用于描述动作可执行的前提;
所述状态转移用于描述某个动作执行后,根据动作执行结果,使得某一个或者某些状态的状态值进行改变。
所述图元中进一步包括:运算符,用于描述多个前置条件间的计算关系;
进一步包括:确定所述当前对象对应的多个前置条件的计算关系,并确定所述当前对象对应的运算符;
所述关联所确定的该对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,进一步包括:利用所确定的运算符,将所确定的当前对象对应的多个前置条件进行关联。
所述图元中进一步包括:状态同步,用于描述某个状态的状态值改变后,同时会引起另一个状态的状态值进行同步修改;
进一步包括:确定所述当前对象的两个状态的状态值之间存在状态同步;
所述关联所确定的该对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,进一步包括:利用状态同步,关联所确定的当前对象对应的两个状态的状态值。
针对每一个对象的每一个业务场景,分别执行所述的确定、关联以及生成业务逻辑关系图的处理。
所述状态转移包括:无条件转移、有条件转移两种。
一种业务应用的实现方法,包括:
针对业务应用的核心业务逻辑进行代码编写;
针对业务应用的可变业务逻辑中的每一个对象,执行上述任意一种生成业务逻辑关系图的方法,得到每一个可变业务逻辑中的每一个对象对应的业务逻辑关系图;
组装所述代码及所述业务逻辑关系图;
根据组装后的所述代码及所述业务逻辑关系图,实现业务应用的处理。
一种生成业务逻辑关系图的装置,包括:
图元单元,用于保存关系图的图元,所述图元包括:动作、状态及状态值、前置条件以及状态转移;
确定单元,用于对于业务应用中的每一个对象,确定当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移;
关系图生成单元,用于根据当前对象对应的业务逻辑,关联所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。
所述图元单元中,进一步保存有图元:运算符,用于描述多个前置条件间的计算关系;
则,所述确定单元,进一步确定所述当前对象对应的多个前置条件的计算关系,并确定所述当前对象对应的运算符;
则,所述关系图生成单元,进一步在生成对应当前对象的业务逻辑关系图时,利用所述确定单元所确定的运算符,将所确定的当前对象对应的多个前置条件进行关联。
所述图元单元中进一步保存有图元:状态同步,用于描述某个状态的状态值改变后,同时会引起另一个状态的状态值进行同步修改;
则,所述确定单元,进一步确定所述当前对象的两个状态的状态值之间存在状态同步;
则,所述关系图生成单元,进一步在生成对应当前对象的业务逻辑关系图时,利用状态同步,关联所确定的当前对象对应的两个状态的状态值。
一种业务应用的实现系统,包括:核心业务逻辑装置、执行装置、以及上述任意一种生成业务逻辑关系图的装置,其中,
核心业务逻辑装置,用于保存针对业务应用的核心业务逻辑的代码;
执行装置,用于组装所述代码及所述业务逻辑关系图;根据组装后的所述代码及所述业务逻辑关系图,实现业务应用的处理。
本发明实施例提供的生成业务逻辑关系图的方法和装置、以及实现业务应用的方法和系统,能够针对一个业务应用中的可变业务逻辑,不再执行代码编写过程,而是针对可变业务逻辑中的每一个对象,利用预先设置的图元包括动作、状态及状态值、前置条件以及状态转移,并根据业务逻辑,来生成对应于每一个对象的业务逻辑关系图。由于业务逻辑关系图无需代码编写,只需要关联图元,因此,使用图形化建模方式,完成了可变业务逻辑部分,实现方式简单,减少了代码编写的工作量。
进一步地,业务逻辑关系图便于修改,能够提高调整业务应用中业务逻辑的效率。而且,业务逻辑关系图可以由用户根据需求自行生成,无需厂家预先完成,增加了业务实现的灵活性,满足了用户的个性化需求。
附图说明
图1是本发明一个实施例中生成业务逻辑关系图的方法流程图。
图2A是本发明实施例中状态动作控制图的示例。
图2B是本发明实施例中的组合前置条件示例。
图2C是本发明实施例中的状态同步示例。
图2D是本发明一个实施例中销售订单对应的业务逻辑关系图的示意图。
图3是是本发明另一个实施例中生成业务逻辑关系图的方法的流程图。
图4是本发明一个实施例中业务应用的实现方法流程图。
图5是本发明一个实施例中生成业务逻辑关系图的装置的结构示意图。
图6是本发明一个实施例中业务应用的实现系统的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明一个实施例提出了一种生成业务逻辑关系图的方法,参见图1,该方法包括:
步骤101:预先设置关系图的图元,所述图元包括:动作、状态及状态值、前置条件以及状态转移。
步骤102:根据业务应用的可变业务逻辑中的每一个对象,确定当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移。
步骤103:根据当前对象对应的业务逻辑,关联所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。
在应用开发领域,通常可变业务逻辑是受当前业务数据的状态控制的,而且这种控制关系非常容易受行业或者客户的业务流程的不同而经常需要调整,或者当客户业务流程变更时,也经常涉及到控制关系的调整,而核心业务逻辑一般比较固定。因此,针对这一特点,本发明的上述实施例能够针对一个业务应用中的可变业务逻辑,不再执行代码编写过程,而是针对可变业务逻辑中的每一个对象,利用预先设置的图元包括动作、状态及状态值、前置条件以及状态转移,并根据业务逻辑,来生成对应于每一个对象的业务逻辑关系图。由于业务逻辑关系图无需代码编写,只需要关联图元,因此,使用图形化建模方式,完成了可变业务逻辑部分,实现方式简单,且业务逻辑关系图便于修改,能够提高调整业务应用中业务逻辑的效率。
在本发明一个实施例中,对于上述4个图元动作、状态及状态值、前置条件以及状态转移,其分别对应相应的处理逻辑,具体为:
所述动作用于描述与所述状态值有关的业务逻辑的封装。
所述状态用于描述一个对象的特征;所述状态值用于描述一个对象的特征值,其中,每个对象包括0~n个状态,每一个状态包括2~m个状态值;其中,n和m为正整数。所述前置条件用于描述动作可执行的前提;
所述状态转移用于描述某个动作执行后,根据动作执行结果,使得某一个或者某些状态的状态值进行改变。
在本发明一个实施例中,图元中还可以进一步包括:运算符和状态同步,也就是说,可以总共包括6个图元,并且,
运算符用于描述多个前置条件间的计算关系;
状态同步,用于描述某个状态的状态值改变后,同时会引起另一个状态的状态值进行同步修改。
本发明一个实施例中,生成业务逻辑关系图(图形化建模)和运行期的控制引擎,包括以下步骤和内容:
步骤一、图形化建模;
步骤二、运行期的动作执行前检查;
步骤三、运行期的动作执行后状态迁移和状态同步。
图形化建模就是根据业务场景,将这些图元组装成一个状态动作控制关系图,简单的动作状态控制关系图如图2A所示。该图表示的含义是:“动作A”只有在状态B的值等于“状态值B1”满足的前提条件下才可以执行,且“动作A”执行后,会使得状态B的值变成“状态值B2”。
进一步的,基于步骤一,前置条件可以是多个前置条件的组合,前置条件的运算符可以是“与”、“或”、“非”三种。复合前置条件的示例图如图2B所示。“动作A”可执行的前提条件如下表所示:
状态值B1 状态值B2
状态值C1 动作可执行 动作不可执行
状态值C2 动作不可执行 动作不可执行
状态值C3 动作不可执行 动作不可执行
进一步的,基于步骤二,动作的可执行条件计算,是指参与控制图中的动作在执行前,都需要根据控制图进行可执行条件计算,计算方式基于投票器的模式。如果是简单条件,则直接进行计算,如果是复合条件,则每一个简单前置条件先计算,然后再根据其运算符进行组合投票,计算出最终的复合条件值,用于决定该动作是否可执行。
进一步的,基于步骤三,动作执行后的状态迁移,当参与控制图中的动作执行完后,需要根据控制图中的状态流转关系进行状态流转。有的状态流转是无条件的,即不管动作执行结果如何,只要动作执行成功,则都进行状态的流转。有的状态流转是有条件的,即只有动作执行成功,且动作的返回值为特定值时,该状态流转才会进行。
进一步的,基于步骤三,状态迁移后的状态同步,当参与控制图中的状态流转后,需要根据控制图中的状态同步关系进行状态同步。当一个状态的状态值变化时,会自动导致另一个状态的状态值变化,这时,就需要用到状态同步。如图2C所示,表示状态B的状态值变为“状态值B2”时,会自动将状态D的状态值同步为“状态值D1”。
在本发明一个实施例中,当所述图元中进一步包括:运算符时,
在步骤102中,如果确定出包括多个前置条件,则步骤102进一步包括:确定所述当前对象对应的多个前置条件的计算关系,并确定所述当前对象对应的运算符;
相应地,步骤103中,所述关联所确定的该对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,进一步包括:利用所确定的运算符,将所确定的当前对象对应的多个前置条件进行关联。
在本发明一个实施例中,当所述图元中进一步包括:状态同步时;
步骤102中,如果确定出多个状态,则步骤102进一步包括:确定所述当前对象的两个状态的状态值之间存在状态同步;
相应地,步骤103中,所述关联所确定的该对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,进一步包括:利用状态同步,关联所确定的当前对象对应的两个状态的状态值。
在本发明一个实施例中,可以是针对每一个对象的每一个业务场景,分别执行所述的确定、关联以及生成业务逻辑关系图的处理。比如,针对销售订单对象,其业务场景可以包括批发或零售,因此,可以针对批发,生成对应的业务逻辑关系图,针对零售,也生成另一个业务逻辑关系图。
在本发明一个实施例中,所述状态转移包括:无条件转移、有条件转移两种。
为了更加清楚地体现本发明实施例中生成业务逻辑关系图的过程,以业务应用的可变业务逻辑中的对象“销售订单”为例,参见图2D和图3,包括:
步骤301:预先设置关系图的图元,所述图元包括:动作、状态及状态值、前置条件、运算符、状态转移、状态同步。
这里,可以预先设置出针对每一个业务应用的对象,需要用的各种图元,比如后续需要用到的动作具体可以包括:撰写、提交、审核、发布、选中等;状态比如可以包括:发布状态,选中状态,新申请阶段状态、审核状态等;前置条件比如可以包括:当新申请阶段的状态值为触发时,执行撰写的动作等;运算符比如可以包括:与、或、非等。
步骤302:根据业务应用的可变业务逻辑中的当前对象-销售订单,确定该销售订单所对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移。
参见图2D,对于一个销售订单对象,可以确定出其对应的图元及图元之间的关系包括:
1、对应的动作可以包括:发布(Release)、未发布(Unrelease)、选中(Pick);
2、对应的状态可以包括发布状态(ReleaseStatus)和选中状态(PickingStatus),该发布状态的状态值可以是已发布(Released)和未发布(NotReleased),该选中状态的状态值可以是已选中(Picked)和未选中(NotPicked);
3、对应的前置条件表示某个状态的状态值是某个动作的执行条件,比如,参见图2D,前置条件包括:当ReleaseStatus的状态值为NotReleased时,执行Release动作;当ReleaseStatus的状态值为Released时,执行Unrelease动作等。
4、对应的状态转移用于描述某个动作执行后,根据动作执行结果,使得某一个或者某些状态的状态值进行改变。参见图2D,比如,在执行完动作Release后,ReleaseStatus的状态值变为Released。再如,在执行完动作Pick后,PickingStatus的状态值变为Picked。
5、对应的运算符用于描述多个前置条件间的计算关系,可以是“与”、“或”、“非”三种。其中,“与”表示通过“与”关联的多个前置条件必须同时满足,才可以执行后续的动作;“或”表示对于通过“或”关联的多个前置条件,满足其中的一个,即可执行后续的动作;“非”表示满足一个前置条件时,则不只需后续相应的动作。比如,参见图2D,“◇”箭头表示运算符“或”,由于只有一个前置条件,因此,当满足ReleaseStatus的值为“NotReleased”时,执行“Release”动作。箭头表示运算符“与”,由于只有一个前置条件,因此,当满足ReleaseStatus的值为Released时,执行Pick动作;箭头表示运算符“非”,由于只有一个前置条件,因此,当满足PickingStatus的值为Picked时,则不执行Unrelease动作。
6、对应的状态同步,用于描述某个状态的状态值改变后,同时会引起另一个状态的状态值进行同步修改。比如,参见图2D,当执行完动作Release时,则ReleaseStatus的值同步为Released;当执行完动作Unrelease时,则ReleaseStatus的值同步为NotReleased;当执行完动作Pick时,则PickingStatus的值同步为Picked。
步骤303:根据销售订单对应的业务逻辑,关联所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。
这里,参见图2D,是利用前置条件将状态的状态值关联到后续需要执行的对应的动作,并利用状态转移将动作关联到后续需要转向的状态的状态值。
进一步地,如果一个状态的状态值影响到另一个状态的状态值,那么,还可以通过状态同步将两个状态的状态值关联起来;以及,如果从一个状态的状态值到一个需要执行的动作,存在多个前置条件,则可以利用运算符将多个前置条件关联在一起。
使用上述6点描述的对应于销售订单的图元及其关系,则可以描述一个销售订单的业务逻辑,即一个销售订单在经过各个阶段的处理后的各种逻辑变化均通过图形化模型表示,后续,则可以依据该图形化模型执行对应的销售订单的处理,以及在销售订单更改时,对应的图形化模型的更改。
利用以上实施例所述的过程,可以针对业务应用中可变业务逻辑的每一个对象,分别建立对应的业务逻辑关系图,也就是说,使用该关系图来代替代码记录相应对象的业务处理逻辑。这样,后续执行该关系图则可以执行相应的对象的业务处理。
本发明一个实施例还提出了一种业务应用的实现方法,参见图4,包括:
步骤401:针对业务应用的核心业务逻辑进行代码编写;
这里,核心业务逻辑通常是固定不变,或者变化很少的,因此,针对核心业务逻辑可以通过代码编写的方式来记录器对应的业务处理逻辑。
步骤402:针对业务应用的可变业务逻辑中的每一个对象,执行上述任意一种生成业务逻辑关系图的方法过程,得到每一个可变业务逻辑中的每一个对象对应的业务逻辑关系图。
通过上述步骤401的处理,得到的是核心业务逻辑的代码,通过上述步骤402的处理,得到的是可变业务逻辑的业务逻辑关系图。这样,则将一个业务应用的实现拆分成了核心业务逻辑的代码以及可变业务逻辑的业务逻辑关系图。
步骤403:针对一个业务应用,组装所述代码及所有的业务逻辑关系图。
步骤404:根据组装后的所述代码及所述业务逻辑关系图,实现业务应用的处理。
这里,通过执行对应于核心业务逻辑的代码以及执行对应可变业务逻辑的业务逻辑关系图,则可以实现具体的业务应用。
本发明一个实施例还提出了一种生成业务逻辑关系图的装置,参见图5,包括:
图元单元501,用于保存关系图的图元,所述图元包括:动作、状态及状态值、前置条件以及状态转移;
确定单元502,用于对于业务应用中的每一个对象,从所述图元单元501中保存的所有图元中,确定当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移;
关系图生成单元503,用于根据当前对象对应的业务逻辑,关联确定单元502所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。
在本发明一个实施例中,所述图元单元501中,进一步保存有图元:运算符,用于描述多个前置条件间的计算关系;
则,所述确定单元502,进一步确定所述当前对象对应的多个前置条件的计算关系,并确定所述当前对象对应的运算符;
则,所述关系图生成单元503,进一步在生成对应当前对象的业务逻辑关系图时,利用所述确定单元所确定的运算符,将所确定的当前对象对应的多个前置条件进行关联。
在本发明一个实施例中,所述图元单元501中进一步保存有图元:状态同步,用于描述某个状态的状态值改变后,同时会引起另一个状态的状态值进行同步修改;
则,所述确定单元502,进一步确定所述当前对象的两个状态的状态值之间存在状态同步;
则,所述关系图生成单元503,进一步在生成对应当前对象的业务逻辑关系图时,利用状态同步,关联所确定的当前对象对应的两个状态的状态值。
本发明一个实施例还提出了一种业务应用的实现系统,参见图6,包括:核心业务逻辑装置601、执行装置603、以及上述任意一种生成业务逻辑关系图的装置602,其中,
核心业务逻辑装置601,用于保存针对业务应用的核心业务逻辑的代码;
执行装置603,用于组装所述核心业务逻辑装置601保存的代码及所述业务逻辑关系图的装置602所生成的业务逻辑关系图;根据组装后的所述代码及所述业务逻辑关系图,实现业务应用的处理。
本发明各个实施例至少具有如下的有益效果:
1、本发明实施例提供的生成业务逻辑关系图的方法和装置、以及实现业务应用的方法和系统,能够针对一个业务应用中的可变业务逻辑,不再执行代码编写过程,而是针对可变业务逻辑中的每一个对象,利用预先设置的图元包括动作、状态及状态值、前置条件以及状态转移,并根据业务逻辑,来生成对应于每一个对象的业务逻辑关系图。由于业务逻辑关系图无需代码编写,只需要关联图元,因此,使用图形化建模方式,完成了可变业务逻辑部分,实现方式简单,减少了代码编写的工作量。
2、业务逻辑关系图便于修改,能够提高调整业务应用中业务逻辑的效率。而且,业务逻辑关系图可以由用户根据需求自行生成,无需厂家预先完成,增加了业务实现的灵活性,满足了用户的个性化需求。
3、本发明实施例中,针对核心业务逻辑进行代码编写,针对可变业务逻辑,生成业务逻辑关系图。这样,则将一个业务应用的实现拆分成了核心业务逻辑的代码以及可变业务逻辑的业务逻辑关系图。由于业务逻辑关系图易于用户侧自己实现和修改,无需厂家进行代码编写,因此,简化了业务实现,易于根据用户需要进行可变业务逻辑的调整。
4、本发明实施例适用于采用业务建模方式开发企业级应用开发领域。主要以业务逻辑和状态控制解耦为出发点,提供了一种更加灵活、通用的方式来描述业务逻辑与业务状态间的流转控制关系,通过抽象的“动作”、“状态”、“转移”三元实体关系,建立了一套可描述、可图形化建模的状态控制关系描述方式,使得用户可以通过图形化建模的方式,对业务逻辑和状态间的流转控制关系进行动态调整,从而达到业务逻辑和状态控制间的解耦,使得两者可以独立演化。
5、本发明实施例可以将变化点进行分离的思想,将状态和动作间的这种控制关系抽象出来,以图形化建模的方式进行灵活调整,使得核心业务逻辑和控制关系可以独立演化。
6、本发明实施例聚焦企业级应用系统内部的状态流转和业务逻辑控制间的建模,提供了一种更加通用、灵活的方式来描述这种状态的流转和业务逻辑控制间的关联关系,并使得这种关联关系可以以图形化建模的方式进行动态调整。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃〃〃〃〃〃”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种生成业务逻辑关系图的方法,其特征在于,设置关系图的图元,所述图元包括:动作、状态及状态值、前置条件以及状态转移,还包括:
根据业务应用中的每一个对象,确定当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移;
根据当前对象对应的业务逻辑,关联所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。
2.根据权利要求1所述的方法,其特征在于,所述动作用于描述与所述状态值有关的业务逻辑的封装;
所述状态用于描述一个对象的特征;所述状态值用于描述一个对象的特征值,其中,每个对象包括0~n个状态,每一个状态包括2~m个状态值;
所述前置条件用于描述动作可执行的前提;
所述状态转移用于描述某个动作执行后,根据动作执行结果,使得某一个或者某些状态的状态值进行改变。
3.根据权利要求1所述的方法,其特征在于,
所述图元中进一步包括:运算符,用于描述多个前置条件间的计算关系;
进一步包括:确定所述当前对象对应的多个前置条件的计算关系,并确定所述当前对象对应的运算符;
所述关联所确定的该对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,进一步包括:利用所确定的运算符,将所确定的当前对象对应的多个前置条件进行关联。
4.根据权利要求1所述的方法,其特征在于,所述图元中进一步包括:状态同步,用于描述某个状态的状态值改变后,同时会引起另一个状态的状态值进行同步修改;
进一步包括:确定所述当前对象的两个状态的状态值之间存在状态同步;
所述关联所确定的该对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,进一步包括:利用状态同步,关联所确定的当前对象对应的两个状态的状态值。
5.根据权利要求1至4中任一所述的方法,其特征在于,针对每一个对象的每一个业务场景,分别执行所述的确定、关联以及生成业务逻辑关系图的处理。
6.根据权利要求1至4中任一所述的方法,其特征在于,所述状态转移包括:无条件转移、有条件转移两种。
7.一种实现业务应用的方法,其特征在于,包括:
针对业务应用的核心业务逻辑进行代码编写;
针对业务应用的可变业务逻辑中的每一个对象,执行上述权利要求1至5中任一所述的生成业务逻辑关系图的方法,得到每一个可变业务逻辑中的每一个对象对应的业务逻辑关系图;
组装所述代码及所述业务逻辑关系图;
根据组装后的所述代码及所述业务逻辑关系图,实现业务应用的处理。
8.一种生成业务逻辑关系图的装置,其特征在于,包括:
图元单元,用于保存关系图的图元,所述图元包括:动作、状态及状态值、前置条件以及状态转移;
确定单元,用于对于业务应用中的每一个对象,确定当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移;
关系图生成单元,用于根据当前对象对应的业务逻辑,关联所确定的当前对象对应的一个以上的动作、一个以上的状态及状态值、一个以上的前置条件以及一个以上的状态转移,以生成对应当前对象的业务逻辑关系图。
9.根据权利要求8所述的装置,其特征在于,
所述图元单元中,进一步保存有图元:运算符,用于描述多个前置条件间的计算关系;
则,所述确定单元,进一步确定所述当前对象对应的多个前置条件的计算关系,并确定所述当前对象对应的运算符;
则,所述关系图生成单元,进一步在生成对应当前对象的业务逻辑关系图时,利用所述确定单元所确定的运算符,将所确定的当前对象对应的多个前置条件进行关联。
和/或,
所述图元单元中进一步保存有图元:状态同步,用于描述某个状态的状态值改变后,同时会引起另一个状态的状态值进行同步修改;
则,所述确定单元,进一步确定所述当前对象的两个状态的状态值之间存在状态同步;
则,所述关系图生成单元,进一步在生成对应当前对象的业务逻辑关系图时,利用状态同步,关联所确定的当前对象对应的两个状态的状态值。
10.一种实现业务应用的系统,其特征在于,包括:核心业务逻辑装置、执行装置、以及如权利要求8或9所述的生成业务逻辑关系图的装置,其中,
核心业务逻辑装置,用于保存针对业务应用的核心业务逻辑的代码;
执行装置,用于组装所述代码及所述业务逻辑关系图;根据组装后的所述代码及所述业务逻辑关系图,实现业务应用的处理。
CN201510418219.8A 2015-07-16 2015-07-16 生成业务逻辑关系图以及实现业务应用的方法和装置 Pending CN105068793A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510418219.8A CN105068793A (zh) 2015-07-16 2015-07-16 生成业务逻辑关系图以及实现业务应用的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510418219.8A CN105068793A (zh) 2015-07-16 2015-07-16 生成业务逻辑关系图以及实现业务应用的方法和装置

Publications (1)

Publication Number Publication Date
CN105068793A true CN105068793A (zh) 2015-11-18

Family

ID=54498174

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510418219.8A Pending CN105068793A (zh) 2015-07-16 2015-07-16 生成业务逻辑关系图以及实现业务应用的方法和装置

Country Status (1)

Country Link
CN (1) CN105068793A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109814857A (zh) * 2017-11-22 2019-05-28 中国电力科学研究院有限公司 一种可定制图元联动的方法及装置
CN110175734A (zh) * 2019-03-29 2019-08-27 石化盈科信息技术有限责任公司 一种业务逻辑流程图形化配置方法
CN110879722A (zh) * 2019-11-27 2020-03-13 京东数字科技控股有限公司 生成逻辑示意图的方法及装置、计算机可存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1719832A (zh) * 2005-07-15 2006-01-11 复旦大学 一种规范驱动的网格工作流描述和验证方法
CN101739619A (zh) * 2010-01-04 2010-06-16 北京航空航天大学 一种业务流程创建方法及装置
CN101873334A (zh) * 2009-04-24 2010-10-27 同济大学 一种状态驱动的可执行业务流程执行方法
CN103049264A (zh) * 2012-12-17 2013-04-17 国电南京自动化股份有限公司 一种通过状态机动态建模实现对业务系统控制的方法
CN103870285A (zh) * 2014-04-02 2014-06-18 成都西山居互动娱乐科技有限公司 进行逻辑流程控制的链式状态转换方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1719832A (zh) * 2005-07-15 2006-01-11 复旦大学 一种规范驱动的网格工作流描述和验证方法
CN101873334A (zh) * 2009-04-24 2010-10-27 同济大学 一种状态驱动的可执行业务流程执行方法
CN101739619A (zh) * 2010-01-04 2010-06-16 北京航空航天大学 一种业务流程创建方法及装置
CN103049264A (zh) * 2012-12-17 2013-04-17 国电南京自动化股份有限公司 一种通过状态机动态建模实现对业务系统控制的方法
CN103870285A (zh) * 2014-04-02 2014-06-18 成都西山居互动娱乐科技有限公司 进行逻辑流程控制的链式状态转换方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109814857A (zh) * 2017-11-22 2019-05-28 中国电力科学研究院有限公司 一种可定制图元联动的方法及装置
CN109814857B (zh) * 2017-11-22 2022-10-21 中国电力科学研究院有限公司 一种可定制图元联动的方法及装置
CN110175734A (zh) * 2019-03-29 2019-08-27 石化盈科信息技术有限责任公司 一种业务逻辑流程图形化配置方法
CN110175734B (zh) * 2019-03-29 2021-06-15 石化盈科信息技术有限责任公司 一种业务逻辑流程图形化配置方法
CN110879722A (zh) * 2019-11-27 2020-03-13 京东数字科技控股有限公司 生成逻辑示意图的方法及装置、计算机可存储介质
CN110879722B (zh) * 2019-11-27 2020-12-22 京东数字科技控股有限公司 生成逻辑示意图的方法及装置、计算机可存储介质

Similar Documents

Publication Publication Date Title
CN107395353B (zh) 一种区块链共识方法及装置
CN105589874B (zh) Etl任务依赖关系的检测方法、装置及etl工具
CN104123184B (zh) 一种用于为构建过程中的任务分配资源的方法和系统
CN106156186A (zh) 一种数据模型管理装置、服务器及数据处理方法
CN106407446B (zh) 一种网络调查问卷构建方法及其装置
CN104331285A (zh) 一种代码自动生成方法及系统
CN108920139B (zh) 一种程序生成方法、装置、系统、电子设备及存储介质
US11409928B2 (en) Configurable digital twin
CN108111364B (zh) 一种业务系统的测试方法及装置
CN102567172A (zh) 用于应用性能测试的并行工作负荷仿真方法和系统
CN105068793A (zh) 生成业务逻辑关系图以及实现业务应用的方法和装置
CN102486749A (zh) 数据驱动测试方法及系统
CN103235811A (zh) 一种数据存储方法及装置
CN104317604A (zh) 一种程序代码生成方法及装置
CN111291936B (zh) 产品生命周期预估模型生成方法、装置及电子设备
CN104636397B (zh) 用于分布式计算的资源分配方法、计算加速方法以及装置
CN105405002A (zh) 基于sap平台的公式数据配置方法及系统
CN106648839A (zh) 数据处理的方法和装置
CN106843822B (zh) 一种执行代码生成方法及设备
CN110570646B (zh) 一种基于历史数据的四遥信号验收方法及系统
CN103853554A (zh) 一种软件重构位置确定方法及装置
US20130185047A1 (en) Simulation modelling
Dittrich et al. Network analysis of software repositories: identifying subject matter experts
CN111782641B (zh) 数据错误修复方法及系统
CN101778110B (zh) 业务协议挖掘方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151118