IP Library Granted Patent US 9,721,230
Granted Patent B2
US 9,721,230 · App. 14/817,790 · Granted Aug 1, 2017

Developer mode for workflow systems steering patch deployment

Inventors: Ronald Trump (Wiesloch, DE); Harald Schubert (Mannheim, DE); Tobias Breyer (Heidelberg, DE); Peter Gernold (Schriesheim, DE); Stefan Henke (Plankstadt, DE); Krassimir Kondarev (Walldorf, DE); Torsten Wecke (Walldorf, DE)
Assignee: SAP SE
G06Q10/103
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,721,230
App. No.
14/817,790
Granted
Aug 1, 2017
Kind
B2
Abstract

In a first method, a developer mode is determined when a workflow template patch is received, and execution of new workflow instances is either blocked or permitted, or continued execution of workflow instances is forbidden. In a second method, parallelization of workflow execution is provided in an in-memory database management system. In a third method, after received user privilege information, database records associated with a workflow are determined and stored for use at workflow instance runtime. In a fourth method, artifacts used by a workflow are identified using a workflow template. When a command to execute a workflow instance is received, information is stored for generating instances of artifacts for use during execution of the workflow instance. In a fifth method, for a workflow template to be inactivated, the associated workflow template is suspended after currently executing workflow instances have completed and job executors have acknowledged a suspending state.

Claims (74)

1. A method, comprising:

receiving, from a client associated with a user, a patch to a workflow template associated with a workflow;

determining a mode associated with a workflow management system, the mode being a developer-ON mode, when the workflow is developed, or a developer-OFF mode; and

updating the workflow template using the patch, including using mode-dependent actions based on the determined mode, including:

blocking execution of new workflow instances of the workflow;

allowing for the deployment of the updated workflow template;

allowing starting of new workflow instances during the deployment;

when the determined mode is the developer-ON mode:

blocking execution of new workflow instances of the workflow using database-level locks;

unblocking the execution of new workflow instances; and

continuing the execution of existing workflow instances with the newest workflow template patch version no matter on which patch version the workflow instances originally have been started; and

when the determined mode is a developer-OFF mode:

blocking execution of new workflow instances of the workflow using double handshake method;

permitting the continued execution of existing workflow instances associated with the latest patch version of that workflow template; and

forbidding the continued execution of existing workflow instances associated with an older patch version of the workflow template.

2. The method of claim 1 , further comprising, when the determined mode is the developer-OFF mode:

receiving an input to suspend workflows prior to updating and deploying the workflow template.

3. The method of claim 2 , further comprising:

resuming execution of suspended workflows upon completion of updating and deploying the workflow template.

4. The method of claim 3 , wherein suspending workflow instances and resuming execution of suspended workflow instances includes using flags associated with the workflow template, the resuming including periodically checking the flags by a workflow manager.

5. The method of claim 1 , further comprising:

receiving temporal information identifying a time at which the workflow template is to be updated and deployed; and

delaying the updating and deploying of the workflow template until the identified time.

6. The method of claim 1 , wherein the patch includes one or more of a change in steps of the workflow, data used or created by the workflow instance, and user interaction associated with the workflow.

7. A non-transitory, computer-readable medium storing computer-readable instructions executable by a computer and configured to perform operations to:

receive, from a client associated with a user, a patch to a workflow template associated with a workflow;

determine a mode associated with a workflow management system, the mode being a developer-ON mode, when the workflow is developed, or a developer-OFF mode; and

update the workflow template using the patch, including using mode-dependent actions based on the determined mode, including:

block execution of new workflow instances of the workflow;

allow for the deployment of the updated workflow template;

allow starting of new workflow instances during the deployment;

when the determined mode is the developer-ON mode:

block execution of new workflow instances of the workflow using database-level locks;

unblock the execution of new workflow instances; and

continue the execution of existing workflow instances with the newest workflow template patch version no matter on which patch version the workflow instances originally have been started; and

when the determined mode is a developer-OFF mode:

block execution of new workflow instances of the workflow using double handshake method;

permit the continued execution of existing workflow instances associated with the latest patch version of that workflow template; and

forbid the continued execution of existing workflow instances associated with an older patch version of the workflow template.

8. The non-transitory, computer-readable medium of claim 7 , further comprising instructions to, when the determined mode is the developer-OFF mode:

receive an input to suspend workflows prior to updating and deploying the workflow template.

9. The non-transitory, computer-readable medium of claim 8 , further comprising instructions to:

resume execution of suspended workflows upon completion of updating and deploying the workflow template.

10. The non-transitory, computer-readable medium of claim 9 , wherein suspending workflow instances and resuming execution of suspended workflow instances includes using flags associated with the workflow template, the resuming including periodically checking the flags by a workflow manager.

11. The non-transitory, computer-readable medium of claim 7 , further comprising instructions to:

receive temporal information identifying a time at which the workflow template is to be updated and deployed; and

delay the updating and deploying of the workflow template until the identified time.

12. The non-transitory, computer-readable medium of claim 7 , wherein the patch includes one or more of a change in steps of the workflow, data used or created by the workflow instance, and user interaction associated with the workflow.

13. A system, comprising:

a memory;

at least one hardware processor interoperably coupled with the memory and configured to:

receive, from a client associated with a user, a patch to a workflow template associated with a workflow;

determine a mode associated with a workflow management system, the mode being a developer-ON mode, when the workflow is developed, or a developer-OFF mode; and

update the workflow template using the patch, including using mode-dependent actions based on the determined mode, including:

block execution of new workflow instances of the workflow;

allow for the deployment of the updated workflow template;

allow starting of new workflow instances during the deployment;

when the determined mode is the developer-ON mode:

block execution of new workflow instances of the workflow using database-level locks;

unblock the execution of new workflow instances; and

continue the execution of existing workflow instances with the newest workflow template patch version no matter on which patch version the workflow instances originally have been started; and

when the determined mode is a developer-OFF mode:

block execution of new workflow instances of the workflow using double handshake method;

permit the continued execution of existing workflow instances associated with the latest patch version of that workflow template; and

forbid the continued execution of existing workflow instances associated with an older patch version of the workflow template.

14. The system of claim 13 , further configured to, when the determined mode is the developer-OFF mode:

receive an input to suspend workflows prior to updating and deploying the workflow template.

15. The system of claim 14 , further configured to:

resume execution of suspended workflows upon completion of updating and deploying the workflow template.

16. The system of claim 15 , wherein suspending workflow instances and resuming execution of suspended workflow instances includes using flags associated with the workflow template, the resuming including periodically checking the flags by a workflow manager.

17. The system of claim 13 , further configured to:

receive temporal information identifying a time at which the workflow template is to be updated and deployed; and

delay the updating and deploying of the workflow template until the identified time.

18. The system of claim 13 , wherein the patch includes one or more of a change in steps of the workflow, data used or created by the workflow instance, and user interaction associated with the workflow.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2015
From: TRUMP, RONALD; SCHUBERT, HARALD; BREYER, TOBIAS; GERNOLD, PETER; HENKE, STEFAN; KONDAREV, KRASSIMIR; WECKE, TORSTEN
To: SAP SE
Reel/Frame 036275/0465 →
Continuity (1)
Related Publication 20170039520A1 · Feb 9, 2017