IP Library › Granted Patent US 7,607,130
Granted Patent B2
US 7,607,130 · App. 10/795,591 · Granted Oct 20, 2009

Workflow as data-transition driven, scriptable state machines

Assignee: Microsoft Corporation
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 7,607,130
App. No.
10/795,591
Granted
Oct 20, 2009
Kind
B2
Abstract

A computing workflow system has a workflow process definition contained in a workflow table as script functions. The workflow table is part of an extended database schema operating with an extended store, a workflow engine and a script engine. The novel workflow system includes a server database having a data table and an associated workflow table. A workflow extended store is communicatively coupled to the server database. A workflow engine is also communicatively coupled to the server database and to the workflow extended store. Further, a script engine is communicatively coupled to the workflow engine. The workflow table includes workflow rules and associated code to be executed by the workflow engine. Each row of the workflow table represents a workflow step. Script functions are defined in the workflow table to evaluate the condition and execute the action of each workflow step. The rules and associated code in the workflow table is both declarative and procedural. The workflow engine compares the data change information from the extended store procedure with the workflow definition in the workflow table and determines the appropriate step that needs to be executed. Then it checks execution permissions on that step. If execute permission is granted, the workflow engine evaluates the workflow step condition against the workflow table and, if true, it executes the step action. Upon completing the step action, the workflow engine commits all the changes made to the current item or to other items in the database.

Claims (13)

1. A workflow system embodied on a computer-readable storage medium, comprising:

a workflow enabled data table that includes workflow triggers;

a workflow table that includes workflow rules and associated code;

a workflow extended store coupled to the workflow enabled data table and the workflow table, the workflow extended store includes extended store procedures;

a workflow engine coupled to the workflow enabled data table, the workflow table and the workflow extended store; and

a script engine coupled to the workflow engine;

wherein the workflow enabled data table and the workflow table are part of a database server, the database server including at least one timeout agent implemented as a server job, the at least one timeout agent scans the database server and executes at least one timeout workflow event when the database server indicates such a workflow event is due.

2. The workflow system of claim 1 , the at least one timeout agent coupled to the workflow enabled data table and to the workflow engine.

3. The workflow system of claim 1 , the at least one timeout agent scheduled to run with a definable frequency.

4. The workflow system of claim 1 , the workflow triggers analyze a data modification request submitted to the workflow enabled data table.

5. The workflow system of claim 4 , the workflow triggers invoke an extended store procedure.

6. The workflow system of claim 1 , the workflow engine executes the workflow rules and associated code.

7. The workflow system of claim 1 , the workflow engine invokes the script engine.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2004
From: SINGH, KAVIRAJ; TOMA, TUDOR; JOHNSON, DAVID C.; GELLOCK, SCOT J.; FERNANDO, JPSEPH P.; GOMES, CARLOS P.; WEI, MIN
To: MICROSOFT CORPORATION
Reel/Frame 015069/0634 →
Continuity (2)
Continuation 0934619400 · Jul 1, 1999
Related Publication 20040172445A1 · Sep 2, 2004