CN114416210A - Decision flow simulation method, device, medium and equipment - Google Patents

Decision flow simulation method, device, medium and equipment Download PDF

Info

Publication number
CN114416210A
CN114416210A CN202210093657.1A CN202210093657A CN114416210A CN 114416210 A CN114416210 A CN 114416210A CN 202210093657 A CN202210093657 A CN 202210093657A CN 114416210 A CN114416210 A CN 114416210A
Authority
CN
China
Prior art keywords
decision flow
simulation
decision
node
page
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.)
Granted
Application number
CN202210093657.1A
Other languages
Chinese (zh)
Other versions
CN114416210B (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.)
Beijing Yusys Technologies Group Co ltd
Original Assignee
Beijing Yusys Technologies Group 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 Beijing Yusys Technologies Group Co ltd filed Critical Beijing Yusys Technologies Group Co ltd
Priority to CN202210093657.1A priority Critical patent/CN114416210B/en
Publication of CN114416210A publication Critical patent/CN114416210A/en
Application granted granted Critical
Publication of CN114416210B publication Critical patent/CN114416210B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

The embodiment of the invention provides a method, a device, a medium and equipment for simulating a decision flow, wherein the method comprises the following steps: generating decision flow information in response to configuration operation of the decision flow; the decision flow information comprises a plurality of configuration parameters corresponding to a plurality of nodes of the decision flow; in response to receiving a decision flow simulation instruction, generating a decision flow simulation page according to the decision flow information to obtain a plurality of parameter values corresponding to a plurality of simulation parameters; and according to the decision flow information and the parameter values, sequentially calling each node of the decision flow to automatically execute simulation, and obtaining a simulation result of the decision flow. The embodiment of the invention can call the decision flow without actually releasing the deployment by using simulation, if the decision flow is modified, the decision flow can take effect only by carrying out simulation call modification after storage, and other complicated operations are not needed.

Description

