WO2004079607A2 - System and method for automatically starting a document on a workflow process - Google Patents

System and method for automatically starting a document on a workflow process Download PDF

Info

Publication number
WO2004079607A2
WO2004079607A2 PCT/GB2004/000790 GB2004000790W WO2004079607A2 WO 2004079607 A2 WO2004079607 A2 WO 2004079607A2 GB 2004000790 W GB2004000790 W GB 2004000790W WO 2004079607 A2 WO2004079607 A2 WO 2004079607A2
Authority
WO
WIPO (PCT)
Prior art keywords
item
work
workflow
folder
document
Prior art date
Application number
PCT/GB2004/000790
Other languages
French (fr)
Inventor
Kenneth Carlin Nelson
Original Assignee
International Business Machines Corporation
Ibm United Kingdom Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corporation, Ibm United Kingdom Limited filed Critical International Business Machines Corporation
Publication of WO2004079607A2 publication Critical patent/WO2004079607A2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Definitions

  • the present invention generally relates to the field of data file management in database management system models . More particularly, the present invention relates to a system and associated method for automatically starting a document on a workflow process .
  • Content management is an infrastructure to manage a wide spectrum of digital information. Large collections of scanned images, facsimiles, electronic office documents, XML and HTML files, computer output, audio, video, multimedia, and virtual reality content can be stored and accessed through the content management system.
  • the content management system integrates content with line of business, customer service, enterprise resource planning, digital asset management, distance learning, Web content management or other applications to accelerate benefits across the enterprise.
  • the content manager product may be visualized as a triangle.
  • the three vertices of this triangle are the client, a library server and a resource manager.
  • the client is the user interface, and provides the user with the capability of storing, searching for, and marking-up objects such as documents, files, etc.
  • the library server is the equivalent of a card catalog that holds information about the objects, including their location.
  • the resource manager (RM) is the storage location for either the actual object or a pointer to the actual object.
  • the core library server logic (except for system utilities and housekeeping tasks) is packaged as a set of relational database (RDB) stored procedures (SPs) containing embedded SQL statements.
  • RDB relational database
  • SPs stored procedures
  • Each stored procedure (SP) is precompiled and runs on a relational database (RDB) server. Consequently, each Library Server (LS) process is a relational database (RDB) server process.
  • Stored procedures (SPs) can be executed through the library server's SQL interface.
  • the library server can be remotely accessed through a relational database (RDB) client.
  • the Resource Managers may support different/multiple access protocols.
  • the resource manager (RM) supports the HTTP protocol.
  • the basic information entities managed by the library server are "items.” As used herein, the "items" can be categorized in two types: simple items and resource items. Resource items can have content associated with them that is stored in one or more resource managers . Resource items point to their content via resource URL-RELATED DATA.
  • the library server (LS) and resource manager (RM) are separate processes, often running on different machines.
  • clients first contact the library server (LS) to create/update an index for an object, and to determine where the object is to be stored/replaced.
  • the client then sends a request to the resource manager (RM) to store/replace the object.
  • the invention provides a method for automatically starting a document on a workflow process, comprising: creating a workflow for an item; creating a priority for the item; specifying an automatic workflow for an item type; and a library server retrieving a process and priority for the item type.
  • an automated workflow system and process for automatically and dynamically starting and maintaining the progress of an item such as a document or folder on a workflow process.
  • Attaching an item or document to an automated workflow process preferably enhances the convenience of a content management system and streamlines the process of handling documents and other items.
  • a personnel employee creates a document "expense account” to reimburse expenses to an employee.
  • the "expense account” document must wait until all receipts have been received before being reviewed by the appropriate manager. Once the receipts have been received, the document is reviewed to verify that all expenses are within company guidelines. If all the expenses are within guidelines, the document is routed to the appropriate manager for authorization and on to the appropriate employee for reimbursement. If the expenses are not within guidelines, the document is routed back to the employee for correction.
  • workflow process is now automated.
  • the advantage of automating workflow process is the prevention of end user errors and uniform treatment of items within the process.
  • the workflow process is in accordance with a preferred embodiment a series of steps where a user can retrieve and make decisions about the document.
  • ItemType when creating an item type, ItemType, a system administrator specifies for that ItemType initial workflow process and priorities.
  • a drop-down field is preferably provided in which the available process names are displayed.
  • a second field is preferably provided which contains the priority for the work. The administrator may select one of each for the new document, item, or folder. This process and priority information is preferably stored as part of the ItemType definition in the library server.
  • the library server checks in accordance with a preferred embodiment the definition of the ItemType. If auto-workflow is specified, a work package is preferably created on the first node in the specified process. The priority of the item is also preferably set as previously defined by the administrator. A workflow process and priority are preferably assigned to a selected folder.
  • the present invention allows, in accordance with a preferred embodiment, the administrator to define the process according to predefined business rules and procedures. Documents, items, and folders now progress through the prescribed routing, allowing uniform treatment of all documents, items and folders, preventing user error. This is especially useful for businesses or other entities that handle a large volume of documents, such as insurance companies .
  • the library server calls a "start process.”
  • this work node exit can be called.
  • the number of work packages associated with each work node are counted.
  • an overlaod exit is called if the overload limit is exceeded.
  • the work package is removed from the work flow.
  • an event record is written when overload limit reached.
  • an event record is requested.
  • an event record indicating "start" is written.
  • a work node is identified as a collection point.
  • the content of the folder is compared with a list of required item types.
  • a folder with a required item type present is advanced to a next work node.
  • a folder without a required item type present is held at the collection point until the required item type is placed in the folder.
  • an item that is not a folder is advanced to the next, work node.
  • a "route” function is called.
  • a leaving work node exit function is called.
  • the present invention may be implemented as a computer program comprising program code means adapted to perform the steps of the invention.
  • a computer program product having instruction codes for automatically starting a document on a workflow process, comprising: a first set of instruction codes for creating a workflow for an item; a second set of instruction codes for creating a priority for the item; a third set of instruction codes for specifying an automatic workflow for an item type; and a fourth set of instruction codes for retrieving a process and priority for the item type.
  • a system for automatically starting a document on a workflow process comprising: means for creating a workflow for an item; means for creating a priority for the item; means for specifying an automatic workflow for an item type; and means for retrieving a process and priority for the item type.
  • FIG. 1 is a schematic illustration of an exemplary operating environment in which an automated workflow routing system of a preferred embodiment of the present invention can be used;
  • FIG. 2 is a diagram illustrating an exemplary workflow process for routing documents using the system of FIG. 1;
  • FIG. 3 comprises FIGS. 3 , 3B, and 3C, and represents a process flow chart illustrating an exemplary method of operation of the automated workflow system of FIG. 1.
  • ACL access control list: A set of data that informs a computer's operating system which permissions, or access rights, that each user or group has to a specific system object, such as a directory or file. Each object has a unique security attribute that identifies which users have access to it, and the ACL is a list of each object and user access privileges such as read, write or execute.
  • Attribute A property or characteristic, and more particularly, a field in a database.
  • Item The basic information entities managed by the Library Server. "Items" as used herein come in two types, simple items and resource items. An item can be, for example, any folder or document.
  • Metadata Data about data. Metadata is definitional data that provides documentation of or information about other data managed within an environment or by an application. Metadata may document data about data elements or attributes such as name, size, or data type. It may also log data about data structures including length, fields, and columns. Other data included in Metadata encompass the association, storage location, and ownership of data. Metadata may additionally include descriptive information about the context, quality and condition, and/or characteristics of data. SQL: Structured Query Language, a standardized query language for requesting information from a database.
  • FIG. 1 illustrates an exemplary content management system 100 comprising an automated workflow system 10 installed in the library server 15.
  • content management system 100 comprises resource manager 20 and application program interface 25.
  • the automated workflow system 10 includes a software programming code or computer program product that is typically embedded within, or installed on a computer.
  • a client computer 30 including a client application 35 is coupled to content management system 100 via the application program interface (API) 25.
  • API application program interface
  • Library server 15 is coupled to resource manager 20 and contains user and system metadata concerning the primary content (data or objects) that are stored in resource manager 20.
  • data can be stored in resource manager 20, for example, business information, applications, text, audio, video and streaming data, to name a few.
  • the client application 35 begins a transaction and returns confirmation to the end user.
  • the client application 35 establishes a connection to the library server 15, and sends requests to the library server 15 to create a catalog entry (as an index entry) for a content management object.
  • the client application 35 receives information back from the library server 15 regarding the storage location for the object.
  • the client application 35 then sends a request to the resource manager 20 to store the object, and receives a response therefrom with the object metadata.
  • This metadata includes, by way of example, the object name, size, and creation timestamp.
  • the client application 35 sends this metadata to the library server 15.
  • the data model of the content management system 100 is exploited to implement automated workflow system 10.
  • the data model comprises four major elements: process, work node, work package, and work list.
  • the first element, process comprises a root component row and a child component row. These component rows define the workflow route.
  • the root component uses a system-defined attribute for Process ID. This Process ID maps to a name and description in the keyword table.
  • the child component includes the following attributes: From Work Node, To Work Node, and Menu entry.
  • the From Work Node is null for the "start” node.
  • the To Work Node is null for the "end” node.
  • the Menu entry is the ID in the keyword table and is used for routing between "From" and "To” .
  • FIG. 2 An example of a workflow route is shown in FIG. 2.
  • Workflow commences at "start” 205. All work proceeds to "to do” step 210. At the “to do” step 210, work can either proceed directly to "must do now” step 215, or "review later” step 220. Eventually, work at “review later” step 220 must also be dealt with at “must do now” step 215. Workflow for this process is complete at "end” step 225.
  • the following Table 1 exemplifies the child component attributes for the workflow.
  • the first row in Table 1 represents the first step in the workflow of FIG. 2.
  • the "From” column in Table 1 is empty.
  • the "To” column represents the workflow destination for the first step.
  • work proceeds to "to do” 210, as shown in the first row of Table 1, "To” column.
  • the menu representation for this step is empty, shown in the second row of Table 1, "Menu" column.
  • Table 1 Child component attributes for the workflow of FIG. 2.
  • the second and third rows of Table 1 represent the workflow branch at "to do” 210. Work may proceed either to "Review Later” 220 as shown in the third row of Table 1, or to "Must do now” 215 as shown in the fourth row of Table 1. In addition, all work proceeds from “must do now” 215 to "end” 225, as represented by the sixth row in Table 1. As shown by the "menu” column of Table 1, the menu possibilities for the workflow process of FIG. 2 are "Do it Later", “Do it Now", and "Done”.
  • the work node comprises an item with a root component containing attributes and a child component to implement work packages .
  • the attributes of the root component of the item include: ID (an entry in the keyword table containing Name and Description) ; Type (Work Basket, Collection Point) ; Notify time (minutes or 0) ; Overload Limit; and
  • Exits to be run on the library server 15 (DLL and function name) . Exits to be run on the library server 15 comprise overload exit, "entering work node” exit, and “leaving work node” exit.
  • the administrator will define the maximum time that work package should be at a given work node.
  • a function is run to identify work packages whose allowed time at a given work node has expired. Any package with allowed time expired is identified with a "notify" flag.
  • a child component will be used to list the ItemTypes and number of each ItemType required.
  • An example of a child component at a collection point is shown in Table 2.
  • a claim folder must have one police report, one estimate, and four photos.
  • a customer inquiry must have either a letter or an e-mail. In both cases, there is no effect on the collection point processing if Items of other types are added to the folder.
  • Table 2 Child components at a collection point.
  • a work package comprises a child component of a work node that associates a document or folder being routed with a work node within a process.
  • This child component contains work specific information such as priority.
  • the attributes of this child component include the following:
  • the resume list comprises a child component with one row per required ItemType.
  • the child component contains the ItemType and the number of that type required. Setting the required number of the ItemType to "0" indicates that "any” type are accepted, allowing continuation of the work package when any item of a required type arrive.
  • the decision point comprises a child component with one row per "rule” with the "to" work node.
  • the work list comprises an item that defines the selection criteria for a list of work.
  • This work list item contains the following attributes:
  • a work list could be defined spanning all workbaskets or a selected subset to show work packages in notify or suspend states. A user authorized to the work list would be able to see the count of waiting work packages. Such a user could then open the work list and make decisions about each work package such as increasing the priority, forcing early resume, forcing exit from a collection point, changing user assignment, etc.
  • the interfaces of the automated workflow system 10 with library server 15 comprise "Start Process”, “End Process”, “Route”, “GetWorkList” , “GetWork”, “Suspend”, “Resume”, and “GetltemRouting” .
  • Interfaces with library server 15 are designed to minimize run-time overhead by caching definitions at the client application 35 rather than performing multiple queries on the library server 15. The client application 35 will pass the table names as required to the library server 15.
  • FIGS 3A, 3B, and 3C illustrate a "Start Process" method 300 of the automated workflow system 10.
  • system 10 checks to see if automated workflow is specified, as described later.
  • the library server follows normal flow of events for creating a document without workflow (step 306) .
  • the ItemID for the item created or selected will be started on the specific process at block 310.
  • the input to the process is ItemID of the item being routed, the ItemID of the process, and priority (retrieved at step 308) .
  • the outputs of the process are the standard stored procedure parameters and the component ID of the work package, if needed.
  • the automated workflow system 10 creates a work package.
  • the work package is a child component of the work node.
  • the row of the child component contains a reference attribute to the item being routed. Suspend and notify flags are set to 0 and the UserID and timestamp in the work package are set.
  • system 10 determines whether an "entering work node” exit is specified. If not, the process proceeds directly to decision block 318 (FIG. 3B) . On the other hand, if an "entering work node exit" is specified, system 10 calls “entering work node” exit. The automated workflow system 10 then proceeds to decision block 318 (FIG. 3B) and checks whether an overload limit has been specified. If so, the automated workflow system 10 counts the number of work packages associated with the present work node at block 320. If the overload limit is exceeded at that node, the automated workflow system 10 calls overload exit at block 324.
  • the automated workflow system 10 then writes an event record indicated that the overload limit has been reached for that work node at block 328. The process then proceeds to figure 3C.
  • the automated workflow system 10 proceeds to decision block 330 and checks whether event records have been requested. If so, the automated workflow system 10 writes a record indicating "start" at block 332. Regardless, the automated workflow system 10 proceeds to decision block 334 (FIG. 3C) and checks whether the work node is a collection point. If so, the automated workflow system 10 proceeds to decision block 336 and checks whether the item being routed is a folder. If so, the automated workflow system 10 compares the content of the folder with the list of required ItemTypes at block 338.
  • the automated workflow system 10 exits.
  • a separate process periodically checks to determine whether all the ItemTypes are present in the folder at decision block 340 and if so the folder is advanced to the next node in the work process at block 342, as would an item that was not a folder at decision block 336. If the work node is not a collection point at decision block 334, the process ends.
  • a system which automates workflow routing within a system such as a content management system.
  • the system administrator specifies initial workflow process and priorities for item types, ItemTypes.
  • ItemTypes When the administrator defines an ItemType, a drop-down field is provided by the present system in which the available process names are displayed. A second drop-down field provided by the present system will contain the priority for the work.
  • the administrator may select one of each for the new document, item, or folder.
  • This process and priority information is stored as part of the ItemType definition in the library server, when an item is created, the library server checks the definition of the ItemType. If auto-workflow is specified, a work package is created by the present system on the first node in the specified process .
  • the priority of the item is also set as previously defined by the administrator.
  • the present system allows the administrator to define the process according to predefined business rules and procedures. Documents, items, .and- folders progress through the proscribed routing, allowing uniform treatment of all documents, items and folders, preventing user error .

