Workflow commissioning method and electronic equipment
Through the finite state machine model and responsive bridging technology, the problems of state flow legality and performance bottlenecks in the workflow trial run are solved, and efficient and legal state management and visual display are achieved.
Patent Information
- Application Number
- CN202510898307.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-30
- Publication Date
- 2025-10-17
AI Technical Summary
During the existing workflow trial run, the legitimacy of state transfer and extension cannot be guaranteed, and the high computational complexity leads to performance bottlenecks, affecting the trial run effect.
The finite state machine model is used to manage the state transition of the workflow, ensuring that the state flows legally along the predefined path. Real-time status and logs are distributed to subscribers through responsive bridging to avoid repeated rendering and improve processing efficiency.
It implements status legitimacy management during the workflow trial run, improves performance and simplifies the visual display of the trial run, ensuring the legitimacy and efficiency of status flow.
Smart Images

Figure CN120803608A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates generally to the field of computers, and more specifically to a method of workflow test run and an electronic device. BACKGROUND
[0002] A workflow can be used to plan and implement complex functional logic, such as a task that is complex in function and requires high stability. The task can be planned with a workflow to facilitate the execution of the task. After the editing of the workflow is completed, the workflow usually needs to be test run. Only the workflow that is successfully test run will be further published. However, in the current workflow test run process, the state of the test run can be illegally transferred, thereby negatively affecting the effect of the test run. SUMMARY
[0003] According to an example embodiment of the present disclosure, a method, an apparatus, an electronic device, a computer-readable storage medium, and a computer program product of test run of a workflow are provided.
[0004] In a first aspect of the present disclosure, a method of workflow test run is provided, comprising: starting a test run process for a workflow based on a trigger; determining a filtering manner corresponding to a subscriber from a plurality of predefined filtering manners; and distributing a corresponding response in the test run process to the subscriber based on the filtering manner.
[0005] In a second aspect of the present disclosure, an electronic device is provided, comprising: at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, which when executed by the at least one processing unit causes the electronic device to perform the method described in the first aspect of the present disclosure.
[0006] In a third aspect of the present disclosure, an apparatus of workflow test run is provided, comprising: a starting unit configured to start a test run process for a workflow based on a trigger; a determining unit configured to determine a filtering manner corresponding to a subscriber from a plurality of predefined filtering manners; and a distributing unit configured to distribute a corresponding response in the test run process to the subscriber based on the filtering manner.
[0007] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, having stored thereon machine executable instructions which, when executed by a device, cause the device to perform the method described in the first aspect of the present disclosure.
[0008] In a fifth aspect of the present disclosure, there is provided a computer program product comprising computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method described in the first aspect of the present disclosure.
[0009] In a sixth aspect of the present disclosure, there is provided an electronic device comprising: processing circuitry configured to perform the method described in the first aspect of the present disclosure.
[0010] The summary is provided to introduce a selection of concepts that are further described in the detailed description below. This summary is not intended to identify key or essential features of the disclosure, nor is it intended to limit the scope of the disclosure. Other features will be more fully described in the following detailed description, taken in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS
[0011] The above and other features, advantages and aspects of embodiments of the present disclosure will become more apparent by describing in detail some embodiments thereof with reference to the annexed drawings in which:
[0012] Figure 1 A schematic diagram showing a system in which embodiments of the present disclosure can be applied;
[0013] Figure 2 A schematic flow diagram showing a method of workflow trial run according to some embodiments of the present disclosure;
[0014] Figure 3 A schematic diagram showing a state change path according to some embodiments of the present disclosure;
[0015] Figure 4 A block diagram showing an example apparatus according to some embodiments of the present disclosure; and
[0016] Figure 5 A block diagram showing an example computing device that can be used to implement embodiments of the present disclosure. DETAILED DESCRIPTION
[0017] Embodiments of the present disclosure will be described below in greater detail with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is understood that the present disclosure can be embodied in various forms and should not be interpreted as being limited to the embodiments set forth herein; rather, these embodiments are provided so as to more completely and thoroughly understand the present disclosure. It is understood that the drawings and embodiments of the present disclosure are for exemplary purposes only and are not intended to limit the scope of the present disclosure.
[0018] A workflow is a tool for planning and implementing complex functional logic, which can be used for multi-step tasks with complex functions and high stability requirements. The workflow includes multiple nodes, supports custom code, and can handle complex and controllable Artificial Intelligence (AI) task flow requirements.
[0019] Each of the multiple nodes of the workflow can have at least one input end and at least one output end. Different nodes can have the same or different types, such as basic nodes or tool nodes. Optionally, the nodes can be defined or implemented as Large Language Model (LLM) nodes, code nodes, knowledge nodes, conditional nodes, or nodes corresponding to plug-ins, etc.
[0020] For a created or edited workflow, the running of the workflow can be tested through a trial run. Specifically, the trial run of the workflow can help developers verify the correctness of the workflow in the design state, thereby assisting developers to efficiently complete the construction of the design of the workflow.
[0021] Generally, a trial run needs to simulate a pre-environment similar to a production environment, and the process and results of the trial run need to be displayed in a visual manner. Current trial run techniques are dependent on components derived from specific product forms, and data transmission is completed through simple interface communication, and visual display is completed by relying on the responsive capabilities of various frameworks. However, the legality of state transitions and extensions cannot be guaranteed and cannot be influenced. In addition, the computational complexity of the trial run is a linear function of the number of nodes of the workflow, and the total amount of computation is a polynomial function of the number of nodes of the workflow, so when the number of nodes is large, there will be a performance bottleneck of the trial run.
[0022] Therefore, embodiments of the present disclosure provide a workflow trial run scheme, which implements state management in the workflow trial run process. Through the scheme, the state transition in the trial run process can be managed in a centralized manner, ensuring that the workflow can enter a predetermined state and exit an expected state. In addition, the performance of the workflow trial run can be further improved, for example, the state of the nodes in the workflow and the trial run log can be pushed to designated subscribers.
[0023] Embodiments of the present disclosure relate to the management of states, and the finite state machine model of the trial run can be transferred from one state to another state. In embodiments of the present disclosure, the "transition" of the state can also be referred to as the change / variation, transition, flow, adjustment, scheduling, or other terms, etc., which are not limited by the present disclosure.
[0024] Figure 1A schematic diagram of a system 100 to which embodiments according to the present disclosure can be applied is shown. As shown in Figure 1 The system 100 can include a client 110 and a server 120. Exemplarily, a developer can create or edit a workflow through the client 110, for example, a corresponding application can be installed on the client 110, and the application can access the server 120 through an interface.
[0025] In some examples, the server 120 can be implemented as a physical device on the management side, or can be implemented as a logical device in the cloud, or can be implemented as a plurality of distributed devices connected through a network, or can be implemented as a software module on the foregoing devices, and the present disclosure is not limited thereto.
[0026] In some embodiments, the server 120 can have an LLM-based AI application development platform. The client 110 can be installed with an application for accessing the AI application development platform, and the developer can create a workflow through the application with the aid of the AI application development platform.
[0027] Embodiments of the present disclosure do not limit the device of the client 110, which can be, but is not limited to, a smartphone, a tablet computer, a desktop computer, an artificial intelligence (AI) device, etc.
[0028] The scheme of the workflow trial run in embodiments of the present disclosure can be implemented in the form of software, or can be implemented in the form of a combination of software and hardware. For example, the scheme can be implemented by the server 120, or can be implemented by the client 110, or can be implemented by a combination of the client 110 and the server 120, and the present disclosure is not limited thereto.
[0029] In order to perform the trial run of the workflow, a test environment for the trial run can be built. The test environment can be isolated from the implemented production environment, but can simulate the real situation of the production environment. For example, the system, configuration, architecture, data, permission, etc. in the test environment can be consistent or approximate with the real production environment. Further, the trial run of the workflow can be performed in the test environment.
[0030] Figure 2 A schematic flowchart of a method 200 of workflow trial run according to some embodiments of the present disclosure is shown. The method 200 can be performed by an electronic device (such as the client device 110) or a server (such as the server 120), or can be performed by a processor.
[0031] At block 210, based on the trigger, a trial run process for the workflow is started. At block 220, a filtering manner corresponding to the subscriber is determined from a plurality of predefined filtering manners, and a corresponding response in the trial run process is distributed to the subscriber based on the filtering manner. At block 230, the corresponding response in the trial run process is distributed to the subscriber based on the filtering manner.
[0032] In embodiments of the present disclosure, the trial run process of the workflow can be started based on a trigger, and further can be ended or completed based on another trigger or event, etc. For example, the trigger for starting the trial run process can be that a user clicks a button associated with starting the trial run, or can be that a user clicks a button for completing the creation of the workflow, or can be that an event for automatically starting the trial run process is satisfied, etc. For example, the trigger for ending or completing the trial run process can be that a user clicks a button for stopping or interrupting the trial run process, or can be that the trial run of all nodes of the workflow has been completed, or can be that another event related to ending the trial run process is satisfied, etc.
[0033] It can be understood that the description of the triggers or events related to starting and ending / completing the trial run process in embodiments of the present disclosure is only illustrative, and the trial run process can also be started and ended / completed based on other triggers or events not listed here, which will not be listed one by one here.
[0034] In embodiments of the present disclosure, during the trial run process of the workflow, a first state of the workflow at a first time can be determined, and in response to a first event, the workflow is controlled to change to a second state at a second time according to a predefined state change path.
[0035] In embodiments of the present disclosure, the term "state" is related to, and the state of the workflow can be controlled by a finite state machine model of the trial run. For example, the finite state machine model can only be in a unique finite state at a time. Illustratively, the state can be any of the following: idle, check, change, save, run, pause, resume, cancel, success, failure, etc. It can be understood that the states listed here are only illustrative and do not constitute a limitation on embodiments of the present disclosure. For example, in actual situations, fewer or more different states can be included. For example, other types of states can be added as the business expands, etc. In this way, the workload in embodiments of the present disclosure can support the scheduling of a plurality of advanced states.
[0036] Illustratively, the first event can be that the workflow needs to wait for further input, and accordingly the second state can be a pause state. For example, the further input can come from user input or can come from the output of other nodes, etc.
[0037] Additionally or alternatively, the method can further comprise: in response to a second event, controlling the workflow to transit to a third state at a third time according to a predefined state change path, wherein the second event is obtaining further input. For example, the second event can be receiving input from a user or obtaining output of another node as current input, etc. For example, the third state can be the resume running state.
[0038] In some embodiments, the predefined state change path can define a one-way change path of states. For example, the predefined state change path can specify a preceding state and / or a subsequent state of a certain state. For example, the one-way change path can be associated with a specific event.
[0039] Optionally, the one-way change path defined by the predefined state change path can include part or all of the following: from the idle state to the check state, from the check state to the idle state, from the save state to the idle state, from the check state to the save state, from the save state to the running state, from the running state to the pause state, from the pause state to the resume state, from the transient state to the cancel state, from the running state to the cancel state, from the running state to the success state, from the running state to the failure state, etc.
[0040] Figure 3 A schematic diagram of a state change path 300 is shown according to some embodiments of the present disclosure. Figure 3 The various states are shown in the boxes, and the various events are shown in the lines.
[0041] As shown in Figure 3 , in response to different events, the workflow can transit to the same or different another state when in a certain state. As shown in Figure 3 , for the same event, the transited state can depend on the current state of the workflow.
[0042] As an example, taking the event “cancel” as an example, the “cancel” event can be in the form of an interface to inform the workflow. When the workflow is in the running state 311, the state of the workflow can be switched to the cancel state 312 in response to the “cancel” event. When the workflow is not in the running state, such as when the workflow is in the save state 313 or the check state 314, the state of the workflow can be switched to the idle state 315 in response to the “cancel” event.
[0043] In this way, in embodiments of the present disclosure, the workflow has and only has one state at a time, which can ensure that the event can correctly drive the state transition, so that the state legality during the workflow trial run can be guaranteed.
[0044] As an example, taking the core state "running state" in the trial running process of the workflow as an example. Different configurations of the workflow can need user input or directly start running before entering the running state, and the pre-defined state change path in the embodiment of the present disclosure can define the pre-state of the running state and the corresponding event. For example, after the trial running of node 1 is successful, the trial running of node 2 can be started, and if the trial running of node 2 needs user input, node 2 can be converted to a pause or interrupt state to wait for user input. If user input 1 is obtained, the trial running of node 3 can be further started after the trial running of node 2 is successful. If user input 2 is obtained, the trial running of node 4 can be further started after the trial running of node 2 is successful. If the user input is a cancel operation, the state can be converted to a cancel state, and the trial running process can be canceled.
[0045] In this way, the normal flow of the state can be ensured, and the user can be prevented from bypassing the check state and / or the save state by repeatedly triggering the component update. In this way, the legality of the state flow can be ensured.
[0046] The embodiment of the present disclosure can ensure that the workflow can enter the established state and exit the expected state through the pre-defined state change path, can ensure the legality of the state flow of the workflow trial running, and can be influenced by external modules, so that various trial running forms can be easily implemented.
[0047] In addition, in the embodiment of the present disclosure, the state of the workflow can be distributed to the subscriber in the form of response based on the subscription of the subscriber.
[0048] For example, the embodiment of the present disclosure can define the data model through "model definition". Optionally, a plurality of different services can be defined through the model definition, for example, including environment service, running service, execution service, check service, etc. Taking the execution service as an example, the content related to the execution log can be defined through the model definition, including execution state, execution log, project associated with the running, running node log, event generated by the node in the running process, running consumption, trial running time consumption of the workflow, etc.
[0049] For example, the embodiment of the present disclosure can define the response through the responsive bridge. Optionally, a plurality of filtering methods, i.e. a plurality of different filtering methods, can be pre-defined, for example, including using service, using service storage, using service state, etc. Taking the node log as an example, the subscriber can subscribe to the node log, and the response can be determined by comparing the state, input, output, etc. For example, the subscribed node log can include: input of the node, output of the node, state of the node, running loss of the node, etc.
[0050] Exemplarily, embodiments of the present disclosure can define a plurality of components for assisting a subscriber to subscribe. Optionally, the defined plurality of components can include a Form component, a Log component, a Trial component, a Problem component, a Trace component, etc.
[0051] In some embodiments, a filtering manner of a subscriber can be determined based on at least one component associated with the subscriber; and a response to the subscriber is determined based on the filtering manner. Optionally, different filtering manners (also referred to as filters) can be defined for different subscribers, for example, for a subscription of a node log, a corresponding response can be determined by comparing fields such as state, input, output, etc. By comparison, it can be determined which content needs / have been updated, and which content is unchanged or identical, so that the unchanged content does not need to be rendered repeatedly, nor does the subscriber need to be notified. For example, the response to the subscriber can include the content that needs / have been updated, without including the unchanged content. In this way, repeated rendering can be avoided, thereby improving efficiency.
[0052] As an example, node A subscribes to the running time consumption of the entire workflow, and node B subscribes to the node log of a certain node x. In this example, during or after the trial run of node x is completed, it can be determined that the response to node B includes the node log of node x, without the need to provide the response to node A. Optionally, a function adapted to the subscriber can be encapsulated, for example, a corresponding hook can be encapsulated in a frame such as React to achieve the same.
[0053] In some embodiments, in response to the content subscribed by the subscriber being a real-time value, the real-time value is obtained from a service storage, and the real-time value is provided to the subscriber.
[0054] It can be understood that in some scenarios, a real-time latest value (i.e., a real-time value) is needed instead of a reactive response. In such scenarios, the latest value can be directly obtained from the aforementioned service storage. For example, a specific component can be defined, and only the latest value of the workflow needs to be obtained when an interface request is initiated, without causing re-rendering of the component.
[0055] In this way, a conventional state subscriber is not needed, and re-rendering of the component by consuming memory to ensure that the value is the latest is avoided. Instead, the present solution directly obtains the real-time value from the service storage, thereby avoiding additional overhead and improving processing efficiency.
[0056] Optionally, the trial run process of the workflow in the embodiments of the present disclosure can be presented in a visual manner, for example, can be displayed by different boxes, different lines, different colors, etc. In the embodiments of the present disclosure, since all the contents do not need to be provided to each subscriber, the contents of the visual presentation will be more concise.
[0057] Optionally, for the workflow successfully completing the trial run, the developer can perform a publishing operation to apply the workflow to a real working environment.
[0058] It should be understood that in the embodiments of the present disclosure, “first”, “second”, “third” and the like are only to indicate that a plurality of objects can be different, but at the same time do not exclude that two objects are the same, and should not be interpreted as any limitation on the embodiments of the present disclosure.
[0059] It should also be understood that the manners, cases, categories and divisions of embodiments in the embodiments of the present disclosure are only for the convenience of description, and should not constitute special limitations. The features in various manners, categories, cases and embodiments can be combined with each other as long as they are consistent with logic.
[0060] It should also be understood that the above content is only to help those skilled in the art better understand the embodiments of the present disclosure, and is not intended to limit the scope of the embodiments of the present disclosure. Those skilled in the art can make various modifications or changes or combinations, etc. according to the above content. The schemes after such modifications, changes or combinations are also within the scope of the embodiments of the present disclosure.
[0061] It should also be understood that the above description focuses on the differences between various embodiments, and the same or similar parts can be referred to or learned from each other. For the sake of brevity, they will not be repeated here.
[0062] Figure 4 A schematic block diagram of an example apparatus 400 according to some embodiments of the present disclosure is shown. The apparatus 400 can be implemented by software, hardware, or a combination of both. As shown, the apparatus 400 includes a starting unit 410, a determining unit 420, and a distributing unit 430. Figure 4 The starting unit 410 is configured to start a trial run process for a workflow based on a trigger. The determining unit 420 is configured to determine a filtering manner corresponding to a subscriber from a plurality of predefined filtering manners. The distributing unit 430 is configured to distribute a corresponding response in the trial run process to the subscriber based on the filtering manner.
[0063] The starting unit 410 is configured to start a trial run process for a workflow based on a trigger. The determining unit 420 is configured to determine a filtering manner corresponding to a subscriber from a plurality of predefined filtering manners. The distributing unit 430 is configured to distribute a corresponding response in the trial run process to the subscriber based on the filtering manner.
[0064] In some embodiments, the determining unit 420 can be configured to determine, during the trial run, a first state of the workflow at a first time; and in response to the first event, control the workflow to transit to a second state at a second time according to a predefined state change path.
[0065] Exemplarily, the state of the workflow can be controlled by a finite state machine model. Optionally, the finite state machine model is in a unique finite state at one time.
[0066] Exemplarily, the first event is that the workflow needs to wait for further input, and the second state is a pause state.
[0067] In some embodiments, the determining unit 420 is further configured to, in response to a second event, control the workflow to transit to a third state at a third time according to the predefined state change path, wherein the second event is to obtain further input.
[0068] In some embodiments, the determining unit 420 is further configured to determine, based on at least one component associated with the subscriber, a filtering manner of the subscriber from a plurality of filtering manners.
[0069] In some embodiments, the determining unit 420 is further configured to, in response to the content subscribed by the subscriber being a real-time value, obtain the real-time value from a service storage; and provide the real-time value to the subscriber.
[0070] Optionally, the first state or the second state comprises any one of the following: idle, check, change, save, run, pause, resume, cancel, success, or failure.
[0071] Figure 4 The apparatus 400 can be used to implement the processes described above in connection with Figures 1 to 3 For brevity, details are not repeated here.
[0072] The division of the modules or units in the embodiments of the present disclosure is illustrative, and is merely a logical function division. In actual implementation, another division manner can be used, and each functional unit in the disclosed embodiments can be integrated in one unit, or can be physically separated, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware, or in the form of a software functional unit.
[0073] Figure 5 A block diagram of an example computing device 500 that can be used to implement embodiments of the present disclosure is shown. It should be understood that Figure 5 The computing device 500 shown is merely exemplary and should not be construed as limiting the functionality and scope of implementations described herein. For example, device 500 can be used to perform the above-described processes in connection withFigures 1 to 3 The process.
[0074] As Figure 5 shown, computing device 500 is in the form of a general-purpose computing device. Components of computing device 500 can include, but are not limited to, one or more processors or processing units 510, memory 520, storage 530, one or more communication units 540, one or more input devices 550, and one or more output devices 560. Processing unit 510 can be a real or virtual processor and is capable of executing various processing in accordance with programs stored in memory 520. In a multi-processing system, multiple processing units execute computer-executable instructions in parallel to improve the processing power of computing device 500.
[0075] Computing device 500 typically includes a plurality of computer storage media. Such media can be volatile, nonvolatile, removable, and / or non-removable media implemented in any method or technology for storage of information such as program modules, data, and / or data files. Memory 520 can be volatile memory (such as registers, cache, random access memory (RAM)), non-volatile memory (such as read only memory (ROM), electrically erasable programmable read only memory (EEPROM), flash memory), or some combination thereof. Storage 530 can be removable or non-removable media and can include machine- readable media such as flash drives, disks, or any other media capable of storing information and / or data (e.g., training data for training) and accessible by computing device 500.
[0076] Computing device 500 can further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in Figure 5 , a disk drive for reading from or writing to a removable, non- volatile magnetic disk (e.g., a "floppy disk"), and an optical disk drive for reading from or writing to a removable, non-volatile optical disk (e.g., a CD-ROM) can be provided. In such instances, each drive can be connected to the bus (not shown) by one or more data media interfaces. Memory 520 can include a computer program product 525 having one or more program modules configured to carry out the various methods or actions of the various implementations of the present disclosure.
[0077] The communication units 540 enable communications with other computing devices over a communication medium. Additionally, the functionality of the components of the computing device 500 can be implemented in a single computing cluster or a plurality of computer machines that are capable of communicating with each other through a communication connection. Thus, the computing device 500 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.
[0078] The input device 550 can be one or more input devices, such as a mouse, a keyboard, a trackball, etc. The output device 560 can be one or more output devices, such as a display, a speaker, a printer, etc. The computing device 500 can also communicate with one or more external devices (not shown), such as a storage device, a display device, etc., through the communication unit 540, as needed, communicate with one or more devices that enable a user to interact with the computing device 500, or any devices (e.g., a network card, a modem, etc.) that enable the computing device 500 to communicate with one or more other computing devices. Such communication can be carried out via an Input / Output (I / O) interface (not shown).
[0079] According to an example implementation of the present disclosure, a computer readable storage medium is provided, having stored thereon computer executable instructions, wherein the computer executable instructions are executed by a processor to implement the method described above. According to an example implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer readable medium and includes computer executable instructions, wherein the computer executable instructions are executed by a processor to implement the method described above. According to an example implementation of the present disclosure, a computer program product is provided, having stored thereon a computer program, which when executed by a processor implements the method described above.
[0080] Various aspects of the disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, and computer program products according to implementations of the disclosure. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.
[0081] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, such that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device is generated that implements the functions / actions specified in one or more blocks in the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, where these instructions cause the computer, programmable data processing device, and / or other device to operate in a specific manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks in the flowchart and / or block diagram.
[0082] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0083] The flow charts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to multiple implementations of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a part for a module, program segment or instruction, and a part for a module, program segment or instruction comprises one or more executable instructions for realizing the logical function of the specification. In some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0084] While various implementations of the present disclosure have been described above, the foregoing description is intended to be illustrative, not exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is selected to best explain the principles of the implementations, their practical applications, or improvements to existing technologies, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. A method for a workflow trial run, comprising: Based on the trigger, start a trial run process for the workflow; Determine the filter method that corresponds to the subscriber from the predefined filter methods; as well as Based on the screening method, corresponding responses in the trial run are distributed to the subscribers.
2. The method according to claim 1, further comprising: During the trial run, determining a first state of the workflow at a first moment; as well as In response to the first event, the workflow is controlled to transition to a second state at a second moment according to a predefined state change path. The method according to claim 2 , wherein the state of the workflow is controlled by a finite state machine model. The method according to claim 3 , wherein the finite state machine model is in a unique finite state at a time. The method according to claim 2 , wherein the first event is that the workflow needs to wait for further input, and the second state is a paused state.
6. The method according to claim 5, further comprising: In response to a second event, the workflow is controlled to transition to a third state at a third moment according to the predefined state change path, wherein the second event is obtaining the further input.
7. The method according to claim 1, wherein determining a screening method corresponding to the subscriber from a plurality of predefined screening methods comprises: A screening method for the subscriber is determined from the plurality of screening methods based on at least one component associated with the subscriber.
8. The method according to claim 1, further comprising: In response to the content subscribed by the subscriber being a real-time value, obtaining the real-time value from the usage service storage; as well as The real-time value is provided to the subscriber.
9. The method according to any one of claims 2 to 6, wherein the first state or the second state comprises any one of the following: Idle, Verify, Change, Save, Run, Pause, Resume, Cancel, Succeed, or Fail.
10. An electronic device comprising: at least one processing unit; At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the method according to any one of claims 1 to 9.
11. A device for a workflow trial run, comprising: A starting unit, configured to start a trial operation process for the workflow based on a trigger; a determining unit configured to determine a screening method corresponding to the subscriber from a plurality of predefined screening methods; as well as The distribution unit is configured to distribute the corresponding responses in the trial operation process to the subscribers based on the screening method.
12. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.