Decision flow simulation method, device, medium and equipment
Technical Field
The invention relates to a decision flow simulation method, a device, a medium and equipment, belonging to the technical field of software, mainly applied to related industries of financial service industry.
Background
Decision-making, which refers to the strategy or method used in making a decision, is the process by which people make their minds and decisions about various events. The method is a complex thinking operation process, namely a process of finally making judgment and obtaining a conclusion in information collection, processing and integration. In a consumption financial business scene, a decision mainly refers to a strategy rule which is made by technical personnel, business personnel and management personnel and faces to each link of the whole user credit life cycle.
The traditional wind control rule model is mainly embedded in a background code, and data acquisition, rule definition and risk judgment are directly realized in a hard coding mode.
A custom engine developed based on a particular business scenario may be considered an inference engine. Its advantages are low threshold for rule configuration: the view and the engine internal data model are completely fit with the performance business model, so that a business analyst can easily get on the hands. The disadvantage is that the application range is limited: because the design of the views and engines are based entirely on a particular business model, it is difficult to modify and promote to another business at low cost.
The generic decision engine evolved from the inference engine and is a component embedded in the application. The realized functions comprise: the business decision is separated from the application code, written using a predefined semantic module, receives data input, interprets the business rules, and makes the business rules according to the business decision.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art: the existing decision engine does not have the function of decision flow simulation.
Disclosure of Invention
In view of this, embodiments of the present invention provide a method, an apparatus, a medium, and a device for simulating a decision flow, so as to perform a simulation call and obtain a simulation result only by configuring and storing the decision flow after completing development of a decision flow node.
To achieve the above object, in a first aspect, an embodiment of the present invention provides a method for simulating a decision flow, including:
generating decision flow information in response to configuration operation of the decision flow; the decision flow information comprises a plurality of configuration parameters corresponding to a plurality of nodes of the decision flow;
in response to receiving a decision flow simulation instruction, generating a decision flow simulation page according to the decision flow information to obtain a plurality of parameter values corresponding to a plurality of simulation parameters;
and according to the decision flow information and the parameter values, sequentially calling each node of the decision flow to automatically execute simulation, and obtaining a simulation result of the decision flow.
In some possible embodiments, the generating the decision flow information in response to the configuration operation of the decision flow specifically includes:
generating a decision flow editing page, wherein the decision flow editing page is used for providing a decision flow node plug-in list;
in response to a drag operation, dragging a plurality of nodes in the decision flow node plug-in list into a canvas of the decision flow editing page;
in response to the wiring operation, using the wiring to link the plurality of node plug-ins in the execution sequence of the node plug-ins;
in response to a double-click operation on a current node plug-in, displaying a node attribute panel of the current node plug-in on one side of the canvas, wherein the node attribute panel comprises a plurality of input items;
generating a plurality of configuration parameters of the current node plug-in response to input operations on the plurality of input items;
and responding to the saving operation, saving a plurality of configuration parameters respectively corresponding to all the node plugins, wherein the decision flow information comprises a plurality of configuration parameters respectively corresponding to all the node plugins.
In some possible embodiments, the generating a decision flow simulation page according to the decision flow information to obtain a plurality of parameter values corresponding to a plurality of simulation parameters in response to receiving a decision flow simulation instruction specifically includes:
in response to receiving a decision flow simulation instruction, loading configuration parameters corresponding to each node from the decision flow information;
generating a decision flow simulation page according to the configuration parameters corresponding to each node, wherein the simulation parameters corresponding to each node and a corresponding parameter value input frame are displayed on the decision flow simulation page;
and receiving a plurality of parameter values corresponding to the plurality of simulation parameters.
In some possible embodiments, the sequentially invoking each node of the decision flow to automatically execute simulation according to the decision flow information and the plurality of parameter values to obtain a simulation result of the decision flow specifically includes:
after receiving the plurality of parameter values, analyzing according to the decision flow information to obtain a decision flow executable node linked list, wherein the decision flow executable linked list is used for storing the execution sequence of all nodes of the decision flow, and placing the plurality of received parameter values and the decision flow executable linked list into a decision flow context;
sequentially calling a plurality of nodes of the decision flow according to the decision flow executable linked list, triggering each node to obtain a corresponding simulation result according to the plurality of parameter values, and putting the corresponding simulation result into the decision flow context;
and returning the simulation result in the decision flow context to the decision flow simulation page for displaying.
In some possible embodiments, the method further comprises: and if any node has an execution error when executing the simulation, displaying error information. Namely, when the execution of each node is simulated to be wrong, error information is displayed.
In some possible embodiments, the obtaining, in response to receiving a decision flow simulation instruction, a configuration parameter corresponding to each node from the decision flow information specifically includes:
in response to receiving a decision flow simulation instruction, inquiring the latest version number to which the decision flow has migrated, finding out decision flow information corresponding to the latest version number according to the decision flow information and corresponding version information, and reading the decision flow information corresponding to the latest version number into a memory;
and traversing each node of the decision flow information corresponding to the latest version number, determining one or more target nodes needing input parameters, and merging the input parameters of the one or more target nodes and returning the merged input parameters to the decision flow simulation page.
In some possible embodiments, before generating the decision stream editing page, the method further includes: and loading the decision flow node plug-in from the decision flow node plug-in folder.
In a second aspect, an embodiment of the present invention provides a decision flow simulation apparatus, which includes:
the decision stream editing module is used for responding to the configuration operation of the decision stream and generating decision stream information; the decision flow information comprises a plurality of configuration parameters corresponding to a plurality of nodes of the decision flow;
the simulation parameter value acquisition module is used for responding to a received decision flow simulation instruction and generating a decision flow simulation page according to the decision flow information so as to obtain a plurality of parameter values corresponding to a plurality of simulation parameters;
and the decision flow simulation execution module is used for sequentially calling each node of the decision flow to automatically execute simulation according to the decision flow information and the parameter values so as to obtain a simulation result of the decision flow.
In some possible embodiments, the decision stream editing module may specifically include:
the page generation submodule is used for generating a decision stream editing page, and the decision stream editing page is used for providing a decision stream node plug-in list;
the drag response submodule is used for responding to drag operation and dragging the plurality of node plug-ins in the decision flow node plug-in list into the canvas of the decision flow editing page;
the connection response submodule is used for responding to connection operation and using connection to link the nodes according to the execution sequence of the node plug-ins;
the attribute panel submodule is used for responding to double-click operation on the current node plug-in, displaying a node attribute panel of the current node plug-in on one side of the canvas, and the node attribute panel comprises a plurality of input items;
the input response submodule is used for responding to the input operation of the plurality of input items and generating a plurality of configuration parameters of the current node plug-in;
and the saving submodule is used for responding to the saving operation and saving a plurality of configuration parameters respectively corresponding to all the node plugins, and the decision flow information comprises a plurality of configuration parameters respectively corresponding to all the node plugins.
In some possible implementations, the simulation parameter value obtaining module may specifically include:
the simulation parameter loading submodule is used for loading configuration parameters corresponding to each node from the decision flow information in response to the received decision flow simulation instruction;
the simulation page generation submodule is used for generating a decision flow simulation page according to the configuration parameters corresponding to each node plug-in, and the simulation parameters corresponding to each node and the corresponding parameter value input frames are displayed on the decision flow simulation page;
and the parameter value receiving submodule is used for receiving a plurality of parameter values corresponding to the plurality of simulation parameters.
In some possible embodiments, the decision flow simulation execution module may specifically include:
the analysis processing sub-module is used for obtaining a decision flow executable node linked list according to the decision flow information after receiving the plurality of parameter values, the decision flow executable linked list is used for storing the execution sequence of all nodes of the decision flow, and the plurality of received parameter values and the decision flow executable linked list are placed in the context of the decision flow;
the node calling and simulation result obtaining submodule is used for calling a plurality of nodes of the decision flow in sequence according to the decision flow executable linked list, triggering each node to obtain a corresponding simulation result according to the plurality of parameter values, and putting the corresponding simulation result into the decision flow context;
and the simulation result returning submodule is used for returning the simulation result in the decision flow context to the decision flow simulation page for displaying.
In a third aspect, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements any one of the decision flow simulation methods according to the first aspect.
In a fourth aspect, an embodiment of the present invention provides a server, including:
one or more processors;
storage means for storing one or more programs; the one or more programs, when executed by the one or more processors, cause the one or more processors to implement any of the decision flow simulation methods as described in the first aspect.
In a fifth aspect, an embodiment of the present invention provides a computer device, where the computer device includes a processor, a memory, a communication interface, a display screen, and an input device, which are connected by a system bus; the memory includes a non-volatile storage medium that stores an operating system and a computer program that, when executed by the processor, implements any of the decision stream emulation methods described above.
In a sixth aspect, an embodiment of the present invention provides a program product, where instructions of the program product, when executed by a processor of an electronic device, cause the electronic device to perform any one of the decision flow simulation methods according to the first aspect.
The technical scheme has the following beneficial effects:
the embodiment of the invention can call the decision flow without actually releasing the deployment by using simulation, if the decision flow is modified, the decision flow can take effect only by carrying out simulation call modification after storage, and other complicated operations are not needed.
The embodiment of the invention can quickly integrate and call other functions of the decision engine or three-party services, can perform real-time simulation call, for example, if the decision engine is newly added with a python model function, a decision flow node plug-in can be directly written and put into the decision flow for simulation call.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1A is an overall flow diagram of a decision flow simulation method of an embodiment of the present invention;
FIG. 1B is a detailed flowchart of step S110 in the method for simulating a decision flow according to the embodiment of the present invention;
fig. 1C is a detailed flowchart of step S120 in the decision flow simulation method according to the embodiment of the present invention;
FIG. 1D is a detailed flowchart of step S130 in the method for simulating a decision flow according to the embodiment of the present invention;
FIG. 2 is a flow diagram of a decision flow simulation of an embodiment of the present invention;
FIG. 3 is a node property panel of an embodiment of the present invention;
FIG. 4 is a decision flow diagram of an embodiment of the invention;
FIG. 5 is a node plug-in list of an embodiment of the present invention;
FIG. 6A is a decision flow right menu page corresponding to a decision flow file tree in a decision flow edit page;
FIG. 6B is an emulation page of an embodiment of the present invention;
FIG. 7 is a simulation results page of an embodiment of the present invention;
FIG. 8A is an overall functional block diagram of a decision flow simulation apparatus according to an embodiment of the present invention;
fig. 8B is a detailed functional block diagram of the decision stream editing module 210 of the decision stream simulation apparatus according to the embodiment of the present invention;
fig. 8C is a functional block diagram of a simulation parameter value obtaining module 220 of a decision flow simulation apparatus according to an embodiment of the present invention;
FIG. 8D is a functional block diagram of a decision flow simulation execution module 230 of a decision flow simulation apparatus according to an embodiment of the present invention;
FIG. 9 is a functional block diagram of a computer-readable storage medium of an embodiment of the present invention;
FIG. 10 is a functional block diagram of a server of an embodiment of the present invention;
FIG. 11 is a functional block diagram of a computer device of an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The decision flow simulation function developed based on the decision flow module in the decision engine is compatible with the version management function, and still can be simulated and called after the version management is migrated.
In the embodiment of the invention, after the development of the decision flow node plug-in is completed, the simulation call can be carried out only by configuring and storing the decision flow, and the simulation result can be obtained by directly operating on a decision engine page and only inputting the required parameter value and clicking a simulation virtual button, so that the method is very convenient for testing and verifying the availability of the decision flow for many times. The decision flow does not need to be issued, and other three-party tools do not need to be used for calling the decision flow. And the problem can be quickly found through simulation, and the problem is solved.
Example one
Fig. 1A is an overall flowchart of a decision flow simulation method according to an embodiment of the present invention. As shown in fig. 1A, the decision flow simulation method may include the following steps:
s110: generating decision flow information in response to configuration operation of the decision flow; the decision flow information includes a plurality of configuration parameters corresponding to a plurality of nodes of the decision flow.
In some embodiments, as shown in fig. 1B, step S110 may specifically include the following steps S111-S116:
s111: generating a decision flow editing page, wherein the decision flow editing page is provided with a decision flow node plug-in list; as shown in fig. 5, the left-most column of icons corresponds to a plurality of decision flow node plug-ins;
s112: in response to the dragging operation, dragging a plurality of node plug-ins in the decision flow plug-in list into a canvas of a decision flow editing page;
s113: in response to the wiring operation, linking the plurality of node plug-ins in the node execution order from the start node plug-in using the wiring;
specifically, the links can only point to other nodes from the start node, and other nodes cannot point to the start node, and the order of the links is determined by the order of the nodes that the user wants to execute. The nodes may execute in parallel, if both wires are linked from the starting node to two different node cards, both node cards may execute in parallel. If the next node exists, whether the next node is executed or not can be determined according to the judgment result of the condition on the connecting line, if the judgment result is 'true', the next node is executed, if the judgment result is 'false', the next node is not executed, and the judgment result is defaulted to 'true', and the next node is executed. If no node can be executed, the decision flow simulation is finished, and a result is returned. In an alternative embodiment, the manner of connection between the nodes is not limited to sequential linking, as determined by the user's intent. The nodes cannot be linked with each other to point to.
S114: responding to the double-click operation of the current node plug-in, displaying a node attribute panel of the current node plug-in on one side of the canvas, wherein the node attribute panel comprises a plurality of input items; one side of the canvas may be any side of the canvas, such as an upper side, a left side, a right side, a lower side; or may be a pop-up panel that is superimposed over the canvas. The plurality of input items at least comprise a plurality of input items for the user to input information and/or a plurality of menu items for the user to select through a pull-down menu; and/or one or more single options for the user to click on. The plurality of input items at least comprise a plurality of mandatory items, and in a further embodiment, one or more optional items can be further included. Preferably, a prompt identifier, such as but not limited to an asterisk, is added to the mandatory item. In the example of fig. 3, the node description and version are options or alternatives, and the other property items are required items. In the example of FIG. 5, the node description, version, rules, whether to use the data source are options, while the other property items are required. Further, corresponding prompt words can be displayed in the version entry, for example: if the multi-version function is used, please select one.
S115: responding to the input operation of a plurality of input items, and generating or acquiring a plurality of configuration parameters of the current node plug-in;
s116: after the plurality of configuration parameters respectively corresponding to all the node plugins are obtained, responding to the storage operation, and storing the plurality of configuration parameters respectively corresponding to all the node plugins into decision flow information, wherein the decision flow information comprises the plurality of configuration parameters respectively corresponding to all the node plugins.
S120: and in response to receiving the decision flow simulation instruction, generating a decision flow simulation page according to the decision flow information to obtain a plurality of parameter values corresponding to the plurality of configuration parameters.
In this embodiment, the parameters filled in the decision stream editing page are configuration parameters, and the simulation parameters are filled in the decision stream simulation page. The decision flow simulation page displays simulation parameters to enable a user to input simulation parameter values, and after configuration parameters are configured, the simulation parameters do not need to be input every time.
In some embodiments, as shown in fig. 1C, step S120 may specifically include the following steps S121-S123:
s121: and responding to the received decision flow simulation instruction, reading the decision flow information, and loading the configuration parameters corresponding to each node from the decision flow information.
In some embodiments, step S121 may specifically include the following steps:
s121-1: in response to receiving a decision flow simulation instruction, inquiring the latest version number to which the decision flow has migrated, finding out decision flow information corresponding to the latest version number according to the decision flow information and corresponding version information, and reading the decision flow information corresponding to the latest version number into a memory;
in some examples, the latest version number may be a maximum version number, and the decision flow file corresponding to the maximum version number includes information of each node of the decision flow; the information of the node includes: public general attributes and private attributes, the public general attributes comprising: unique identification of actuator (node), node name and actuator (node) type, the private attributes include: some configuration parameters that are required for the execution of the executor (node).
S121-2: and traversing each node of the decision flow information corresponding to the latest version number, determining one or more target nodes needing input parameters, and merging the input parameters of the one or more target nodes and returning the merged input parameters to the decision flow simulation page.
The reason for querying the maximum version number to which the decision flow has migrated is as follows:
when the decision stream needs to be deployed, the decision stream file is first sealed and saved, and the decision stream file enters an uneditable state, and at this time, the name of the decision stream file changes, for example, the file name changes to: the decision flow ID + version number + "version", so the maximum version number needs to be found.
After the user completes the decision flow deployment operation, the user wants to perform decision flow simulation again at this time, and performs secondary verification on the correctness of the decision flow, at this time, the name of the decision flow file has changed, and if the decision flow file cannot be found without searching the maximum version number, the decision flow information cannot be obtained, which results in simulation failure.
S122: and generating a decision flow simulation page according to the configuration parameters corresponding to each node, and displaying the configuration parameters corresponding to each node and a corresponding parameter value input frame on the decision flow simulation page. Further, as shown in fig. 6B, the data type and the argument of each simulation parameter may also be displayed on the decision flow simulation page. Reference to which means that the parameter is used by which type of node plugin.
In an alternative embodiment, the true page of the generated decision stream is independent of the configuration parameters. This depends on whether the simulation parameters are obtained from configuration parameters or not when the developer develops the node plug-in. In some embodiments, the decision flow simulation page may be generated according to the simulation parameter sets of all nodes in the decision flow, and if some simulation parameters in the nodes are not collected or are omitted, the simulation parameters may be added in the json parameter list by themselves. The list parameters and the json parameters are equivalent and can be converted into each other, and the format of the parameters transferred in the actual simulation can be json format parameters.
S123: and receiving a plurality of parameter values corresponding to the plurality of simulation parameters according to the plurality of parameter value input boxes.
S130: and according to the decision flow information and the plurality of parameter values, sequentially calling each node of the decision flow to automatically execute simulation, and obtaining a simulation result of the decision flow.
In some embodiments, as shown in fig. 1D, step S130 may specifically include the following steps S131 to S133:
s131: after receiving a plurality of parameter values, analyzing according to decision flow information to obtain a decision flow executable node linked list, wherein the decision flow executable linked list is used for storing the execution sequence of all nodes of a decision flow, and putting the received parameter values and the decision flow executable linked list into a decision flow context;
s132: sequentially calling a plurality of subsequent nodes of the decision flow from the starting node according to the decision flow executable linked list, triggering each node to obtain a corresponding simulation result according to a plurality of parameter values, and putting the corresponding simulation result into the decision flow context;
s133: and returning the simulation result in the decision flow context to the decision flow simulation page for displaying.
A decision flow context is understood to be an encapsulated object of an information flow, the decision flow context containing all information data of the decision flow, including: configuration parameters, simulation parameters and linked list data, which are stored in the decision flow context, and the execution sequence of the nodes can also be regarded as executable node linked list (i.e. linked list data) stored in the decision flow context. The order of executing all the nodes of the decision flow is stored in a linked list, and the linked list is the linked list of the executable nodes of the decision flow. The start node is at the very front of the linked list and the next node is found by the nextNode in the linked list.
In some embodiments, the above method further comprises: if an execution error occurs in any one of the nodes in step S132, an error message is displayed to prompt the operator to perform processing. Specifically, the previous steps are preparation work, all information data parameters required by simulation are prepared, but each node has the possibility of execution error, and when the error occurs, the execution is interrupted, the next node is not executed any more, and meanwhile, error information is returned.
In some embodiments, before step S111, the following steps may be further included: and loading the decision flow node plug-in from the decision flow plug-in folder. The decision engine starts a monitor to monitor the decision stream plug-in folder, and if the plug-in is newly added or changed in the decision stream plug-in folder, the decision engine automatically reloads the newly added or changed plug-in to realize hot loading.
The above technical solution is explained in more detail by the following examples:
fig. 2 is a flowchart of a decision flow simulation method according to an embodiment of the present invention. As shown in fig. 2, the method for simulating a decision flow includes the following steps:
s1: and developing a decision flow node plug-in.
Specifically, the embodiment of the invention can utilize a decision flow node plug-in development template to develop a decision flow node plug-in, and the decision flow node plug-in can call a third-party service and also call some other services in a decision engine.
S2: and loading the decision flow node plug-in by the decision engine.
Specifically, after the development of the decision flow node plug-in is completed, the node plug-in file is packaged, and then the node plug-in file is placed into a decision flow node plug-in folder of the decision engine, and the decision engine can automatically load the decision flow node plug-in.
S3: and editing the decision flow.
Specifically, after the decision flow node plug-in is loaded, the decision flow editing page is opened, and the loaded decision flow node plug-in is displayed in the decision flow node plug-in list, as shown by a row of buttons on the left side of fig. 5.
As shown in FIG. 4, the required node plug-ins are dragged into the canvas, and the node plug-ins are linked in the order of execution of the node plug-ins from the starting node using wires. Such as pulling a unidirectional wire from one node to the next.
As shown in FIGS. 3 and 5, double clicking on a node plug-in will cause a node property panel for the current node to appear on the right side of the canvas, and the node plug-in has which entries are defined by the node plug-in developer, for example: in fig. 3, the rule calling node plug-in includes six configuration input items of node description, rule set, rule, version, calling parameter and result assignment, fills or selects the required configuration parameter, and clicks to store after configuration is completed.
S4: the decision stream is saved.
Specifically, after the user clicks on saving, the decision engine automatically saves the decision flow information data into the decision flow file.
S5: and loading simulation parameters.
Specifically, as shown in fig. 6A, in one example, the decision flow editing page has a save button, and after the save button is clicked, the decision flow simulation is clicked in a decision flow right-click menu corresponding to, for example, but not limited to, the decision flow file tree on the left side to perform simulation. After a user clicks a decision stream simulation function button, a decision stream file is read in response to the click operation, if the decision stream is migrated, the suffix name of the decision stream file is changed, the decision stream cannot be edited on a definition end page, at this time, a program automatically goes to a database query record, namely, the maximum version number to which the decision stream has been migrated is queried, then the decision stream file corresponding to the maximum version number is found, and the content of the decision stream file corresponding to the maximum version number is read into a memory of a decision engine (the memory of the decision engine is actually a memory allocated to the decision engine by computer equipment and belongs to the memory of a computer). The read data includes information of each node of the decision flow, then each node of the decision flow is traversed, if the node needs to input parameters, the input parameters of each node are merged and returned to the front end (decision flow simulation page), and the decision flow simulation page is generated or displayed to inform the user that the simulation decision flow needs the input parameters, as shown in fig. 6B. IN fig. 6B, three parameter value input boxes corresponding to the three request parameters of IN _ age, IN _ height, and IN _ weight are listed IN the "value" column. The input parameters are simulation parameters, each node may have respective needed simulation parameters, and before simulation, the simulation parameters of each node need to be collected, so that a user can input simulation parameter values one by one for simulation.
S6: and inputting parameter values in the decision flow simulation page.
Specifically, after completing input parameter filling, the user clicks a simulation button in the decision flow simulation page.
The first click of the simulation function button in step S5 is to display the decision flow simulation page, and the second click of the simulation function button in step S6 is to actually execute the action of the decision flow simulation after the simulation parameters are filled in.
S7: and simulating and calling a decision flow.
Specifically, in response to the click operation of the user on the simulation button, each parameter is encapsulated into a data structure required by each node of the decision stream, the JSON parameter tab in fig. 6B can be clicked to view the encapsulated data structure, and the parameter value can be directly modified under the JSON parameter tab. The input parameters at the nodes in fig. 3 and 5 are at the configuration nodes, and the decision flow simulation page input parameters in fig. 6B are the input data needed to obtain the nodes when the nodes are called. The packaged data is that each node plug-in can acquire the required data in the process of decision flow simulation.
After receiving simulation data (the simulation data is data encapsulated by user filling simulation parameters), a decision flow file is firstly analyzed into a decision flow executable node linked list, then the received parameters are put into a decision flow context, the decision flow context refers to parameter data which can be obtained by all decision flow nodes, and is equivalent to common and common data, and subsequent nodes are sequentially called from a starting node. The decision flow context is a common area that each node plug-in can access to use the parameter data therein. The decision flow executable node linked list is like an edited decision flow chart, and the node plug-ins are formed by connecting line links. Each node records its previous node and its next node, and the starting node has no previous node.
Each decision flow node can automatically acquire the parameter values required by itself from the decision flow context, then starts to execute the code logic of itself according to the required parameter values, and puts the result into the decision flow context after the execution is finished.
The decision engine in this embodiment has a function of decision flow simulation, and the decision engine directs and invokes the decision flow simulation, and the decision flow simulation starts to execute each actuator (node plug-in) in the decision flow.
S8: and judging whether each node executes successfully or not.
S9: and displaying the simulation result.
Specifically, after all nodes are successfully executed, the simulation results in the decision flow context are returned to the front end together for displaying.
S10: and displaying error information.
Specifically, if an error occurs when a certain node is executed, the error information is returned, the error information is displayed, and an operator is prompted to perform processing and solving. The error information is analyzed by the personnel, and the error may occur because there is a problem in writing the code logic by the node plug-in developer, that is, a plug-in problem, and thus the flow returns to step S1, and there is a possibility that there is a problem in inputting the parameter value at the simulation page, that is, a parameter input problem, and thus the flow returns to step S3. The error information is provided by a computer program and is analyzed and judged by a person.
As shown IN fig. 7, after inputting or filling IN the parameter values of the three request parameters of IN _ age, IN _ height and IN _ weight as 25, 170 and 55, respectively, clicking the simulation button, the decision flow simulation result is displayed thereunder, for example, the score is the result returned by the decision flow simulation calling rule.
The decision flow has a version management function, the immigration means adds a new version number, at the moment, the suffix of the decision flow file is changed into a suffix generated by version number splicing, and the decision flow is marked to be in an uneditable state.
If the decision flow is required to be edited again, migration operation is required, and after a decision flow version which is required to be migrated is selected for migration, the suffix of the decision flow version file is changed into 'flow', and the decision flow is marked to be in an editable state.
If the development of a new decision flow node plug-in is not required, the decision flow can be edited directly starting from step S3 as long as the decision engine has loaded the decision flow node plug-in.
The embodiment of the invention has the beneficial technical effects that:
the embodiment of the invention can call the decision flow without real release deployment by using simulation, and if the decision flow is modified, the decision flow can take effect only by carrying out simulation call modification after storage without other complicated operations.
The embodiment of the invention can quickly integrate and call other functions of the decision engine or three-party services, can perform real-time simulation call, for example, if the decision engine is newly added with a python model function, a plug-in can be directly written and put into the decision flow for simulation call.
The embodiment of the invention quickly finds the problem through simulation and solves the problem; for example, if the null pointer abnormality occurs in the third rule calling node called to the decision flow by simulation, the error information is returned to the front-end page for displaying, so as to provide a reference for an operator to solve the problem.
The embodiment of the invention supports the simulation verification of the decision flow after the migration, for example, the decision flow is subjected to version development and deployment operation, and the simulation test can be directly carried out without migration operation if the availability of the decision flow is further tested. By querying the maximum version number, the user can still simulate the latest decision flow after deploying the decision flow.
Example two
Fig. 8A is an overall functional block diagram of a decision flow simulation apparatus according to an embodiment of the present invention. As shown in fig. 8A, the decision flow simulation apparatus 200 includes:
a decision stream editing module 210, configured to generate decision stream information in response to a configuration operation of a decision stream; the decision flow information comprises a plurality of configuration parameters corresponding to a plurality of nodes of the decision flow;
a simulation parameter value obtaining module 220, configured to generate a decision flow simulation page according to the decision flow information in response to receiving a decision flow simulation instruction, so as to obtain multiple parameter values corresponding to multiple simulation parameters;
and the decision flow simulation executing module 230 is configured to sequentially invoke each node of the decision flow to automatically execute simulation according to the decision flow information and the plurality of parameter values, so as to obtain a simulation result of the decision flow.
Fig. 8B is a functional block diagram of a decision stream editing module 210 of a decision stream simulation apparatus according to an embodiment of the present invention.
As shown in fig. 8B, in some embodiments, the decision stream editing module 210 may specifically include:
the page generation submodule 211 is configured to generate a decision stream editing page, where the decision stream editing page is used to provide a decision stream node plug-in list;
a drag response submodule 212, configured to respond to a drag operation, drag a plurality of node plug-ins in a decision flow node plug-in list into a canvas of the decision flow editing page;
a connection response submodule 213 for linking the plurality of node cards in the node card execution order from the start node card using the connection in response to the connection operation; specifically, the connection line response submodule 213 may be specifically configured to: the starting node links to other nodes, other nodes cannot link to the starting node, and the link sequence is determined according to the node sequence which the user wants to execute; if both wires are linked from the starting node to two different node cards, the two node cards can execute in parallel; if the next node exists, determining whether to execute the next node according to a condition judgment result on the connecting line; for example, if the conditional result is "true", the next node is executed, and if the conditional result is "false", the next node is not executed, and if the conditional result defaults to "true", the next node is executed; if no node can be executed, the decision flow simulation is finished, and a result is returned.
In alternative embodiments, the connection between the nodes is not limited to linking in the order of execution of the nodes. The nodes cannot be linked with each other to point to.
An attribute panel sub-module 214, configured to display a node attribute panel of the current node plug-in on one side of the canvas in response to a double-click operation on the current node, where the node attribute panel includes a plurality of entries;
an input response submodule 215, configured to, in response to an input operation on a plurality of input items, obtain or generate a plurality of configuration parameters of the current node plug-in;
the saving submodule 216 is configured to, after obtaining the plurality of configuration parameters respectively corresponding to all nodes, respond to a saving operation, and save the plurality of configuration parameters respectively corresponding to all node plugins into decision flow information, where the decision flow information includes the plurality of configuration parameters respectively corresponding to all node plugins.
In this embodiment, the parameters filled in the decision stream editing page are configuration parameters, and the simulation parameters are filled in the decision stream simulation page. The configuration parameters and the simulation parameters are used during simulation, and when the decision flow simulation is carried out, the information is loaded into the memory to carry out calling operation. After the decision stream is edited and stored, the decision stream editing page can be closed, and the decision stream editing page is not used in the simulation process.
Fig. 8C is a functional block diagram of a simulation parameter value obtaining module 220 of a decision flow simulation apparatus according to an embodiment of the present invention. As shown in fig. 8C, in some embodiments, the simulation parameter value obtaining module 220 may specifically include:
the simulation parameter loading submodule 221 is configured to load, in response to receiving a decision flow simulation instruction, a configuration parameter corresponding to each node from the decision flow information;
a simulation page generation submodule 222, configured to generate a decision flow simulation page according to the configuration parameter corresponding to each node plug-in, where the decision flow simulation page displays a simulation parameter corresponding to each node and a corresponding parameter value input frame; in some embodiments, the simulation page generation sub-module 222 may be configured to generate a decision flow simulation page according to the simulation parameter sets of all nodes in the decision flow, and if part of the simulation parameters in the nodes are not collected or are omitted, obtain a json parameter that is added by a user in a json parameter list. The list parameters and the json parameters are equivalent and can be mutually converted, and the format of the parameters transmitted in actual simulation can be json format parameters;
the parameter value receiving sub-module 223 is configured to receive a plurality of parameter values corresponding to a plurality of simulation parameters according to the plurality of parameter value input boxes.
In some embodiments, the simulation parameter loading submodule 221 is specifically configured to:
in response to receiving a decision flow simulation instruction, inquiring the latest version number to which the decision flow has migrated, finding out decision flow information corresponding to the latest version number according to the decision flow information and corresponding version information, and reading the decision flow information corresponding to the latest version number into a memory;
the decision flow file corresponding to the maximum version number comprises information of each node of the decision flow; the information of the node includes: public general attributes and private attributes, the public general attributes comprising: unique identification of actuator (node), node name and actuator (node) type, the private attributes include: some configuration parameters required for the execution of the executor (node); and the number of the first and second groups,
and traversing each node of the decision flow information corresponding to the latest version number, determining one or more target nodes needing input parameters, and merging the input parameters of the one or more target nodes and returning the merged input parameters to the decision flow simulation page.
The reason for querying the maximum version number to which the decision flow has migrated is as follows:
when the decision stream needs to be deployed, the decision stream file is first sealed and saved, and the decision stream file enters an uneditable state, and at this time, the name of the decision stream file changes, for example, the file name changes to: the decision flow ID + version number + "version", so the maximum version number needs to be found.
After the user completes the decision flow deployment operation, the user wants to perform decision flow simulation again at this time, and performs secondary verification on the correctness of the decision flow, at this time, the name of the decision flow file has changed, and if the decision flow file cannot be found without searching the maximum version number, the decision flow information cannot be obtained, which results in simulation failure.
Fig. 8D is a functional block diagram of a decision flow simulation execution module 230 of a decision flow simulation apparatus according to an embodiment of the present invention. As shown in fig. 8D, in some embodiments, the decision flow simulation execution module 230 may specifically include:
the analysis processing sub-module 231 is configured to, after receiving the plurality of parameter values, analyze the plurality of parameter values according to the decision flow information to obtain a decision flow executable node linked list, where the decision flow executable linked list is used to store execution orders of all nodes of a decision flow, and place the plurality of received parameter values and the decision flow executable linked list into a decision flow context;
the node calling and simulation result obtaining sub-module 232 is configured to sequentially call a plurality of nodes of the decision flow according to the decision flow executable linked list, trigger each node to obtain a corresponding simulation result according to the plurality of parameter values, and place the corresponding simulation result in the context of the decision flow;
and the simulation result returning submodule 233 is configured to return the simulation result in the context of the decision flow to the decision flow simulation page for displaying.
In some embodiments, the above apparatus further comprises: and the error information display module is used for displaying error information to prompt an operator to process if any node has simulation execution errors. In this embodiment, each node has a possibility of execution error, and when the error occurs, the execution is interrupted, and the next node is not executed any more, and meanwhile, an error message is returned.
In some embodiments, the above apparatus further comprises: and the decision flow node plug-in loading module is used for loading the decision flow node plug-in from the decision flow plug-in folder. In some embodiments, the decision flow node plug-in loading module is specifically configured to: and starting a monitor to monitor the decision stream plugin folder, and if the decision stream plugin is newly added or changed in the decision stream plugin folder, automatically reloading the newly added or changed decision stream plugin, thereby being beneficial to realizing hot loading.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
EXAMPLE III
As shown in fig. 9, an embodiment of the present invention further provides a computer-readable storage medium, in which a computer program is stored, and when the computer program is executed by a processor, the computer program implements the steps of the above-mentioned decision flow simulation method.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow of the method according to the embodiments of the present invention may also be implemented by a computer program, which may be stored in a computer-readable storage medium, and when the computer program is executed by a processor, the steps of the method embodiments may be implemented. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. Of course, there are other ways of storing media that can be read, such as quantum memory, graphene memory, and so forth. It should be noted that the computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media does not include electrical carrier signals and telecommunications signals as is required by legislation and patent practice.
Example four
The embodiment of the present invention further provides a server, as shown in fig. 10, including one or more processors 301, a communication interface 302, a memory 303, and a communication bus 304, where the processors 301, the communication interface 302, and the memory 303 complete communication with each other through the communication bus 304.
A memory 303 for storing a computer program;
the processor 301 is configured to implement the steps of the above-described decision flow simulation method when executing the program stored in the memory 303.
Processor 301 may be a general-purpose Processor including a Central Processing Unit (CPU), a Network Processor (NP), etc.; but also Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components.
Memory 303 may include mass storage for data or instructions. By way of example, and not limitation, memory 303 may include a Hard Disk Drive (HDD), a floppy Disk Drive, flash memory, an optical Disk, a magneto-optical Disk, tape, or a Universal Serial Bus (USB) Drive or a combination of two or more of these. Storage 303 may include removable or non-removable (or fixed) media, where appropriate. In a particular embodiment, the memory 303 is a non-volatile solid-state memory. In a particular embodiment, the memory 303 includes Read Only Memory (ROM). Where appropriate, the ROM may be mask-programmed ROM, Programmable ROM (PROM), Erasable PROM (EPROM), Electrically Erasable PROM (EEPROM), electrically rewritable ROM (EAROM), or flash memory or a combination of two or more of these.
The communication bus 304 includes hardware, software, or both for coupling the above-described components to each other. For example, a bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an infiniband interconnect, a Low Pin Count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a video electronics standards association local (VLB) bus, or other suitable bus or a combination of two or more of these. A bus may include one or more buses, where appropriate. Although specific buses have been described and shown in the embodiments of the invention, any suitable buses or interconnects are contemplated by the invention.
EXAMPLE five
In one embodiment, the present application further provides a computer device, which may be a data customization device, and its internal structure diagram may be as shown in fig. 11. The computer device includes a processor, a memory, a communication interface, a display screen, and an input device connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The communication interface of the computer device is used for carrying out wired or wireless communication with external data customization devices, and the wireless communication can be realized through WIFI, an operator network, NFC (near field communication) or other technologies. The computer program is executed by a processor to implement any of the above decision flow simulation methods. The display screen of the computer equipment can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer equipment can be a touch layer covered on the display screen, a key, a track ball or a touch pad arranged on the shell of the computer equipment, an external keyboard, a touch pad or a mouse and the like.
Those skilled in the art will appreciate that the architecture shown in fig. 11 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
Although the present application provides method steps as in an embodiment or a flowchart, more or fewer steps may be included based on conventional or non-inventive labor. The order of steps recited in the embodiments is merely one manner of performing the steps in a multitude of orders and does not represent the only order of execution. When an actual apparatus or client product executes, it may execute sequentially or in parallel (e.g., in the context of parallel processors or multi-threaded processing) according to the embodiments or methods shown in the figures.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The principle and the implementation mode of the invention are explained by applying specific embodiments in the invention, and the description of the embodiments is only used for helping to understand the method and the core idea of the invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (15)