Description

SYSTEM AND METHOD FOR AUTOMATICALLY STARTING A DOCUMENT ON A WORKFLOW PROCESS
FIELD OF THE INVENTION
The present invention generally relates to the field of data file management in database management system models . More particularly, the present invention relates to a system and associated method for automatically starting a document on a workflow process .
BACKGROUND OF THE INVENTION
Content management is an infrastructure to manage a wide spectrum of digital information. Large collections of scanned images, facsimiles, electronic office documents, XML and HTML files, computer output, audio, video, multimedia, and virtual reality content can be stored and accessed through the content management system. The content management system integrates content with line of business, customer service, enterprise resource planning, digital asset management, distance learning, Web content management or other applications to accelerate benefits across the enterprise.
The content manager product may be visualized as a triangle. The three vertices of this triangle are the client, a library server and a resource manager. The client is the user interface, and provides the user with the capability of storing, searching for, and marking-up objects such as documents, files, etc. The library server is the equivalent of a card catalog that holds information about the objects, including their location. The resource manager (RM) is the storage location for either the actual object or a pointer to the actual object.
The core library server logic (except for system utilities and housekeeping tasks) is packaged as a set of relational database (RDB) stored procedures (SPs) containing embedded SQL statements. Each stored procedure (SP) is precompiled and runs on a relational database (RDB) server. Consequently, each Library Server (LS) process is a relational database (RDB) server process. Stored procedures (SPs) can be executed through the library server's SQL interface. The library server can be remotely accessed through a relational database (RDB) client.
The Resource Managers (RMs) may support different/multiple access protocols. The resource manager (RM) supports the HTTP protocol. The basic information entities managed by the library server are "items." As used herein, the "items" can be categorized in two types: simple items and resource items. Resource items can have content associated with them that is stored in one or more resource managers . Resource items point to their content via resource URL-RELATED DATA.
The library server (LS) and resource manager (RM) are separate processes, often running on different machines. In operation, clients first contact the library server (LS) to create/update an index for an object, and to determine where the object is to be stored/replaced. The client then sends a request to the resource manager (RM) to store/replace the object.
SUMMARY OF THE INVENTION
According to one aspect, the invention provides a method for automatically starting a document on a workflow process, comprising: creating a workflow for an item; creating a priority for the item; specifying an automatic workflow for an item type; and a library server retrieving a process and priority for the item type.
There is preferably provided an automated workflow system and process for automatically and dynamically starting and maintaining the progress of an item such as a document or folder on a workflow process.
There is preferably provided a system and associated method for automatically starting a document on a workflow process, as specified by the system administrator according to predefined routing rules.
Attaching an item or document to an automated workflow process, in accordance with a preferred embodiment, preferably enhances the convenience of a content management system and streamlines the process of handling documents and other items.
For example, a personnel employee creates a document "expense account" to reimburse expenses to an employee. The "expense account" document must wait until all receipts have been received before being reviewed by the appropriate manager. Once the receipts have been received, the document is reviewed to verify that all expenses are within company guidelines. If all the expenses are within guidelines, the document is routed to the appropriate manager for authorization and on to the appropriate employee for reimbursement. If the expenses are not within guidelines, the document is routed back to the employee for correction.
Prior to the present invention, the process of routing an item was performed manually. The administrator could not automatically specify, the process required for the newly created item. Rather, the desired process for the folder was communicated to each user. Relying on the end user to understand and apply the workflow process rules introduces situations where the wrong process is selected.
Preferably the workflow process is now automated. The advantage of automating workflow process is the prevention of end user errors and uniform treatment of items within the process.
. The workflow process is in accordance with a preferred embodiment a series of steps where a user can retrieve and make decisions about the document.
In accordance with a preferred embodiment, when creating an item type, ItemType, a system administrator specifies for that ItemType initial workflow process and priorities. When the administrator defines an ItemType, a drop-down field is preferably provided in which the available process names are displayed. A second field is preferably provided which contains the priority for the work. The administrator may select one of each for the new document, item, or folder. This process and priority information is preferably stored as part of the ItemType definition in the library server.
When an item is created, the library server checks in accordance with a preferred embodiment the definition of the ItemType. If auto-workflow is specified, a work package is preferably created on the first node in the specified process. The priority of the item is also preferably set as previously defined by the administrator. A workflow process and priority are preferably assigned to a selected folder.
Prior technology allowed the end user to define the target process for any type of document. It was the user's responsibility to understand the business rules and apply them properly. On the other hand, the present invention allows, in accordance with a preferred embodiment, the administrator to define the process according to predefined business rules and procedures. Documents, items, and folders now progress through the prescribed routing, allowing uniform treatment of all documents, items and folders, preventing user error. This is especially useful for businesses or other entities that handle a large volume of documents, such as insurance companies .
Preferably the library server calls a "start process."
Preferably it is possible to create a work package.
Preferably it is possible to specify a work node exit. Preferably this work node exit can be called.
In accordance with a preferred embodiment, it is possible to specify an overload limit for a work node.
In accordance with a preferred embodiment, the number of work packages associated with each work node are counted.
Preferably an overlaod exit is called if the overload limit is exceeded.
Preferably the work package is removed from the work flow.
In accordance with a preferred embodiment, an event record is written when overload limit reached.
In accordance with a preferred embodiment, an event record is requested.
In accordance with a preferred embodiment an event record indicating "start" is written.
In accordance with a preferred embodiment a work node is identified as a collection point.
In accordance with a preferred embodiment it is possible to identify an item at a collection point as a folder.
Preferably the content of the folder is compared with a list of required item types.
In accordance with a preferred embodiment, a folder with a required item type present is advanced to a next work node. In accordance with a preferred embodiment a folder without a required item type present is held at the collection point until the required item type is placed in the folder.
Preferably an item that is not a folder is advanced to the next, work node.
Preferably a "route" function is called.
In accordance with a preferred embodiment, it is possible to verify a user privilege for calling the "route" function.
Preferably a leaving work node exit function is called.
It will be appreciated that the present invention may be implemented as a computer program comprising program code means adapted to perform the steps of the invention.
According to another aspect, there is provided a computer program product having instruction codes for automatically starting a document on a workflow process, comprising: a first set of instruction codes for creating a workflow for an item; a second set of instruction codes for creating a priority for the item; a third set of instruction codes for specifying an automatic workflow for an item type; and a fourth set of instruction codes for retrieving a process and priority for the item type.
According to another aspect, there is provided a system for automatically starting a document on a workflow process, comprising: means for creating a workflow for an item; means for creating a priority for the item; means for specifying an automatic workflow for an item type; and means for retrieving a process and priority for the item type.
BRIEF DESCRIPTION OF THE DRAWINGS
A preferred embodiment of the present invention will now be described, by way of example only, and with reference to the following drawings :
FIG. 1 is a schematic illustration of an exemplary operating environment in which an automated workflow routing system of a preferred embodiment of the present invention can be used; FIG. 2 is a diagram illustrating an exemplary workflow process for routing documents using the system of FIG. 1; and
FIG. 3 comprises FIGS. 3 , 3B, and 3C, and represents a process flow chart illustrating an exemplary method of operation of the automated workflow system of FIG. 1.
Note, reference numerals are reused, where appropriate, to indicate a correspondence between the referenced items .
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
The following definitions and explanations provide background information pertaining to the technical field of the present invention, and are intended to facilitate the understanding of the present invention without limiting its scope:
ACL (access control list): A set of data that informs a computer's operating system which permissions, or access rights, that each user or group has to a specific system object, such as a directory or file. Each object has a unique security attribute that identifies which users have access to it, and the ACL is a list of each object and user access privileges such as read, write or execute.
Attribute: A property or characteristic, and more particularly, a field in a database.
Item: The basic information entities managed by the Library Server. "Items" as used herein come in two types, simple items and resource items. An item can be, for example, any folder or document.
Metadata: Data about data. Metadata is definitional data that provides documentation of or information about other data managed within an environment or by an application. Metadata may document data about data elements or attributes such as name, size, or data type. It may also log data about data structures including length, fields, and columns. Other data included in Metadata encompass the association, storage location, and ownership of data. Metadata may additionally include descriptive information about the context, quality and condition, and/or characteristics of data. SQL: Structured Query Language, a standardized query language for requesting information from a database.
FIG. 1 illustrates an exemplary content management system 100 comprising an automated workflow system 10 installed in the library server 15. In addition, content management system 100 comprises resource manager 20 and application program interface 25. The automated workflow system 10 includes a software programming code or computer program product that is typically embedded within, or installed on a computer.
A client computer 30 including a client application 35 is coupled to content management system 100 via the application program interface (API) 25.
Library server 15 is coupled to resource manager 20 and contains user and system metadata concerning the primary content (data or objects) that are stored in resource manager 20. Many types of data can be stored in resource manager 20, for example, business information, applications, text, audio, video and streaming data, to name a few.
At a high level, the client application 35 begins a transaction and returns confirmation to the end user. Next, the client application 35 establishes a connection to the library server 15, and sends requests to the library server 15 to create a catalog entry (as an index entry) for a content management object. In response, the client application 35 receives information back from the library server 15 regarding the storage location for the object.
The client application 35 then sends a request to the resource manager 20 to store the object, and receives a response therefrom with the object metadata. This metadata includes, by way of example, the object name, size, and creation timestamp. The client application 35 sends this metadata to the library server 15.
The data model of the content management system 100 is exploited to implement automated workflow system 10. The data model comprises four major elements: process, work node, work package, and work list. The first element, process, comprises a root component row and a child component row. These component rows define the workflow route.
The root component uses a system-defined attribute for Process ID. This Process ID maps to a name and description in the keyword table. The child component includes the following attributes: From Work Node, To Work Node, and Menu entry. The From Work Node is null for the "start" node. The To Work Node is null for the "end" node. The Menu entry is the ID in the keyword table and is used for routing between "From" and "To" .
An example of a workflow route is shown in FIG. 2. Workflow commences at "start" 205. All work proceeds to "to do" step 210. At the "to do" step 210, work can either proceed directly to "must do now" step 215, or "review later" step 220. Eventually, work at "review later" step 220 must also be dealt with at "must do now" step 215. Workflow for this process is complete at "end" step 225.
The following Table 1 exemplifies the child component attributes for the workflow. The first row in Table 1 represents the first step in the workflow of FIG. 2. At "start" 205, there is no preceding step in the workflow, so the "From" column in Table 1 is empty. The "To" column represents the workflow destination for the first step. In the case of the example in FIG. 2, work proceeds to "to do" 210, as shown in the first row of Table 1, "To" column. The menu representation for this step is empty, shown in the second row of Table 1, "Menu" column.
Table 1: Child component attributes for the workflow of FIG. 2.
Figure imgf000009_0001
The second and third rows of Table 1 represent the workflow branch at "to do" 210. Work may proceed either to "Review Later" 220 as shown in the third row of Table 1, or to "Must do now" 215 as shown in the fourth row of Table 1. In addition, all work proceeds from "must do now" 215 to "end" 225, as represented by the sixth row in Table 1. As shown by the "menu" column of Table 1, the menu possibilities for the workflow process of FIG. 2 are "Do it Later", "Do it Now", and "Done".
The work node comprises an item with a root component containing attributes and a child component to implement work packages . The attributes of the root component of the item include: ID (an entry in the keyword table containing Name and Description) ; Type (Work Basket, Collection Point) ; Notify time (minutes or 0) ; Overload Limit; and
Exits to be run on the library server 15 (DLL and function name) . Exits to be run on the library server 15 comprise overload exit, "entering work node" exit, and "leaving work node" exit.
The administrator will define the maximum time that work package should be at a given work node. A function is run to identify work packages whose allowed time at a given work node has expired. Any package with allowed time expired is identified with a "notify" flag.
If the work node is a collection point, a child component will be used to list the ItemTypes and number of each ItemType required. An example of a child component at a collection point is shown in Table 2. In this example, a claim folder must have one police report, one estimate, and four photos. A customer inquiry must have either a letter or an e-mail. In both cases, there is no effect on the collection point processing if Items of other types are added to the folder.
Table 2: Child components at a collection point.
Figure imgf000010_0001
A work package comprises a child component of a work node that associates a document or folder being routed with a work node within a process. This child component contains work specific information such as priority. The attributes of this child component include the following:
Priority;
Reference attribute to the item being routed;
ItemID of the process;
UserlD of the user that last moved the work package;
Date/time when the package was last moved; Suspend state (0/1) ; Notify state (0/1) ; Notify time; and Resume time.
Reference attributes are used to enable query and ensure referential integrity. The resume list comprises a child component with one row per required ItemType. The child component contains the ItemType and the number of that type required. Setting the required number of the ItemType to "0" indicates that "any" type are accepted, allowing continuation of the work package when any item of a required type arrive. The decision point comprises a child component with one row per "rule" with the "to" work node.
The work list comprises an item that defines the selection criteria for a list of work. This work list item contains the following attributes:
ID (an entry in the keyword table containing name and description) ;
List of work nodes (ItemlDs) ;
Selection order (priority, last work date ascending/descending) ;
Selection filter (suspended 0/1, notify 0/1) ; and
Number to return (0 = all, 1 = "system assigned", > 1 for a limit) .
A work list could be defined spanning all workbaskets or a selected subset to show work packages in notify or suspend states. A user authorized to the work list would be able to see the count of waiting work packages. Such a user could then open the work list and make decisions about each work package such as increasing the priority, forcing early resume, forcing exit from a collection point, changing user assignment, etc.
The interfaces of the automated workflow system 10 with library server 15 comprise "Start Process", "End Process", "Route", "GetWorkList" , "GetWork", "Suspend", "Resume", and "GetltemRouting" . Interfaces with library server 15 are designed to minimize run-time overhead by caching definitions at the client application 35 rather than performing multiple queries on the library server 15. The client application 35 will pass the table names as required to the library server 15.
FIGS 3A, 3B, and 3C illustrate a "Start Process" method 300 of the automated workflow system 10. When a document or folder is created at block 302, system 10 checks to see if automated workflow is specified, as described later.
If the automated workflow is not specified at decision block 304, then the library server follows normal flow of events for creating a document without workflow (step 306) .
On the other hand, if the automated workflow is specified at decision block 304, the ItemID for the item created or selected will be started on the specific process at block 310. The input to the process is ItemID of the item being routed, the ItemID of the process, and priority (retrieved at step 308) . The outputs of the process are the standard stored procedure parameters and the component ID of the work package, if needed.
At block 312, the automated workflow system 10 creates a work package. The work package is a child component of the work node. The row of the child component contains a reference attribute to the item being routed. Suspend and notify flags are set to 0 and the UserID and timestamp in the work package are set.
At decision block 314, system 10 determines whether an "entering work node" exit is specified. If not, the process proceeds directly to decision block 318 (FIG. 3B) . On the other hand, if an "entering work node exit" is specified, system 10 calls "entering work node" exit. The automated workflow system 10 then proceeds to decision block 318 (FIG. 3B) and checks whether an overload limit has been specified. If so, the automated workflow system 10 counts the number of work packages associated with the present work node at block 320. If the overload limit is exceeded at that node, the automated workflow system 10 calls overload exit at block 324.
The automated workflow system 10 then writes an event record indicated that the overload limit has been reached for that work node at block 328. The process then proceeds to figure 3C.
If on the other hand the overload limit is not exceeded, the automated workflow system 10 proceeds to decision block 330 and checks whether event records have been requested. If so, the automated workflow system 10 writes a record indicating "start" at block 332. Regardless, the automated workflow system 10 proceeds to decision block 334 (FIG. 3C) and checks whether the work node is a collection point. If so, the automated workflow system 10 proceeds to decision block 336 and checks whether the item being routed is a folder. If so, the automated workflow system 10 compares the content of the folder with the list of required ItemTypes at block 338.
If the required ItemTypes are not included in the folder at decision block 340, the automated workflow system 10 exits. A separate process periodically checks to determine whether all the ItemTypes are present in the folder at decision block 340 and if so the folder is advanced to the next node in the work process at block 342, as would an item that was not a folder at decision block 336. If the work node is not a collection point at decision block 334, the process ends.
To summarise, there is provided a system which automates workflow routing within a system such as a content management system. The system administrator specifies initial workflow process and priorities for item types, ItemTypes. When the administrator defines an ItemType, a drop-down field is provided by the present system in which the available process names are displayed. A second drop-down field provided by the present system will contain the priority for the work. The administrator may select one of each for the new document, item, or folder. This process and priority information is stored as part of the ItemType definition in the library server, when an item is created, the library server checks the definition of the ItemType. If auto-workflow is specified, a work package is created by the present system on the first node in the specified process . The priority of the item is also set as previously defined by the administrator. The present system allows the administrator to define the process according to predefined business rules and procedures. Documents, items, .and- folders progress through the proscribed routing, allowing uniform treatment of all documents, items and folders, preventing user error .

