Workflow Management Via Distributed Ledgers and Smart Contracts
Abstract
Systems and methods as described herein may include creating and monitoring workflows in a blockchain network. A workflow may be implemented by using a smart contract or the steps in the workflow may be recorded in a distributed ledger in a blockchain network. Completion of a workflow step may be verified by identifying a blockchain transaction executed by the workflow step performer assigned to the workflow step. The blockchain transaction is associated with encryption keys of the workflow step performer assigned to the workflow step. The completion of the execution of a workflow may be verified by determining whether the status of the last workflow step is complete, and identifying a blockchain transaction associated with encryption keys of the workflow step performer assigned to the last workflow step.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method, comprising:
identifying, by a computing device and from a node in a blockchain network, a blockchain transaction comprising an indication of a failure to complete a workflow step from a plurality of workflow steps of a task; identifying, by the computing device and from the plurality of workflow steps, a last completed workflow step of the task; determining, by the computing device and from the plurality of workflow steps, one or more next workflow steps, wherein the last completed workflow step is a prerequisite to the one or more next workflow steps; and causing, by the computing device, performance of the one or more next workflow steps.
2 . The method of claim 1 , wherein:
each workflow step, of the plurality of workflow steps, is assigned to at least one workflow step performer; and causing performance of the one or more next workflow steps comprises:
determining workflow step performers assigned to the one or more next workflow steps; and
sending, to the workflow step performers, a message to begin activities associated with the one or more next workflow steps.
3 . The method of claim 1 , wherein the blockchain transaction is associated with error hashes of at least one workflow step performer assigned to the workflow step.
4 . The method of claim 1 , wherein each workflow step, of the plurality of workflow steps, is assigned to at least one workflow step performer and each workflow step comprises a status indicating whether said workflow step is complete.
5 . The method of claim 4 , further comprising:
identifying, by the computing device and from a second node in a blockchain network, a plurality of blockchain transactions, wherein each blockchain transaction from the plurality of blockchain transactions comprises an indication of completion of a corresponding workflow step from the plurality of workflow steps, is executed by the at least one workflow step performer assigned to the corresponding workflow step, and is associated with encryption keys of the at least one workflow step performer assigned to the corresponding workflow step; and updating, by the computing device and for each identified blockchain transaction in the plurality of blockchain transaction, the status of the corresponding workflow step to indicate that the corresponding workflow step is complete.
6 . The method of claim 4 , further comprising:
determining, by the computing device and based on a status of a current workflow step, of the plurality of workflow steps, indicating that the current workflow step is complete:, one or more next workflow steps, wherein the current workflow step is a prerequisite to the one or more next workflow steps; and causing, by the computing device, performance of the one or more next workflow steps.
7 . The method of claim 4 , further comprising determining, by the computing device, a completion of the task based on identification of a second blockchain transaction, wherein the second blockchain transaction comprises an indication that a last workflow step, from the plurality of workflow steps, is complete, a determination that the second blockchain transaction is executed by the at least one workflow step performer assigned to the last workflow step, and a determination that the second blockchain transaction is associated with encryption keys of the at least one workflow step performer assigned to the last workflow step.
8 . The method of claim 7 , wherein the determining of the completion of the execution of the task is further based on determining, by the computing device, whether each of the plurality of workflow steps is complete.
9 . The method of claim 7 , further comprising verifying, by the computing device, the encryption keys of the at least one workflow step performer assigned to the last workflow step by verifying that a public key of the at least one workflow step performer decrypts second first blockchain transaction.
10 . An apparatus, comprising:
one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the apparatus to:
identify, from a node in a blockchain network, a blockchain transaction comprising an indication of a failure to complete a workflow step from a plurality of workflow steps of a task;
identify, from the plurality of workflow steps, a last completed workflow step of the task;
determine, from the plurality of workflow steps, one or more next workflow steps, wherein the last completed workflow step is a prerequisite to the one or more next workflow steps; and
cause performance of the one or more next workflow steps.
11 . The apparatus of claim 10 , wherein:
each workflow step, of the plurality of workflow steps, is assigned to at least one workflow step performer; and the instructions, when executed by the one or more processors, further cause the apparatus to cause performance of the one or more next workflow steps by causing the apparatus to: determine workflow step performers assigned to the one or more next workflow steps; and send, to the workflow step performers, a message to begin activities associated with the one or more next workflow steps.
12 . The apparatus of claim 10 , wherein the blockchain transaction is associated with error hashes of at least one workflow step performer assigned to the workflow step.
13 . The apparatus of claim 10 , wherein:
each workflow step, of the plurality of workflow steps, is assigned to at least one workflow step performer and each workflow step comprises a status indicating whether said workflow step is complete; and the instructions, when executed by the one or more processors, further cause the apparatus to:
identify, from a second node in a blockchain network, a plurality of blockchain transactions, wherein each blockchain transaction from the plurality of blockchain transactions comprises an indication of completion of a corresponding workflow step from the plurality of workflow steps, is executed by the at least one workflow step performer assigned to the corresponding workflow step, and is associated with encryption keys of the at least one workflow step performer assigned to the corresponding workflow step; and
update, for each identified blockchain transaction in the plurality of blockchain transaction, the status of the corresponding workflow step to indicate that the corresponding workflow step is complete.
14 . The apparatus of claim 13 , wherein the instructions that, when executed by the one or more processors, further cause the apparatus to:
determine, based on a status of a current workflow step, of the plurality of workflow steps, indicating that the current workflow step is complete, one or more next workflow steps, wherein the current workflow step is a prerequisite to the one or more next workflow steps; and cause performance of the one or more next workflow steps.
15 . The apparatus of claim 13 , wherein the instructions that, when executed by the one or more processors, further cause the apparatus to determine a completion of the task based on:
identification of a second blockchain transaction, wherein the second blockchain transaction comprises an indication that a last workflow step, from the plurality of workflow steps, is complete; a determination that the second blockchain transaction is executed by the at least one workflow step performer assigned to the last workflow step; a determination that the second blockchain transaction is associated with encryption keys of the at least one workflow step performer assigned to the last workflow step; and a determination that each of the plurality of workflow steps is complete.
16 . A non-transitory machine-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform steps comprising:
identifying, from a node in a blockchain network, a blockchain transaction comprising an indication of a failure to complete a workflow step from a plurality of workflow steps of a task; identifying, from the plurality of workflow steps, a last completed workflow step of the task; determining, from the plurality of workflow steps, one or more next workflow steps, wherein the last completed workflow step is a prerequisite to the one or more next workflow steps; and causing performance of the one or more next workflow steps.
17 . The non-transitory machine-readable medium of claim 16 , wherein:
each workflow step, of the plurality of workflow steps, is assigned to at least one workflow step performer; and the instructions, when executed by the one or more processors, cause the one or more processors to cause performance of the one or more next workflow steps by:
determining workflow step performers assigned to the one or more next workflow steps; and
sending, to the workflow step performers, a message to begin activities associated with the one or more next workflow steps.
18 . The non-transitory machine-readable medium of claim 16 , wherein the blockchain transaction is associated with error hashes of at least one workflow step performer assigned to the workflow step.
19 . The non-transitory machine-readable medium of claim 16 , wherein:
each workflow step, of the plurality of workflow steps, is assigned to at least one workflow step performer and each workflow step comprises a status indicating whether said workflow step is complete; and the instructions, when executed by the one or more processors, further cause the one or more processors to perform steps comprising:
identifying, from a second node in a blockchain network, a plurality of blockchain transactions, wherein each blockchain transaction from the plurality of blockchain transactions comprises an indication of completion of a corresponding workflow step from the plurality of workflow steps, is executed by the at least one workflow step performer assigned to the corresponding workflow step, and is associated with encryption keys of the at least one workflow step performer assigned to the corresponding workflow step; and
updating, for each identified blockchain transaction in the plurality of blockchain transaction, the status of the corresponding workflow step to indicate that the corresponding workflow step is complete.
20 . The non-transitory machine-readable medium of claim 19 , wherein the instructions that, when executed by the one or more processors, further cause the one or more processors to perform steps comprising:
determining, based on a status of a current workflow step, of the plurality of workflow steps, indicating that the current workflow step is complete, one or more next workflow steps, wherein the current workflow step is a prerequisite to the one or more next workflow steps; and causing performance of the one or more next workflow steps.Join the waitlist — get patent alerts
Track US2021243010A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.