1. A method for simulating a decision flow is characterized by comprising the following steps:
generating decision flow information in response to configuration operation of the decision flow; the decision flow information comprises a plurality of configuration parameters corresponding to a plurality of nodes of the decision flow;
in response to receiving a decision flow simulation instruction, generating a decision flow simulation page according to the decision flow information to obtain a plurality of parameter values corresponding to a plurality of simulation parameters;
and according to the decision flow information and the parameter values, sequentially calling each node of the decision flow to automatically execute simulation, and obtaining a simulation result of the decision flow.
2. The method according to claim 1, wherein the generating decision flow information in response to the configuration operation of the decision flow specifically comprises:
generating a decision flow editing page, wherein the decision flow editing page is used for providing a decision flow node plug-in list;
in response to a drag operation, dragging a plurality of node plug-ins in the decision flow node plug-in list into a canvas of the decision flow editing page;
in response to the wiring operation, using the wiring to link the plurality of nodes in the node plug-in execution sequence;
in response to a double-click operation on a current node plug-in, displaying a node attribute panel of the current node plug-in on one side of the canvas, wherein the node attribute panel comprises a plurality of input items;
generating a plurality of configuration parameters of the current node plug-in response to input operations on the plurality of input items;
and responding to the saving operation, saving a plurality of configuration parameters respectively corresponding to all the node plugins, wherein the decision flow information comprises a plurality of configuration parameters respectively corresponding to all the node plugins.
3. The method according to claim 1 or 2, wherein the generating a decision flow simulation page according to the decision flow information to obtain a plurality of parameter values corresponding to a plurality of simulation parameters in response to receiving a decision flow simulation instruction specifically includes:
in response to receiving a decision flow simulation instruction, loading configuration parameters corresponding to each node from the decision flow information;
generating a decision flow simulation page according to the configuration parameters corresponding to each node, wherein the simulation parameters corresponding to each node and a corresponding parameter value input frame are displayed on the decision flow simulation page;
and receiving a plurality of parameter values corresponding to the plurality of simulation parameters.
4. The method according to claim 1 or 2, wherein the step of calling each node of the decision flow in sequence to automatically execute simulation according to the decision flow information and the plurality of parameter values to obtain the simulation result of the decision flow specifically comprises:
after receiving the plurality of parameter values, analyzing according to the decision flow information to obtain a decision flow executable node linked list, wherein the decision flow executable linked list is used for storing the execution sequence of all nodes of the decision flow, and placing the plurality of received parameter values and the decision flow executable linked list into a decision flow context;
sequentially calling a plurality of nodes of the decision flow according to the decision flow executable linked list, triggering each node to obtain a corresponding simulation result according to the plurality of parameter values, and putting the corresponding simulation result into the decision flow context;
and returning the simulation result in the decision flow context to the decision flow simulation page for displaying.
5. The method of claim 1, further comprising:
and displaying error information when any one of the plurality of nodes of the decision flow has an execution simulation error.
6. The method according to claim 3, wherein the loading configuration parameters corresponding to each node from the decision flow information in response to receiving a decision flow simulation instruction specifically comprises:
in response to receiving a decision flow simulation instruction, inquiring the latest version number to which the decision flow has migrated, finding out decision flow information corresponding to the latest version number according to the decision flow information and corresponding version information, and reading the decision flow information corresponding to the latest version number into a memory;
and traversing each node of the decision flow information corresponding to the latest version number, determining one or more target nodes needing input parameters, and merging the input parameters of the one or more target nodes and returning the merged input parameters to the decision flow simulation page.
7. The method of claim 2, prior to generating the decision stream editing page, further comprising:
and loading the decision flow node plug-in from the decision flow node plug-in folder.
8. A decision flow simulation apparatus, comprising:
the decision stream editing module is used for responding to the configuration operation of the decision stream and generating decision stream information; the decision flow information comprises a plurality of configuration parameters corresponding to a plurality of nodes of the decision flow;
the simulation parameter value acquisition module is used for responding to a received decision flow simulation instruction and generating a decision flow simulation page according to the decision flow information so as to obtain a plurality of parameter values corresponding to a plurality of simulation parameters;
and the decision flow simulation execution module is used for sequentially calling each node of the decision flow to automatically execute simulation according to the decision flow information and the parameter values so as to obtain a simulation result of the decision flow.
9. The apparatus according to claim 8, wherein the decision stream editing module specifically includes:
the page generation submodule is used for generating a decision stream editing page, and the decision stream editing page is used for providing a decision stream node plug-in list;
the drag response submodule is used for responding to drag operation and dragging the plurality of node plug-ins in the decision flow node plug-in list into the canvas of the decision flow editing page;
the connection response submodule is used for responding to connection operation and using connection to link the nodes according to the execution sequence of the node plug-ins;
the attribute panel submodule is used for responding to double-click operation on the current node plug-in, displaying a node attribute panel of the current node plug-in on one side of the canvas, and the node attribute panel comprises a plurality of input items;
the input response submodule is used for responding to the input operation of the plurality of input items and generating a plurality of configuration parameters of the current node plug-in;
and the saving submodule is used for responding to the saving operation and saving a plurality of configuration parameters respectively corresponding to all the node plugins, and the decision flow information comprises a plurality of configuration parameters respectively corresponding to all the node plugins.
10. The apparatus according to claim 8 or 9, wherein the simulation parameter value obtaining module specifically includes:
the simulation parameter loading submodule is used for loading configuration parameters corresponding to each node from the decision flow information in response to the received decision flow simulation instruction;
the simulation page generation submodule is used for generating a decision flow simulation page according to the configuration parameters corresponding to each node plug-in, and the decision flow simulation page displays the simulation parameters corresponding to each node and a corresponding parameter value input frame;
and the parameter value receiving submodule is used for receiving a plurality of parameter values corresponding to the plurality of simulation parameters.
11. The apparatus according to claim 8 or 9, wherein the decision flow simulation execution module specifically includes:
the analysis processing sub-module is used for obtaining a decision flow executable node linked list according to the decision flow information after receiving the plurality of parameter values, the decision flow executable linked list is used for storing the execution sequence of all nodes of the decision flow, and the plurality of received parameter values and the decision flow executable linked list are placed in the context of the decision flow;
the node calling and simulation result obtaining submodule is used for calling a plurality of nodes of the decision flow in sequence according to the decision flow executable linked list, triggering each node to obtain a corresponding simulation result according to the plurality of parameter values, and putting the corresponding simulation result into the decision flow context;
and the simulation result returning submodule is used for returning the simulation result in the decision flow context to the decision flow simulation page for displaying.
12. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out a decision flow simulation method according to any one of claims 1 to 7.
13. A server, characterized in that it comprises:
one or more processors;
storage means for storing one or more programs; the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the decision flow simulation method of any of claims 1-7.
14. A computer device comprising a processor, a memory, a communication interface, a display screen and an input device connected by a system bus; the memory includes a non-volatile storage medium storing an operating system and a computer program that, when executed by the processor, implements the decision flow simulation method of any of claims 1-7.
15. A program product, characterized in that instructions in the program product, when executed by a processor of an electronic device, cause the electronic device to perform a decision flow simulation method according to any of claims 1-7.
CN202210093657.1A 2022-01-26 2022-01-26 Method, device, medium and equipment for simulating decision flow Active CN114416210B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210093657.1A CN114416210B (en) 2022-01-26 2022-01-26 Method, device, medium and equipment for simulating decision flow

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210093657.1A CN114416210B (en) 2022-01-26 2022-01-26 Method, device, medium and equipment for simulating decision flow