Claims

1. A method for automatically starting a document on a workflow process, comprising:
creating a workflow for an item;
creating a priority for the item;
specifying an automatic workflow for an item type; and
a library server retrieving a process and priority for the item type.
2. The method of claim 1, wherein the library server calls a "start process. "
3. The method of claim 2, further comprising creating a work package.
4. The method of claim 3 , further comprising specifying a work node exit and calling the work node exit.
5. The method of claim 4, further comprising:
specifying an overload limit for a work node;
counting the number of work packages associated with each work node; and calling an overload exit if the overload limit is exceeded.
6. The method of claim 5, further comprising removing the work package from the work flow.
7. The method of claim 4, further comprising requesting an event record.
8. The method of claim 7 , further comprising writing an event record indicating "start".
9. The method of claim 4, further comprising identifying a work node as a collection point.
10. The method of claim 9, further comprising identifying an item at a collection point as a folder.
11. The method of claim 10, further comprising comparing the content of the folder with a list of required item types.
12. The method of claim 11, wherein a folder with a required item type present is advanced to a next work node and wherein a folder without a required item type present is held at the collection point until the required item type is placed in the folder.
13. The method of claim 12, wherein an item that is not a folder is advanced to the next work node.
14. A computer program comprising program code means adapted to perform the method of any of claims 1 to 13 when said program is run on a computer.
15. A system for automatically starting a document on a workflow process, comprising:
means for creating a workflow for an item;
means for creating a priority for the item;
means for specifying an automatic workflow for an item type; and
means for retrieving a process and priority for the item type.
PCT/GB2004/000790 2003-03-01 2004-02-27 System and method for automatically starting a document on a workflow process WO2004079607A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/378,235 2003-03-01
US10/378,235 US7454742B2 (en) 2003-03-01 2003-03-01 System and method for automatically starting a document on a workflow process

