Business process debugger with parallel-step debug operation
First Claim
1. A method for enabling a developer to concurrently debug parallel activities, comprising:
- receiving a request to debug an at least one business process through a graphical user interface (GUI), wherein the at least one business process includes a parallel activity;
presenting a graphical representation of the at least one business process;
receiving input which indicates where one or more breakpoints are to be added to the at least one business process;
inserting the one or more breakpoints to the at least one business process and recording the one or more breakpoints in a data structure which links each breakpoint to its associated activity;
instantiating an instance of the at least one business process and executing the instance;
entering debug mode automatically and pausing execution of the instance when a breakpoint is reached;
receiving an instruction to perform a parallel-step operation on the parallel activity;
executing a plurality of current activities in the parallel activity concurrently, wherein said current activities in compiled format containing machine level instructions; and
pausing execution before executing a next activity, which is determined by a token-based flow control block, wherein availability of a token in a token pool indicates a corresponding activity is ready to be executed next; and
wherein after the production server executes a plurality of current activities in the parallel activity concurrently, the production server inserts an implicit breakpoint at the next activity.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for enabling a developer to concurrently debug parallel activities in a business process or workflow, or other software process. A production server includes a business process, which includes a parallel activity. The production server is operable to receive a request to debug the business process, present a graphical representation of the business process, receive input which indicates where a breakpoint is to be added to the business process, and insert the breakpoint. When a request to debug the business process is received, the production server instantiates the business process and executes the instance, and pauses execution of the instance when a breakpoint is reached and enters debug mode. It can then receive an instruction to perform a parallel-step operation on the parallel activity, execute a plurality of current activities in the parallel activity concurrently, and pause execution before executing a next activity and waits for further input.
-
Citations
17 Claims
-
1. A method for enabling a developer to concurrently debug parallel activities, comprising:
-
receiving a request to debug an at least one business process through a graphical user interface (GUI), wherein the at least one business process includes a parallel activity; presenting a graphical representation of the at least one business process; receiving input which indicates where one or more breakpoints are to be added to the at least one business process; inserting the one or more breakpoints to the at least one business process and recording the one or more breakpoints in a data structure which links each breakpoint to its associated activity; instantiating an instance of the at least one business process and executing the instance; entering debug mode automatically and pausing execution of the instance when a breakpoint is reached; receiving an instruction to perform a parallel-step operation on the parallel activity; executing a plurality of current activities in the parallel activity concurrently, wherein said current activities in compiled format containing machine level instructions; and pausing execution before executing a next activity, which is determined by a token-based flow control block, wherein availability of a token in a token pool indicates a corresponding activity is ready to be executed next; and wherein after the production server executes a plurality of current activities in the parallel activity concurrently, the production server inserts an implicit breakpoint at the next activity. - View Dependent Claims (2, 3, 4, 5, 6, 8, 9, 10, 11, 12)
-
-
7. A system for enabling a developer to concurrently debug parallel activities, comprising:
-
a computer including a computer readable medium and processor operating thereon; a production server, executing on the computer, which includes at least one business process having a parallel activity, and a graphical user interface (GUI), which is accessible to a developer system and presents a graphical representation of the at least one business process; wherein the production server is operable to receive input which indicates where one or more breakpoints are to be added to the at least one business process, insert the one or more breakpoints to the at least one business process, and record the one or more breakpoints in a data structure which links each breakpoint to its associated activity; wherein upon receiving a request to debug the at least business process from a client system, the production server instantiates an instance of the at least one business process and executes the instance, enters debug mode automatically and pauses execution of the instance when a breakpoint is reached, receives an instruction to perform a parallel-step operation on the parallel activity, executes a plurality of current activities in the parallel activity concurrently, wherein said current activities in compiled format containing machine level instructions, and pauses execution before executing a next activity, which is determined by a token-based flow control block, wherein availability of a token in a token pool indicates a corresponding activity is ready to be executed next, and wherein after the production server executes a plurality of current activities in the parallel activity concurrently, the production server inserts an implicit breakpoint at the next activity.
-
-
13. A non-transitory computer readable storage medium, including instructions stored thereon which when read and executed by a computer cause the computer to perform the steps comprising:
-
receiving a request to debug an at least one business process through a graphical user interface (GUI), wherein the at least one business process includes a parallel activity; presenting a graphical representation of the at least one business process; receiving input which indicates where one or more breakpoints are to be added to the at least one business process; inserting the one or more breakpoints to the at least one business process and recording the one or more breakpoints in a data structure which links each breakpoint to its associated activity; instantiating an instance of the at least one business process and executing the instance; entering debug mode automatically and pausing execution of the instance when a breakpoint is reached; receiving an instruction to perform a parallel-step operation on the parallel activity; executing a plurality of current activities in the parallel activity concurrently, wherein said current activities in compiled format containing machine level instructions; and pausing execution before executing a next activity, which is determined by a token-based flow control block, wherein availability of a token in a token pool indicates a corresponding activity is ready to be executed next; and wherein after the production server executes a plurality of current activities in the parallel activity concurrently, the production server inserts an implicit breakpoint at the next activity. - View Dependent Claims (14, 15, 16, 17)
-
Specification