Publications (2)

Publication Number Publication Date
CN114416210A true CN114416210A (en) 2022-04-29
CN114416210B CN114416210B (en) 2022-10-28

Family

ID=81276842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210093657.1A Active CN114416210B (en) 2022-01-26 2022-01-26 Method, device, medium and equipment for simulating decision flow

Country Status (1)

Country Link
CN (1) CN114416210B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100131253A1 (en) * 2008-11-26 2010-05-27 International Business Machines Corporation Fair path selection during simulation of decision nodes
CN110717647A (en) * 2019-09-03 2020-01-21 深圳壹账通智能科技有限公司 Decision flow construction method and device, computer equipment and storage medium
CN111932192A (en) * 2019-05-13 2020-11-13 第四范式(北京)技术有限公司 Decision flow configuration method executed in computer equipment and decision flow engine
CN112394922A (en) * 2020-12-02 2021-02-23 成都新希望金融信息有限公司 Decision configuration method, business decision method and decision engine system
CN113888299A (en) * 2021-10-12 2022-01-04 中国工商银行股份有限公司 Wind control decision method and device, computer equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100131253A1 (en) * 2008-11-26 2010-05-27 International Business Machines Corporation Fair path selection during simulation of decision nodes
CN111932192A (en) * 2019-05-13 2020-11-13 第四范式(北京)技术有限公司 Decision flow configuration method executed in computer equipment and decision flow engine
CN110717647A (en) * 2019-09-03 2020-01-21 深圳壹账通智能科技有限公司 Decision flow construction method and device, computer equipment and storage medium
CN112394922A (en) * 2020-12-02 2021-02-23 成都新希望金融信息有限公司 Decision configuration method, business decision method and decision engine system
CN113888299A (en) * 2021-10-12 2022-01-04 中国工商银行股份有限公司 Wind control decision method and device, computer equipment and storage medium