Publications (1)

Publication Number Publication Date
WO2004079607A2 true WO2004079607A2 (en) 2004-09-16

Family

ID=32908204

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2004/000790 WO2004079607A2 (en) 2003-03-01 2004-02-27 System and method for automatically starting a document on a workflow process

Country Status (3)

Country Link
US (1) US7454742B2 (en)
CN (1) CN1698057A (en)
WO (1) WO2004079607A2 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7415484B1 (en) * 2003-05-09 2008-08-19 Vignette Corporation Method and system for modeling of system content for businesses
US20060069596A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Workflow hosting computing system using a collaborative application
US20060069605A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Workflow association in a collaborative application
US20070162318A1 (en) * 2005-11-08 2007-07-12 Kaulkin Information Systems, Llc System And Method For Managing Business Processes
US7904894B2 (en) * 2006-03-29 2011-03-08 Microsoft Corporation Automatically optimize performance of package execution
US8667382B2 (en) * 2006-06-28 2014-03-04 International Business Machines Corporation Configurable field definition document
WO2008127581A2 (en) * 2007-04-12 2008-10-23 Thomson Licensing Message mechanism for workflow interfacing
EP2334440B1 (en) * 2008-10-01 2019-03-20 Fluor Technologies Corporation Methods of gas-assisted spray nozzles
US9330376B2 (en) * 2010-06-14 2016-05-03 Ca, Inc. System and method for assigning a business value rating to documents in an enterprise
CN102254246B (en) * 2011-06-17 2014-09-17 中国建设银行股份有限公司 Workflow managing method and system
US20170308836A1 (en) * 2016-04-22 2017-10-26 Accenture Global Solutions Limited Hierarchical visualization for decision review systems

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3269849B2 (en) * 1992-05-29 2002-04-02 株式会社日立製作所 Parallel database processing system and its retrieval method
US6101495A (en) * 1994-11-16 2000-08-08 Hitachi, Ltd. Method of executing partition operations in a parallel database system
JP3023441B2 (en) * 1993-11-16 2000-03-21 株式会社日立製作所 Database division management method and parallel database system
US5692174A (en) * 1995-10-05 1997-11-25 International Business Machines Corporation Query parallelism in a shared data DBMS system
US6266660B1 (en) * 1998-07-31 2001-07-24 Unisys Corporation Secondary index search
US6493731B1 (en) * 1999-01-27 2002-12-10 Xerox Corporation Document management system for recording and viewing the history of document use
US6393415B1 (en) * 1999-03-31 2002-05-21 Verizon Laboratories Inc. Adaptive partitioning techniques in performing query requests and request routing
US6584466B1 (en) * 1999-04-07 2003-06-24 Critical Path, Inc. Internet document management system and methods
US7051036B2 (en) * 2001-12-03 2006-05-23 Kraft Foods Holdings, Inc. Computer-implemented system and method for project development
US7171664B2 (en) * 2002-12-16 2007-01-30 International Business Machines Corporation Content management system and method of employing extensible workflow entities with user-defined attributes in an object-oriented framework

Also Published As

Publication number Publication date
CN1698057A (en) 2005-11-16
US20040172585A1 (en) 2004-09-02
US7454742B2 (en) 2008-11-18

Similar Documents

Publication Publication Date Title
KR100781730B1 (en) System and method for electronically managing composite documents
US6606740B1 (en) Development framework for case and workflow systems
US6526438B1 (en) Method for distributing information to subscribers over a network
US20040122849A1 (en) Assignment of documents to a user domain
US6947959B1 (en) Digital media asset management system and process
US7831567B2 (en) System, method, and software for managing information retention using uniform retention rules
US7158962B2 (en) System and method for automatically linking items with multiple attributes to multiple levels of folders within a content management system
US7668864B2 (en) Digital library system with customizable workflow
US20020083090A1 (en) Document management system
US20060004686A1 (en) Real-time reporting, such as real-time reporting of extrinsic attribute values
US20070283288A1 (en) Document management system having bookmarking functionality
US20090049078A1 (en) Autofoldering process in content management
US7966603B2 (en) Systems and methods for context-based content management
US7533157B2 (en) Method for delegation of administrative operations in user enrollment tasks
JP2006528800A (en) Self-describing business object
US7454742B2 (en) System and method for automatically starting a document on a workflow process
CN111914282B (en) File management analysis method and system
KR20050030848A (en) Method for maintaining information about multiple instances of an activity
US8145647B2 (en) System, method and computer program product for electronically responding to requests for product related data
JP2002538553A (en) Digital media asset management systems and processes
US20050246387A1 (en) Method and apparatus for managing and manipulating digital files at the file component level
US20070136325A1 (en) Database schema for content managed data
US8819048B1 (en) Virtual repository management to provide retention management services
JP2003256592A (en) Tracking system and method for part
US20050027549A1 (en) Multi-layer architecture for property management

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

WWE Wipo information: entry into national phase

Ref document number: 20048001634

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase