Patent ID: 8516307

Claim:
A method comprising: determining, by a computing device, an application including executable software; determining, by the computing device, an execution plan of a plurality of blocks in the application, the execution plan defining an execution order for execution of blocks in the plurality of blocks, wherein each block includes a set of executable software code in the executable software, and wherein different execution plans define different execution orders for execution of blocks in the plurality of blocks causing a different order of execution of the executable software code in the executable software; receiving, by the computing device, a block level debugging command in a debugger; in response to the block level debugging command, determining, by the computing device, an active block in the structure defined in the execution plan, wherein the active block includes a set of executable software code that defines a function of the active block; and in response to the block level debugging command, performing, by the computing device, a block level action on the active block, wherein the block level action executes the set of executable software code included in the active block.