Also Published As

Publication number Publication date
CN114416210B (en) 2022-10-28

Similar Documents

Publication Publication Date Title
US11934301B2 (en) System and method for automated software testing
CN108255709A (en) Script tests method, apparatus, terminal device and the storage medium of written in code
CN109508298B (en) Graphical script test method and system
CN109062780A (en) The development approach and terminal device of automatic test cases
CN109840205A (en) Applied program testing method, device, readable storage medium storing program for executing and terminal device
CN110297760A (en) Building method, device, equipment and the computer readable storage medium of test data
CN111488109A (en) Method, device, terminal and storage medium for acquiring control information of user interface
CN109344066A (en) A kind of test method of browser page, system and terminal
CN108415826A (en) Test method, terminal device and the computer readable storage medium of application
Tierno et al. Open issues for the automotive software testing
CN113868120A (en) Industrial software debugging method and device, computer equipment and storage medium
CN116225886A (en) Test case generation method, device, equipment, storage medium and program product
JP2017220008A (en) Test supporting device and test supporting method
CN112559525A (en) Data checking system, method, device and server
CN114416210B (en) Method, device, medium and equipment for simulating decision flow
CN112199715A (en) Object generation method based on block chain and cloud computing and digital financial service center
CN116955148A (en) Service system testing method, device, equipment, storage medium and product
CN113867700B (en) Model construction method, display platform, server and storage medium
KR101901310B1 (en) System for providing user-oriented interconnection application integration
CN109522217A (en) The internal storage testing method and terminal device of application program
CN105045698A (en) Method for analyzing chip verification progress by using MATPLOTLIB of PYTHON
CN111933228B (en) Method and device for realizing project distribution and management system in clinical research
CN113377648A (en) Software system diagnosis method and device, electronic equipment and computer readable medium
CN115687064A (en) Intelligent contract testing method based on block chain and related equipment
CN112949061A (en) Method and system for building town development model based on reusable operator

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant