US20100145752A1 - Adaptable workflow and communications system - Google Patents

Adaptable workflow and communications system Download PDF

Info

Publication number
US20100145752A1
US20100145752A1 US12/463,214 US46321409A US2010145752A1 US 20100145752 A1 US20100145752 A1 US 20100145752A1 US 46321409 A US46321409 A US 46321409A US 2010145752 A1 US2010145752 A1 US 2010145752A1
Authority
US
United States
Prior art keywords
type
data
core
canceled
tasks
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US12/463,214
Inventor
James E. Davis
Balasubramaniam Ganesh
Kenneth L. Holmes
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
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
Priority claimed from US10/844,006 external-priority patent/US20040230466A1/en
Application filed by Individual filed Critical Individual
Priority to US12/463,214 priority Critical patent/US20100145752A1/en
Publication of US20100145752A1 publication Critical patent/US20100145752A1/en
Priority to US15/179,821 priority patent/US11537958B2/en
Abandoned legal-status Critical Current

Links

Images

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/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • G06Q10/063114Status monitoring or status determination for a person or group
    • 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
    • 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/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis

Definitions

  • the invention relates to business process tracking and automation, and more specifically to a system that enables rapid adaptation to changing business processes by tracking all related activities and communications.
  • a system provides facilities to enable on-demand execution of automation functions.
  • Business communications can be systematically recorded in a common format regardless of whether the original format is email, instant messaging, workflow application updates, voice conference, or other technology formats.
  • the system framework enables interaction with other workflow applications including customer relationship management (CRM), enterprise resource planning (ERP), and information technology (IT) ticketing systems.
  • CRM customer relationship management
  • ERP enterprise resource planning
  • IT information technology
  • FIG. 1 is a high level diagram illustrating a manner in which control data drives a request interface and consequent fulfillment tasks that are spawned, according to certain embodiments;
  • FIG. 2 is a simple high level conceptual diagram illustrating key object classifications in a Core Object model
  • FIG. 3 illustrates sample attributes of the Core-Ticket object and the Message object, according to certain embodiments
  • FIG. 4 is a schematic illustration of the Messaging architecture that provides an integrated messaging framework for uniform messaging capabilities, according to certain embodiments
  • FIG. 5 illustrates the manner in which the Relationship object functions, according to certain embodiments
  • FIG. 6 illustrates a Core-Group table and the objects that the Core-Group table relates, according to certain embodiments
  • FIG. 7 illustrates a Core-Other table 710 and the objects that the Core-Other table relates, according to certain embodiments
  • FIG. 8 illustrates a Core-Assets table and the objects that the Core-Assets table relates, according to certain embodiments
  • FIG. 9 illustrates a Core-Documents table and the objects that the Core-documents table relates, according to certain embodiments.
  • FIG. 10 illustrates a Core-People table and the objects that the Core-People table relates, according to certain embodiments
  • FIG. 11 shows the relationship between Core objects, according to certain embodiments.
  • FIG. 12 illustrates a composite view if different core objects that are related by relationship tables, according to certain embodiments
  • FIG. 13 shows the worker user interface that presents the normalized task and communications data, according to certain embodiments
  • FIG. 14 shows the detailed task interface that presents all of the attributes, messages and relationships associated with a single task, according to certain embodiments
  • FIG. 15 is a schematic that illustrates the use of integrating tools and other terminal emulators, according to certain embodiments
  • a data driven workflow solution that normalizes business communications by systematically recording related business communications from disparate communications channels in a common format such that the related business communications are automatically integrated into the associated business processes and which flow solution is flexible for capturing additional data elements or to adapt to changing tasks associated with the business processes is described.
  • the common object model include key objects such as core objects that provide relations ships between other core objects and/or a standard sets of objects, relationship objects for defining the relationships between objects, and message objects for providing unified messaging.
  • key objects such as core objects that provide relations ships between other core objects and/or a standard sets of objects, relationship objects for defining the relationships between objects, and message objects for providing unified messaging.
  • Such a common object model not only provides a unified view of all related components within the model, but also provides a data driven work flow solution for the given business process and automation.
  • a system is used for establishing a common data model to track and manage all forms of service requests, tasks, data objects and related business communications.
  • the system is designed to enable data updates to drive the following:
  • All system communications are normalized to a common structure that includes two high-level objects, a core object, and a message object.
  • core objects There are different types of core objects.
  • the different types of core objects include:
  • core objects are merely illustrative.
  • the different types of core objects depend on the particular business needs of a project or company and thus may vary from implementation to implementation.
  • the present invention is not limited to any particular type of core objects.
  • the different core objects are described in greater detail herein with reference to FIG. 2 , FIG. 6 , FIG. 7 , FIG. 8 , FIG. 9 and FIG. 10 .
  • Core objects provide a framework for relationships between a standard set of objects. Core objects can also provide a framework for relationships between other core objects.
  • the standard set of objects can include objects such as a Request object, Project object, Task object, and Approvals object.
  • the standard set of objects is described in greater detail with reference to FIG. 2 .
  • the above standard set of objects is merely illustrative. The standard set of objects depends on the particular business needs of a project or company, and thus may vary from implementation to implementation. The present invention is not limited to any particular standard set of objects.
  • relationship object Another key component for maintaining a stable data model is the mechanism for establishing relationships between objects. Such a mechanism is referred to herein as a relationship object.
  • the relationship object manages data-driven control over certain types of object relationships without the need for modifying existing data structures. Relationships and relationship objects are described in greater detail herein with reference to FIG. 3 , FIG. 5 , FIG. 11 , FIG. 12 , and FIG. 14 .
  • Yet another key system component is the mechanism that provides unified messaging. Such a mechanism is referred to herein as a message object.
  • the foundation for the unified messaging component is the standard set of objects that represent the common denominator of any form of communications.
  • Message objects are tied to a core object and can be instantiated by any combination of communication channels including email, instant messages, voice mail, or work flow application entries. Unified messaging and message objects are described in greater detail herein with reference to FIG. 2 , FIG. 4 , FIG. 13 and FIG. 14 .
  • the system's unique capabilities stem from its common object model for managing communications and from its data-driven approach to managing business process tracking and automation.
  • the system provides the basis for a common automation platform and unified user interface that can significantly increase user productivity and quality of collected business information.
  • Administration interfaces allow authorized users to modify the control data in such a system. Such an approach allows rapid adaptation to changing business processes without the need for additional programming.
  • the system is designed to maintain common intuitive interfaces for users making requests or for working the ensuing tasks.
  • the user interfaces of the system can be web-based, i.e., HTML-based user interfaces.
  • the user interfaces of the system are based on four primary user roles:
  • the worker interface is designed around the normalized project, request, task, message, and relationship objects.
  • the worker interface leverages the common object structures in order to provide the user with a unified display.
  • Such a unified display enables a single interface for communications and invocation of automation facilities for any type of task
  • the system administrator interface enables the creation of business rules using a form-based wizard.
  • Such business rules implement event-based data validation, system notification and automation.
  • the process administrator interface enables control data to be modified for controlling the types of requests that will be presented, the data elements that are required for submitting a particular type of request, and what tasks will be generated to fulfill that request.
  • the departmental administrator interface will allow control data to be modified that determines what data elements are required for specific types of tasks, what individuals are members of which workgroups, and which users have authority to approve requests for a given department.
  • FIG. 1 shows by way of example, the manner in which control data drives the request interface and the fulfillment tasks that are consequently spawned.
  • the example demonstrates the manner in which dynamic data drives the workflow system.
  • the requester is presented with a list of choices 104 generated from a Request object 102 .
  • the system checks the data elements required for the selected service in the Required Request Attributes object 106 .
  • a page 108 is dynamically generated from this data to solicit the required data from the user.
  • the data values are captured in the Instantiated Request Attributes object 110 .
  • Task attributes are then collected using a similar technique thus allowing a greater level of customization to take place by using control data and dynamically created application pages, with no need for additional programming or changing the underlying data structures.
  • FIG. 2 illustrates key object classifications in a Core Object model, according to certain embodiments.
  • Objects are used for logical description of an entity such as a Ticket.
  • FIG. 2 shows a core object such as Core-Ticket Object 210 that provides for relationship between other objects such as Request table 202 , Project table 204 , Task table 206 and Approvals table 208 .
  • An object will correspond to a table in a relational database, hence the terms Object and Tables are used interchangeably.
  • Other examples of objects are Human Resource Application tables, Peoplesoft Application table, SAP Inventory Manager table, etc.
  • Each object is identified by an object ID.
  • the Core-Ticket table 210 is identified by a core-ticket ID
  • the Request table 202 is identified by a Request ID
  • the Project table 204 is identified by a project ID, etc.
  • each table (object) includes a plurality of attributes. Attributes of the Project, Request, Task and Approvals Tables (objects) may be change as needed.
  • the tables contain attributes corresponding to the Core Ticket table. There is a one-to-one relationship between each attribute in a given table to a corresponding attribute in the Core table.
  • the message table 212 is an object that represents a distinct contribution to any type of a record in one or more tables related to the Core Ticket table such as the Project, Request, Approval or Task tables. There is a one-to-many relationship between a given core object and message object. For example, in FIG. 2 , the given Core-ticket table can have many messages associated with it.
  • the Messages table contains a list of all the messages that are generated in the application.
  • the sources for Messages are Email, Instant Message clients, Fax and Voice.
  • a Relationship object exists for every Core Object to enable a typed, many-to-many relationship with any other Core Object.
  • the Relationship object is covered in greater detail herein with reference to FIG. 3 , FIG. 5 , FIG. 11 , FIG. 12 , and FIG. 14 .
  • FIG. 3 illustrates sample attributes of the Core-Ticket object and the Message object, according to certain embodiments.
  • Core ticket table 302 includes attributes such as attributes 306 .
  • Message table 304 includes attributes such as attributes 308 .
  • Message table 304 is related to Core-ticket table 302 because the core-ticket ID 310 appears in both Core ticket table 302 and Message table 304 .
  • Such core attributes are consistent across every instantiation of the related objects and Message object, regardless of whether the objects are created by the system's request interface, a real-time messaging interface, or an external system API.
  • a mapping table is used to map the external system's data structures to the system's thread (records) and message object format.
  • FIG. 4 is a schematic illustration of the Messaging architecture that provides an integrated messaging framework for uniform messaging capabilities, according to certain embodiments.
  • incoming messages 402 are system or manually generated information that is sent or updated directly into the system.
  • Messages 402 can be from any message type such as message types 404 a - d .
  • the incoming messages 402 are used for an input or update flow process 406 .
  • the incoming messages 402 are then sent through a pre-processing flow 408 (i.e., converted to an appropriate format). Examples of pre-processing include mail processing parsing 409 a , socket connections 409 b , 409 d , and voice processing 409 c .
  • the inbound messages 402 are stored in inbound message table 410 .
  • a flow process 412 for applying business rules 414 is applied to the inbound messages 402 stored in message table 410 .
  • Sample results from applying business rules 414 to the inbound messages 402 are updates 416 to existing requests/projects/tasks, creations 418 of new requests/projects/tasks, storage 420 of the messages in the relevant message tables associated with the given core object. Further, notifications 422 a -care sent based on subscriptions.
  • the business rules are designed to automatically generate a new Task from the email from the user.
  • a user sends a detailed description in the body of the email regarding a problem that has already been logged and tracked in the system.
  • the email body is parsed and stored in the Messages table with a reference to the problem identified by a Task ID.
  • a topic can be a Project, Request or Task. Subscription to a topic indicates to the system that it must inform the user of any new messages that have been posted to that particular topic. Generally, all the messages that are posted to a particular topic (Project, Request or Task) will be displayed in the Messages window of the system Console. A user can reply to the messages via the console. The reply will be treated as an inbound message to the system.
  • the following table illustrates sample attributes of a ticket-core object.
  • the core-ticket object refers to a table, in the relational database, called “Core Ticket” with the following attributes:
  • FIG. 5 illustrates the manner in which the Relationship object functions, according to certain embodiments.
  • FIG. 5 shows the relationship between a Project and its associated Tasks.
  • the Project records are stored in a Project Table and the Tasks in a Task Table.
  • the Core-Ticket Table is used to relate the Project and its corresponding Tasks by creating an entry in the Core-Ticket Table for each Task record along with its Project ID's.
  • the relationship must be implemented by storing the unique identifiers of the entries in the tables to be related, into a common table. Since the Project consists of 3 Tasks, there are 3 records in the Core-Ticket Table with the same Project ID (PR 0016 ).
  • the objects that are to be related are project table 502 and task table 506 .
  • the common table is core-ticket table 504 .
  • project id 508 “PR 0016 ” in project table 502 is related to the associated tasks 510 shown in the task table 506 by entries in the core-ticket table 504 .
  • the task ID column 514 is populated with task IDs TK 001 , TK 0010 , TK 0020 that correspond to project ID PR 0016 as shown in project ID column 516 in core-ticket table 504 .
  • FIG. 6 illustrates a Core-Group table 610 and the objects that the Core-Group table relates, according to certain embodiments.
  • Core-Group table 610 contains relationship information between Human Resources System tables 602 , LDAP based Directory system tables 604 , Users table 606 and Groups table 608 .
  • Each of the objects (tables) has at least one record in the Core-Groups Table.
  • Attributes of the Human Resources System tables 602 , LDAP based Directory system tables 604 , Users table 606 and Groups table 608 can be defined depending on the needs of the business. At a minimum, such tables (objects) contain attributes corresponding to the Core-Groups table 610 .
  • Each table is identified by a unique system generated id.
  • FIG. 7 illustrates a Core-Other table 710 and the objects that the Core-Other table relates, according to certain embodiments.
  • Core-Other table 710 contains relationship information between SLA Agreements table 702 , Contracts table 704 , tasks table 706 , and maintenance agreements table 708 .
  • Each object has at least one record in the Core-Other Table. Attributes of the SLA Agreement table, Contracts table, Task and Maintenance Agreements will be defined as needed.
  • the objects contain attributes corresponding to the Core-Other table. Each table is identified by a unique system generated id. Relationships between the SLA Agreements, Contracts, Tasks and Maintenance agreements objects are provided by the Core-Other Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5 .
  • FIG. 8 illustrates a Core-Assets table 810 and the objects that the Core-Assets table relates, according to certain embodiments.
  • Core-Assets table 810 contains relationship information between main asset table 802 , Purchasing System asset table 804 , Asset Scanning Systems table 806 , and SAP/PeopleSoft/Oracle Financial Applications/or other systems tables that maintain Inventory information 808 .
  • the Relationships are maintained by ‘Main asset ID’, ‘Purchasing System ID’, ‘Scan ID’ and ‘Asset ID’.
  • Each object has at least one record in the Core-Assets Table.
  • Attributes of the Main assets table, Purchasing System table, Asset Scanning Systems table, and SAP/PeopleSoft/Oracle Financial Applications/or other systems tables can defined based on the business needs at hand.
  • the tables contain attributes corresponding to those in the Core-Assets table. Each table is identified by a unique system generated id. Relationships between the main assets table, Purchasing System table, Asset Scanning Systems table, SAP/PeopleSoft/Oracle Financial Applications/or other systems tables are provided by the Core Assets Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5 .
  • FIG. 9 illustrates a Core-Documents table 910 and the objects that the Core-documents table relates, according to certain embodiments.
  • Core-documents table 910 contains relationship information between Files table 902 , Images table 904 and other Documents objects 906 , 908 such as faxes, manuals, etc. Relationship is maintained by ‘File ID’, ‘Image ID’, etc. Each object has at least one record in the Core-Documents Table. Attributes of the Files and Images Table can be defined based on the business needs at hand. At a minimum, the tables contain attributes corresponding to those in the Core Documents table. Each table is identified by a unique system generated id. Relationships between the Files table, Images table, etc are provided by the Core-Documents Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5 .
  • FIG. 10 illustrates a Core-People table 1010 and the objects that the Core-People table relates, according to certain embodiments.
  • Core-People table 1010 contains relationship information between Employees table 1002 , Customers table 1004 , Vendors table 1006 and Skills table 1008 . Relationship is maintained by ‘Employee ID’, ‘Customer ID’, ‘Vendor ID’ and ‘Skill ID’. Each object has at least one record in the Core-People Table. Attributes of the Employees, Customers, Vendors and Skills Tables can be defined based on the business needs at hand. At a minimum, the tables contain attributes corresponding to those in the Core-People table. Each table is identified by a unique system generated id. Relationships between the Employees, Customers, Vendors and Skills objects are provided by the Core-People Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5
  • FIG. 11 shows the relationship between Core objects, such as Core Ticket table 1102 and the Core Assets table 1104 .
  • Relationship table 1106 contains the Core Ticket ID 1112 and the corresponding Core Assets ID 1114 .
  • Core Ticket ID 1112 is the same as Core Ticket ID 1108 .
  • Core Assets ID 1114 is the same as Core Assets ID 1110 .
  • the relationship table 1106 has a many-to-many relationship with the Core Ticket table 1102 and Core Asset Table 1104 . The same concept can be applied in order to provide relationships between other Core tables (objects).
  • FIG. 12 illustrates a composite view if different core objects that are related by relationship tables.
  • FIG. 12 shows a core-people table 1202 , a core-documents table 1204 , a core-assets table 1206 , a core-other table 1208 , a core-ticket table 1212 , and a core-group table 1216 .
  • Relationship table 1210 contains relationship information that relates core-people table 1202 and core-other table 1208 .
  • relationship table 1214 contains relationship information that relates core-documents table 1204 and core-ticket table 1212 .
  • Relationship table 1218 contains relationship information that relates core-assets table 1206 and core-group table 1216 .
  • MindTerm is a software tool that allows for a SSH Session (Secure Shell Session) via an Applet.
  • a SSH client is also referred to as a work-assist tool. This is similar to running exceed or SecureCRT terminal emulation software.
  • the system provides the ability of invoking MindTerm and other such emulators from within the System such that the associated interactions such as commands that are issued via the Terminal sessions logged in a Messages Table.
  • the MindTerm tool can be launched from the ‘Related window’ of the system Console, as illustrated in FIG. 14 herein.
  • the information that is stored in the Messages Table can then be displayed on the Messages Window as shown in FIG. 14 herein.
  • MindTerm There are various options that can be specified for the interaction with MindTerm such as the ability to specify the option for capturing user issued commands, output from the command and specifying the number of the commands that can be captured.
  • the following steps comprise the process flow capturing information when using integration tools.
  • the operations information from the terminal session can be saved in the 3 ways as described in item 1 of the Preferences Set-up below.
  • FIG. 15 is a schematic that illustrates the use of integrating tools and other terminal emulators, according to certain embodiments.
  • FIG. 15 shows the system console 1502 , a remote machine such as a Unix server 1504 , application servers 1514 , relational database 1516 and message table 1518 .
  • a user invokes a web browser and uses a terminal page 1508 to establish a terminal session on remote Unix server 1504 using SSH connections.
  • the applet has a submenu 1510 for capturing and saving information (both command input an output) associated with the terminal session. Such information can be stored in relational database 1516 .
  • the MindTerm terminal applet page 1508 will be launched from a Java Server page
  • the MindTerm session that is captured will be routed to the Application server 1514 which in turn will route it to the relational database that it is connected to for eventual storage of the data in the Message table 1516
  • An application generation facility is provided for creating all of the files required to produce database, web application server and internet browser based client components.
  • the application generator enables all of the technical components to be created without conventional coding, but rather through a form-driven specification of the attributes that are desired for each particular application.
  • the application generator will provide a facility to deploy applications that can be accessed via the Internet using a Web browser.
  • a software system facility enables the creation of application logic in the form of business rules.
  • the facility provides an interface to create the control data that enables event based data validation, notification, and automation.
  • the business rules can be created using a form which can facilitate the construction of SQL statements (SQL) to retrieve and use data from a relational database such as Oracle, Sybase, Informix, MySQL, MSSQL and DB2.
  • the SQL statements can be created by using higher level constructs that can automatically construct the SQL statements.
  • the SQL statements will then be automatically invoked by the system during run time in order to enforce the business rules.
  • Business Rules are constructed so that they can retrieve data from another system or update data in another database table.
  • Personal Business Rules are business rules that apply only to an individual user of the System.
  • the system will allow an individual to create rules that can only be invoked for the conditions that the user has set for himself or herself.
  • An example of a rule that can be set is as follows:
  • the system notifies (i.e., sends an email, for instance) whenever a Trouble Ticket (or a task) is created in the system for Customer XYZ.
  • an adapter For every external workflow application, communications channel, or data source that will participate in the software system's data model, an adapter will provide the requisite access methods and attribute mapping formulas.
  • the external system's objects are mapped to this software system's common object model, in particular the Core-Ticket and Message objects.
  • External data objects such as ERP and CRM applications (Peoplesoft, Siebel, Oracle, SAP), will be mapped to a Proxy object in this software system.
  • UI components are provided by the system for real time messaging, searching for request and task data, updating object attributes, accessing related data and invoking automation functions.
  • the Message Console UI provides a single interface to view all messages for all threads contained in the system.
  • FIG. 13 shows the primary sub-windows of the Message Console, including:
  • FIG. 14 depicts an example of a detail form.
  • the Fields 1406 , Messages 1408 and Add Message 1410 sub-windows that were described with reference to FIG. 13 above are also made available on the Detail Form for an individual Project/Request/Task/Approval record.
  • the system provides a way to use these UI components for a variety of custom forms based on the type of request or task. While the forms are customized for specific tasks, there is still a consistent set of task attributes that are collected for each type of task that enables all tasks to participate in with common system services.

Abstract

A data driven workflow solution that normalizes business communications by systematically recording related business communications from disparate communications channels in a common format such that the related business communications are automatically integrated into the associated business processes and which flow solution is flexible for capturing additional data elements or to adapt to changing tasks associated with the business processes is disclosed.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS Priority Claim
  • This application claims benefit of Provisional Application Ser. No. 60/469,932, entitled ADAPTABLE WORKFLOW AND COMMUNICATIONS SYSTEM, by inventors, James E. Davis, Balasubramaniam Ganesh, and Kenneth L. Holmes, filed May 12, 2003, the entire contents of which is hereby incorporated by reference as if fully set forth herein, under 35 U.S.C. §119(e).
  • FIELD OF THE INVENTION
  • The invention relates to business process tracking and automation, and more specifically to a system that enables rapid adaptation to changing business processes by tracking all related activities and communications. Such a system provides facilities to enable on-demand execution of automation functions. Business communications can be systematically recorded in a common format regardless of whether the original format is email, instant messaging, workflow application updates, voice conference, or other technology formats. In addition, the system framework enables interaction with other workflow applications including customer relationship management (CRM), enterprise resource planning (ERP), and information technology (IT) ticketing systems.
  • BACKGROUND OF THE INVENTION
  • The acceptance of corporate instant messaging, the increasingly overwhelming volume of email, and the proliferation of enterprise workflow applications are making business communications more fragmented and inefficient. While each workflow and communications vehicle has advantages for specific types of business activities, there is no system that tracks and manages all of the related tasks and communications in a normalized form. Although integrated communications channel management has been addressed in specific niche areas, such as inbound customer communication to a call center, there is currently no holistic solution for managing disparate communications channels for any business process.
  • While there are many systems available to track work activities associated with a wide range of business processes, many of these systems do not capture the true work that is performed since much of the work is performed outside of the system. A great deal of the work activity typically involves communications between process participants, and since the communication is not consistently tracked, the communication needs to be entered into the system after the work has been performed.
  • Additionally, the available workflow systems do not provide the flexibility to keep pace with the rate of business change. Many of these systems require programming and database changes in order to capture additional data elements associated with a business process or to change what tasks are required to fulfill a specific type of service request.
  • Based on the foregoing, there is a need for a business tracking system that provides for systematically recording business communications from disparate communications channels in a common format such that business communications is automatically integrated into the associated business processes and for flexibility to capture additional data elements or to adapt to changing tasks associated with the business processes.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
  • FIG. 1 is a high level diagram illustrating a manner in which control data drives a request interface and consequent fulfillment tasks that are spawned, according to certain embodiments;
  • FIG. 2 is a simple high level conceptual diagram illustrating key object classifications in a Core Object model;
  • FIG. 3 illustrates sample attributes of the Core-Ticket object and the Message object, according to certain embodiments;
  • FIG. 4 is a schematic illustration of the Messaging architecture that provides an integrated messaging framework for uniform messaging capabilities, according to certain embodiments;
  • FIG. 5 illustrates the manner in which the Relationship object functions, according to certain embodiments;
  • FIG. 6 illustrates a Core-Group table and the objects that the Core-Group table relates, according to certain embodiments;
  • FIG. 7 illustrates a Core-Other table 710 and the objects that the Core-Other table relates, according to certain embodiments;
  • FIG. 8 illustrates a Core-Assets table and the objects that the Core-Assets table relates, according to certain embodiments;
  • FIG. 9 illustrates a Core-Documents table and the objects that the Core-documents table relates, according to certain embodiments;
  • FIG. 10 illustrates a Core-People table and the objects that the Core-People table relates, according to certain embodiments;
  • FIG. 11 shows the relationship between Core objects, according to certain embodiments;
  • FIG. 12 illustrates a composite view if different core objects that are related by relationship tables, according to certain embodiments;
  • FIG. 13 shows the worker user interface that presents the normalized task and communications data, according to certain embodiments;
  • FIG. 14 shows the detailed task interface that presents all of the attributes, messages and relationships associated with a single task, according to certain embodiments;
  • FIG. 15 is a schematic that illustrates the use of integrating tools and other terminal emulators, according to certain embodiments
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
  • A data driven workflow solution that normalizes business communications by systematically recording related business communications from disparate communications channels in a common format such that the related business communications are automatically integrated into the associated business processes and which flow solution is flexible for capturing additional data elements or to adapt to changing tasks associated with the business processes is described.
  • In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.
  • Business process tracking and automation is made possible by a common object model and an associated unified user interface. The common object model include key objects such as core objects that provide relations ships between other core objects and/or a standard sets of objects, relationship objects for defining the relationships between objects, and message objects for providing unified messaging. Such a common object model not only provides a unified view of all related components within the model, but also provides a data driven work flow solution for the given business process and automation.
  • According to certain embodiments, a system is used for establishing a common data model to track and manage all forms of service requests, tasks, data objects and related business communications. In order to provide a data driven workflow solution, the system is designed to enable data updates to drive the following:
      • The information that is collected based on the type of service requested;
      • The tasks, and related dependencies, that are created based on the type of service that has been requested;
      • The information that needs to be collected for each specific type of task;
      • The automation functions that should be executed based on specific events;
      • The automation functions that should be available to the task assignee based on the task type;
      • The validation criteria of any data element;
      • The notifications that should be sent based on specific events.
  • All system communications are normalized to a common structure that includes two high-level objects, a core object, and a message object. There are different types of core objects. The different types of core objects include:
  • 1) Core-ticket object;
  • 2) Core-group object;
  • 3) Core-other object;
  • 4) Core-assets object;
  • 5) Core-documents object;
  • 6) Core-people object.
  • The above different types of core objects are merely illustrative. The different types of core objects depend on the particular business needs of a project or company and thus may vary from implementation to implementation. The present invention is not limited to any particular type of core objects. The different core objects are described in greater detail herein with reference to FIG. 2, FIG. 6, FIG. 7, FIG. 8, FIG. 9 and FIG. 10.
  • Core objects provide a framework for relationships between a standard set of objects. Core objects can also provide a framework for relationships between other core objects. The standard set of objects can include objects such as a Request object, Project object, Task object, and Approvals object. The standard set of objects is described in greater detail with reference to FIG. 2. The above standard set of objects is merely illustrative. The standard set of objects depends on the particular business needs of a project or company, and thus may vary from implementation to implementation. The present invention is not limited to any particular standard set of objects.
  • Another key component for maintaining a stable data model is the mechanism for establishing relationships between objects. Such a mechanism is referred to herein as a relationship object. The relationship object manages data-driven control over certain types of object relationships without the need for modifying existing data structures. Relationships and relationship objects are described in greater detail herein with reference to FIG. 3, FIG. 5, FIG. 11, FIG. 12, and FIG. 14.
  • Yet another key system component is the mechanism that provides unified messaging. Such a mechanism is referred to herein as a message object. The foundation for the unified messaging component is the standard set of objects that represent the common denominator of any form of communications. Message objects are tied to a core object and can be instantiated by any combination of communication channels including email, instant messages, voice mail, or work flow application entries. Unified messaging and message objects are described in greater detail herein with reference to FIG. 2, FIG. 4, FIG. 13 and FIG. 14.
  • The system's unique capabilities stem from its common object model for managing communications and from its data-driven approach to managing business process tracking and automation. The system provides the basis for a common automation platform and unified user interface that can significantly increase user productivity and quality of collected business information.
  • Administration interfaces (user interfaces) allow authorized users to modify the control data in such a system. Such an approach allows rapid adaptation to changing business processes without the need for additional programming. The system is designed to maintain common intuitive interfaces for users making requests or for working the ensuing tasks.
  • The user interfaces of the system can be web-based, i.e., HTML-based user interfaces. The user interfaces of the system are based on four primary user roles:
      • Requester interface—The requester interface focuses on a data-driven wizard interaction for maximum efficiency and ease of use.
      • Worker interface—The worker interface is based on providing embedded communications and tools to enable users to perform much of their work within the context of the system. When work is performed within the context of the system, the work is simultaneously documented automatically as the work is being performed, thus obviating the need to manually document the work after the work is performed.
      • Management interface—The management interface is focused on providing access to comprehensive business process metrics.
      • Administrator interfaces—The administrator interfaces include a system administrator interface, a process administration interface, and a departmental administrator interface. Such administrator interfaces enable system, process, and departmental control data to be managed by designated administrative personnel.
  • According to certain embodiments, the worker interface is designed around the normalized project, request, task, message, and relationship objects. The worker interface leverages the common object structures in order to provide the user with a unified display. Such a unified display enables a single interface for communications and invocation of automation facilities for any type of task
  • The system administrator interface enables the creation of business rules using a form-based wizard. Such business rules implement event-based data validation, system notification and automation.
  • The process administrator interface enables control data to be modified for controlling the types of requests that will be presented, the data elements that are required for submitting a particular type of request, and what tasks will be generated to fulfill that request.
  • The departmental administrator interface will allow control data to be modified that determines what data elements are required for specific types of tasks, what individuals are members of which workgroups, and which users have authority to approve requests for a given department.
  • The application framework is illustrated in FIG. 1. FIG. 1 shows by way of example, the manner in which control data drives the request interface and the fulfillment tasks that are consequently spawned. The example demonstrates the manner in which dynamic data drives the workflow system. The requester is presented with a list of choices 104 generated from a Request object 102. Once a specific service is selected from list of choices 104, the system checks the data elements required for the selected service in the Required Request Attributes object 106. A page 108 is dynamically generated from this data to solicit the required data from the user. When the data is provided by the user, the data values are captured in the Instantiated Request Attributes object 110.
  • In addition to instantiating the attribute values for the request, tasks are instantiated in the Instantiated Tasks object 112 based on values specified for the particular type of request in the Required Fulfillment Tasks object 114. Task attributes are then collected using a similar technique thus allowing a greater level of customization to take place by using control data and dynamically created application pages, with no need for additional programming or changing the underlying data structures.
  • FIG. 2 illustrates key object classifications in a Core Object model, according to certain embodiments. Objects are used for logical description of an entity such as a Ticket. FIG. 2 shows a core object such as Core-Ticket Object 210 that provides for relationship between other objects such as Request table 202, Project table 204, Task table 206 and Approvals table 208. An object will correspond to a table in a relational database, hence the terms Object and Tables are used interchangeably. Other examples of objects are Human Resource Application tables, Peoplesoft Application table, SAP Inventory Manager table, etc.
  • Each object is identified by an object ID. For example, the Core-Ticket table 210 is identified by a core-ticket ID, the Request table 202 is identified by a Request ID, the Project table 204 is identified by a project ID, etc. Further, each table (object) includes a plurality of attributes. Attributes of the Project, Request, Task and Approvals Tables (objects) may be change as needed. At a minimum, the tables contain attributes corresponding to the Core Ticket table. There is a one-to-one relationship between each attribute in a given table to a corresponding attribute in the Core table.
  • There can be as many Tasks and Approval record entries in the Core Ticket Table. The message table 212 is an object that represents a distinct contribution to any type of a record in one or more tables related to the Core Ticket table such as the Project, Request, Approval or Task tables. There is a one-to-many relationship between a given core object and message object. For example, in FIG. 2, the given Core-ticket table can have many messages associated with it. The Messages table contains a list of all the messages that are generated in the application. The sources for Messages are Email, Instant Message clients, Fax and Voice.
  • A Relationship object exists for every Core Object to enable a typed, many-to-many relationship with any other Core Object. The Relationship object is covered in greater detail herein with reference to FIG. 3, FIG. 5, FIG. 11, FIG. 12, and FIG. 14.
  • FIG. 3 illustrates sample attributes of the Core-Ticket object and the Message object, according to certain embodiments. Core ticket table 302 includes attributes such as attributes 306. Message table 304 includes attributes such as attributes 308. Message table 304 is related to Core-ticket table 302 because the core-ticket ID 310 appears in both Core ticket table 302 and Message table 304. Such core attributes are consistent across every instantiation of the related objects and Message object, regardless of whether the objects are created by the system's request interface, a real-time messaging interface, or an external system API. For any external system, such as email or an external workflow application, a mapping table is used to map the external system's data structures to the system's thread (records) and message object format.
  • FIG. 4 is a schematic illustration of the Messaging architecture that provides an integrated messaging framework for uniform messaging capabilities, according to certain embodiments. In FIG. 4, incoming messages 402 are system or manually generated information that is sent or updated directly into the system. Messages 402 can be from any message type such as message types 404 a-d. The incoming messages 402 are used for an input or update flow process 406. The incoming messages 402 are then sent through a pre-processing flow 408 (i.e., converted to an appropriate format). Examples of pre-processing include mail processing parsing 409 a, socket connections 409 b, 409 d, and voice processing 409 c. The inbound messages 402 are stored in inbound message table 410. A flow process 412 for applying business rules 414 is applied to the inbound messages 402 stored in message table 410. Sample results from applying business rules 414 to the inbound messages 402 are updates 416 to existing requests/projects/tasks, creations 418 of new requests/projects/tasks, storage 420 of the messages in the relevant message tables associated with the given core object. Further, notifications 422 a-care sent based on subscriptions.
  • The following are examples of message types:
      • 1. An email can be sent to the system by a user in order to create a new Request for obtaining a new piece of equipment. In this example, the text of the Email body will be stored in the Messages Table
      • 2. A user may like to post a question on the system Console related to the Project that he/she is working on.
      • 3. A user may like to capture a conference call with respect to a problem and store the conference call along with the associated Task that was generated in the system to track the problem. The conference call can be saved as a wave file and then attached to the associated task.
      • 4. A user may like to store all the Unix commands that were issued in an SSH client to fix a hardware problem and then store the issued commands along with a Task that was created in the system to track the hardware problem.
  • For purposes of explanation, assume that a user reports a new problem via email and the new problem needs to be tracked in the system. In such a case, the business rules are designed to automatically generate a new Task from the email from the user. In another example, assume that a user sends a detailed description in the body of the email regarding a problem that has already been logged and tracked in the system. In such a case, the email body is parsed and stored in the Messages table with a reference to the problem identified by a Task ID.
  • Further, a user can subscribe to a topic by selecting the appropriate record from the system Console. A topic can be a Project, Request or Task. Subscription to a topic indicates to the system that it must inform the user of any new messages that have been posted to that particular topic. Generally, all the messages that are posted to a particular topic (Project, Request or Task) will be displayed in the Messages window of the system Console. A user can reply to the messages via the console. The reply will be treated as an inbound message to the system.
  • The following table illustrates sample attributes of a ticket-core object. In other words, the core-ticket object refers to a table, in the relational database, called “Core Ticket” with the following attributes:
  • Column Attribute Type Description
    Core Ticket ID Integer
    Display Column String Column Name that
    needs to be
    displayed when the
    details of the Ticket
    is exposed to a user
    such as in a query
    Title String
    Assignee String
    Owner String
    Create Date Date/Time
    Last Update Date/Time
    Project ID Integer
    Request ID Integer
    Task ID Task ID
    Ticket Type String
    Core Status String Describes the current
    condition of the
    Ticket. For example,
    if this were an entry
    for a related Task,
    the Ticket status
    could be ‘In progress’
    Related Status String Describes the current
    condition of the
    related item. For
    example, if this were
    an entry for a related
    Task, the Related
    Status could be
    ‘Need Approval’
    Source String Describes the origin
    of the data - manual
    or system generated
    Assigned Group String
    Priority Integer
  • FIG. 5 illustrates the manner in which the Relationship object functions, according to certain embodiments. For purposes of explanation, assume that FIG. 5 shows the relationship between a Project and its associated Tasks. The Project records are stored in a Project Table and the Tasks in a Task Table. The Core-Ticket Table is used to relate the Project and its corresponding Tasks by creating an entry in the Core-Ticket Table for each Task record along with its Project ID's. The relationship must be implemented by storing the unique identifiers of the entries in the tables to be related, into a common table. Since the Project consists of 3 Tasks, there are 3 records in the Core-Ticket Table with the same Project ID (PR0016). Thus, in FIG. 5, the objects that are to be related are project table 502 and task table 506. The common table is core-ticket table 504. As an example, project id 508 “PR0016” in project table 502 is related to the associated tasks 510 shown in the task table 506 by entries in the core-ticket table 504, Thus, in core-ticket table 504, the task ID column 514 is populated with task IDs TK001, TK0010, TK0020 that correspond to project ID PR0016 as shown in project ID column 516 in core-ticket table 504.
  • By abstracting the relationship information into its own object, there is a level of insulation between the application logic and the underlying data model. Such a method eliminates required changes to the core data model when new objects, or new types of relationships, are introduced. Such an approach to managing relationships is consistent with the other aspects of the system that allow control data to customize the functionality provided by the system's applications.
  • FIG. 6 illustrates a Core-Group table 610 and the objects that the Core-Group table relates, according to certain embodiments. Core-Group table 610 contains relationship information between Human Resources System tables 602, LDAP based Directory system tables 604, Users table 606 and Groups table 608. Each of the objects (tables) has at least one record in the Core-Groups Table. Attributes of the Human Resources System tables 602, LDAP based Directory system tables 604, Users table 606 and Groups table 608 can be defined depending on the needs of the business. At a minimum, such tables (objects) contain attributes corresponding to the Core-Groups table 610. Each table is identified by a unique system generated id. Relationships between the Human Resources System table 602, LDAP based Directory system table 604, Users table 606 and Groups table 608 are provided by the Core Groups Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5.
  • FIG. 7 illustrates a Core-Other table 710 and the objects that the Core-Other table relates, according to certain embodiments. Core-Other table 710 contains relationship information between SLA Agreements table 702, Contracts table 704, tasks table 706, and maintenance agreements table 708. Each object has at least one record in the Core-Other Table. Attributes of the SLA Agreement table, Contracts table, Task and Maintenance Agreements will be defined as needed. At a minimum, the objects contain attributes corresponding to the Core-Other table. Each table is identified by a unique system generated id. Relationships between the SLA Agreements, Contracts, Tasks and Maintenance agreements objects are provided by the Core-Other Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5.
  • FIG. 8 illustrates a Core-Assets table 810 and the objects that the Core-Assets table relates, according to certain embodiments. Core-Assets table 810 contains relationship information between main asset table 802, Purchasing System asset table 804, Asset Scanning Systems table 806, and SAP/PeopleSoft/Oracle Financial Applications/or other systems tables that maintain Inventory information 808. The Relationships are maintained by ‘Main asset ID’, ‘Purchasing System ID’, ‘Scan ID’ and ‘Asset ID’. Each object has at least one record in the Core-Assets Table. Attributes of the Main assets table, Purchasing System table, Asset Scanning Systems table, and SAP/PeopleSoft/Oracle Financial Applications/or other systems tables can defined based on the business needs at hand. At a minimum, the tables contain attributes corresponding to those in the Core-Assets table. Each table is identified by a unique system generated id. Relationships between the main assets table, Purchasing System table, Asset Scanning Systems table, SAP/PeopleSoft/Oracle Financial Applications/or other systems tables are provided by the Core Assets Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5.
  • FIG. 9 illustrates a Core-Documents table 910 and the objects that the Core-documents table relates, according to certain embodiments. Core-documents table 910 contains relationship information between Files table 902, Images table 904 and other Documents objects 906, 908 such as faxes, manuals, etc. Relationship is maintained by ‘File ID’, ‘Image ID’, etc. Each object has at least one record in the Core-Documents Table. Attributes of the Files and Images Table can be defined based on the business needs at hand. At a minimum, the tables contain attributes corresponding to those in the Core Documents table. Each table is identified by a unique system generated id. Relationships between the Files table, Images table, etc are provided by the Core-Documents Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5.
  • FIG. 10 illustrates a Core-People table 1010 and the objects that the Core-People table relates, according to certain embodiments. Core-People table 1010 contains relationship information between Employees table 1002, Customers table 1004, Vendors table 1006 and Skills table 1008. Relationship is maintained by ‘Employee ID’, ‘Customer ID’, ‘Vendor ID’ and ‘Skill ID’. Each object has at least one record in the Core-People Table. Attributes of the Employees, Customers, Vendors and Skills Tables can be defined based on the business needs at hand. At a minimum, the tables contain attributes corresponding to those in the Core-People table. Each table is identified by a unique system generated id. Relationships between the Employees, Customers, Vendors and Skills objects are provided by the Core-People Table in a fashion as previously explained with reference to the Core-ticket example of FIG. 5
  • It may be necessary to relate Core tables so that related information can be presented to the end user. For purposes of explanation, assume that a user may be interested in finding all the ‘Assets’ such as Hardware, Software, etc., that are related to a given Ticket. This can be achieved by providing a relationship between the Core-Ticket Table and the Core Assets table. FIG. 11 shows the relationship between Core objects, such as Core Ticket table 1102 and the Core Assets table 1104. In FIG. 11, such a relationship is shown in the relationship table 1106. Relationship table 1106 contains the Core Ticket ID 1112 and the corresponding Core Assets ID 1114. Core Ticket ID 1112 is the same as Core Ticket ID 1108. Similarly, Core Assets ID 1114 is the same as Core Assets ID 1110. The relationship table 1106 has a many-to-many relationship with the Core Ticket table 1102 and Core Asset Table 1104. The same concept can be applied in order to provide relationships between other Core tables (objects).
  • FIG. 12 illustrates a composite view if different core objects that are related by relationship tables. FIG. 12 shows a core-people table 1202, a core-documents table 1204, a core-assets table 1206, a core-other table 1208, a core-ticket table 1212, and a core-group table 1216. Relationship table 1210 contains relationship information that relates core-people table 1202 and core-other table 1208. Similarly, relationship table 1214 contains relationship information that relates core-documents table 1204 and core-ticket table 1212. Relationship table 1218 contains relationship information that relates core-assets table 1206 and core-group table 1216.
  • Integration of Tools such as MindTerm and other Unix Terminal Emulators
  • MindTerm is a software tool that allows for a SSH Session (Secure Shell Session) via an Applet. A SSH client is also referred to as a work-assist tool. This is similar to running exceed or SecureCRT terminal emulation software. According to certain embodiments, the system provides the ability of invoking MindTerm and other such emulators from within the System such that the associated interactions such as commands that are issued via the Terminal sessions logged in a Messages Table. The MindTerm tool can be launched from the ‘Related window’ of the system Console, as illustrated in FIG. 14 herein.
  • The information that is stored in the Messages Table can then be displayed on the Messages Window as shown in FIG. 14 herein. There are various options that can be specified for the interaction with MindTerm such as the ability to specify the option for capturing user issued commands, output from the command and specifying the number of the commands that can be captured.
  • The following steps comprise the process flow capturing information when using integration tools.
      • 1. A user invokes the system Console.
      • 2. The user selects the tab called ‘Tools’ in the ‘Related Details’ section of the console.
      • 3. The user then selects an option to invoke the Mind Term applet similar to a Unix Terminal window that can be used to connect to other servers via SSH (Secure Shell). Secure shell is a protocol that enables secure Terminal sessions.
      • 4. The system the enables the capture of all the interaction (both the command input and output) that are issued to the server via the Terminal Session and store it in a database.
      • 5. The information in the ‘Messages’ window of the console is then refreshed after the Terminal Session is closed (or destroyed) when the information is saved in the database.
  • For the Mindterm session, the operations information from the terminal session can be saved in the 3 ways as described in item 1 of the Preferences Set-up below.
  • Preferences Set-Up:
      • 1. The User may set an option where he/she might want to:
        • a. Simply capture the last 30 lines, for example <or any number of lines and is configurable via preference settings on the Server> from the session instead of capturing all the commands.
        • b. Alternatively—the user may want to only highlight the commands—similar to ‘Cut and Paste’ to save the specific commands.
        • c. Saving all the commands from the session.
      • 2. The ‘Messages’ window is dockable/undockable—i.e., the user has the capability to expand the Window by undocking it to cover the entire screen.
  • FIG. 15 is a schematic that illustrates the use of integrating tools and other terminal emulators, according to certain embodiments. FIG. 15 shows the system console 1502, a remote machine such as a Unix server 1504, application servers 1514, relational database 1516 and message table 1518. A user invokes a web browser and uses a terminal page 1508 to establish a terminal session on remote Unix server 1504 using SSH connections. The applet has a submenu 1510 for capturing and saving information (both command input an output) associated with the terminal session. Such information can be stored in relational database 1516. The MindTerm terminal applet page 1508 will be launched from a Java Server page The MindTerm session that is captured will be routed to the Application server 1514 which in turn will route it to the relational database that it is connected to for eventual storage of the data in the Message table 1516
  • System Administration Components
  • There are several system administration components in this software system, including key subsystems for application generation, business rule generation, and normalizing external data. These components are detailed in the following sections.
  • Application Generator
  • An application generation facility is provided for creating all of the files required to produce database, web application server and internet browser based client components. The application generator enables all of the technical components to be created without conventional coding, but rather through a form-driven specification of the attributes that are desired for each particular application. The application generator will provide a facility to deploy applications that can be accessed via the Internet using a Web browser.
  • Business Rule Generator
  • A software system facility enables the creation of application logic in the form of business rules. The facility provides an interface to create the control data that enables event based data validation, notification, and automation. The business rules can be created using a form which can facilitate the construction of SQL statements (SQL) to retrieve and use data from a relational database such as Oracle, Sybase, Informix, MySQL, MSSQL and DB2.
  • The SQL statements can be created by using higher level constructs that can automatically construct the SQL statements. The SQL statements will then be automatically invoked by the system during run time in order to enforce the business rules.
  • Business Rules are constructed so that they can retrieve data from another system or update data in another database table.
  • Personal Business Rules
  • Personal Business Rules are business rules that apply only to an individual user of the System. The system will allow an individual to create rules that can only be invoked for the conditions that the user has set for himself or herself. An example of a rule that can be set is as follows:
  • “Notify me (user) whenever a trouble ticket is opened for a customer by the name of XYZ.”
  • If this personal business rule is to be executed, the system notifies (i.e., sends an email, for instance) whenever a Trouble Ticket (or a task) is created in the system for Customer XYZ.
  • Adapters
  • For every external workflow application, communications channel, or data source that will participate in the software system's data model, an adapter will provide the requisite access methods and attribute mapping formulas. For external workflow applications and communications channels, the external system's objects are mapped to this software system's common object model, in particular the Core-Ticket and Message objects. External data objects, such as ERP and CRM applications (Peoplesoft, Siebel, Oracle, SAP), will be mapped to a Proxy object in this software system.
  • Worker Interface Components
  • To address the user interface requirements for the system for users who are responsible for working tasks, UI components are provided by the system for real time messaging, searching for request and task data, updating object attributes, accessing related data and invoking automation functions.
  • Message Console
  • The Message Console UI provides a single interface to view all messages for all threads contained in the system. FIG. 13 shows the primary sub-windows of the Message Console, including:
      • Folders 1302—This area is used to enable the user to navigate the software system. Some of the functions that are made available for the user include searching and submitting request and task objects, system administration settings and report selection. Folders section 1302 includes core threads folder 1302 a, Owning Group folder 1302 b, data folder 1302 c, and system folder 1302 d.
      • Core-Ticket 1304 (Grid)—A grid shows the records (requests, tasks, projects, change requests etc. . . . ) that were returned based on the selected folder.
      • Messages 1308—This sub-window shows the messages 1308 a through 1308 d that are related to either all of the threads contained in the thread grid or only those messages for the selected individual thread. All messages are pushed from the server and received by the user interface in real-time; therefore, no manual or automatic pull/polling mechanism is required to view new messages. The messages are ‘pushed’ to the Web browser by using an applet that maintains a socket connection with the client (the HTML Web browser).
      • Add Message 1310—This sub-window provides an input area 1310 a to contribute a new message for an existing thread in real-time.
      • Fields 1306—This sub-window shows the attributes 1306 a through 1306 i for the selected thread.
    Project/Request/Task/Approval Detail Forms
  • FIG. 14 depicts an example of a detail form. The Fields 1406, Messages 1408 and Add Message 1410 sub-windows that were described with reference to FIG. 13 above are also made available on the Detail Form for an individual Project/Request/Task/Approval record. There is also a Related Details 1412 sub-window that provides the user with access to all related tools, objects and audit logs that are available in this system.
  • The system provides a way to use these UI components for a variety of custom forms based on the type of request or task. While the forms are customized for specific tasks, there is still a consistent set of task attributes that are collected for each type of task that enables all tasks to participate in with common system services.
  • In the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.

Claims (30)

1. A method for managing projects, requests, tasks, approvals and associated communications regardless of source of said projects, said requests, said tasks, said approvals, the method comprising the computer-implemented act of:
automatically building a flexible dynamically changeable business process tracking system for tracking said projects, said requests, said tasks, said approvals and said associated communications from disparate sources based on implementing logical relationships between data associated with said projects, said requests, said tasks, said approvals and said associated communications, wherein the logical relationships are associated with one or more business rules, wherein one or more workflow processes associated with the business process tracking system are automatically generated in response to generation of at least a subset of the data, and wherein the flexible dynamically changeable business process tracking system dynamically adapts to changes in control data.
2. The method of claim 1, wherein said data comprises:
a first plurality of sets of data associated with user defined services;
a second plurality of sets of data that manages relationships between at least a subset of the first plurality of sets of data; and
communications data.
3. The method of claim 2, wherein respective records associated with said first plurality of sets of data and said communications data are instantiated by any combination of communications channels, including at least one of email, instant messaging, voice, and workflow application entries.
4. The method of claim 2, further comprising the act of:
using an automation facility that is associated with said services and said data;
wherein said automation facility develops an application logic that is implemented by using a form-driven administration interface; and
wherein said automation facility automatically creates said one or more business rules based on said application logic.
5. The method of claim 2, further comprising the act of:
using a common user interface that is associated with said data, wherein said common user interface is adapted for presenting a unified view of at least a subset of said projects, said requests, said tasks, said approvals using a GUI window with associated sub-windows.
6. The method of claim 5, wherein said common user interface is HTML web-based.
7. The method of claim 1, further comprising the act of
using a data-driven mechanism for describing and instantiating said projects, said requests, said tasks, said approvals and associated data elements.
8. The method of claim 7, wherein said data-driven mechanism is adapted for one or more of:
collecting a first information based on said requests;
creating said tasks and related dependencies based on said requests;
collecting a second information based on each of said tasks;
driving one or more automation functions based on said tasks;
validating said associated data elements; and
sending notifications based on one or more events.
9. The method of claim 2, wherein said first plurality of sets of data is of any type based on business objectives.
10. The method of claim 9, wherein said any type includes at least one of:
a ticket type;
a group type;
a user-defined type;
an assets type;
a documents type; and
a people type;
11. The method of claim 2, wherein said first plurality of sets of data is associated with a plurality of related data of any type based on business objectives.
12. The method of claim 11, wherein said any type includes at least one of:
a request type;
a project type;
a task type;
an approvals type;
a human resources system type;
an LDAP type;
a users type;
a group type;
an SLA agreements type;
a contracts type;
a maintenance agreement type;
a main asset type;
a purchasing system asset type;
a scanning system type;
an inventory system type;
a files type;
an images type;
a fax type;
a employee type;
a customer type;
a vendor type; and
a skills type.
13. The method of claim 1, further comprising the act of:
using an integration mechanism for integrating input and output from integrating tools, work assist tools and terminal emulators into said data.
14. The method of claim 13, wherein the act of integrating includes:
capturing input commands associated with using said work assist tools and terminal emulators;
capturing output associated with said input commands;
storing said captured input commands and said captured output in associated communications data.
15. The method of claim 1, further comprising the act of:
using a subscription mechanism for allowing end-users to subscribe to at least a subset of said communications data.
16. (canceled)
17. (canceled)
18. (canceled)
19. (canceled)
20. (canceled)
21. (canceled)
22. (canceled)
23. (canceled)
24. (canceled)
25. (canceled)
26. (canceled)
27. (canceled)
28. (canceled)
29. (canceled)
30. (canceled)
US12/463,214 2003-05-12 2009-05-08 Adaptable workflow and communications system Abandoned US20100145752A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/463,214 US20100145752A1 (en) 2004-05-11 2009-05-08 Adaptable workflow and communications system
US15/179,821 US11537958B2 (en) 2003-05-12 2016-06-10 Automated adaptation of business process tracking and communications

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/844,006 US20040230466A1 (en) 2003-05-12 2004-05-11 Adaptable workflow and communications system
US12/463,214 US20100145752A1 (en) 2004-05-11 2009-05-08 Adaptable workflow and communications system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/844,006 Continuation US20040230466A1 (en) 2003-05-12 2004-05-11 Adaptable workflow and communications system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/179,821 Continuation US11537958B2 (en) 2003-05-12 2016-06-10 Automated adaptation of business process tracking and communications

Publications (1)

Publication Number Publication Date
US20100145752A1 true US20100145752A1 (en) 2010-06-10

Family

ID=42232098

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/463,214 Abandoned US20100145752A1 (en) 2003-05-12 2009-05-08 Adaptable workflow and communications system
US15/179,821 Active 2026-03-14 US11537958B2 (en) 2003-05-12 2016-06-10 Automated adaptation of business process tracking and communications

Family Applications After (1)

Application Number Title Priority Date Filing Date
US15/179,821 Active 2026-03-14 US11537958B2 (en) 2003-05-12 2016-06-10 Automated adaptation of business process tracking and communications

Country Status (1)

Country Link
US (2) US20100145752A1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070033571A1 (en) * 2005-08-02 2007-02-08 Sap Ag Dynamic work center
US20070033196A1 (en) * 2005-08-02 2007-02-08 Sap Ag Service directory
US20080109292A1 (en) * 2006-11-03 2008-05-08 Sap Ag Voice-enabled workflow item interface
US20100250322A1 (en) * 2009-03-27 2010-09-30 Michael Roy Norwood Simplified user interface and method for computerized task management systems
US20110145036A1 (en) * 2009-12-14 2011-06-16 Herschmann Jr Richard Beary Change management in route-based projects
WO2014120406A2 (en) * 2013-02-04 2014-08-07 Uni-B Solutions Llc Process management system, method, and computer-readable medium
US20140282188A1 (en) * 2013-03-15 2014-09-18 Moresteam Development Llc Computer graphical user interface, system, and method
US20150242389A1 (en) * 2014-02-27 2015-08-27 Netapp, Inc. Techniques to identify user interface elements associated with model violation events
US10846111B2 (en) * 2018-12-18 2020-11-24 Servicenow, Inc. Customer service management
US11227245B2 (en) 2017-01-06 2022-01-18 Microsoft Technology Licensing, Llc Master view of tasks
US20220108249A1 (en) * 2019-01-12 2022-04-07 Sanjay Chandramohan Maheshwari Method and apparatus for workflow automation

Citations (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5216592A (en) * 1991-04-25 1993-06-01 International Business Machines Corporation System and method for business process automation
US5598524A (en) * 1993-03-03 1997-01-28 Apple Computer, Inc. Method and apparatus for improved manipulation of data between an application program and the files system on a computer-controlled display system
US5754858A (en) * 1996-05-01 1998-05-19 Microsoft Corporation Customizable application project generation process and system
US6049664A (en) * 1997-11-25 2000-04-11 Alphablox Corporation Tier-neutral development mechanism for hypertext based applications
US6272673B1 (en) * 1997-11-25 2001-08-07 Alphablox Corporation Mechanism for automatically establishing connections between executable components of a hypertext-based application
EP1122676A1 (en) * 2000-02-01 2001-08-08 e-Business Exchange Pte. Ltd. Electronic bill creation and presentment system
US20010025372A1 (en) * 1999-08-30 2001-09-27 Vermeire Dean R. Method of accessing data and logic on existing systems through dynamic construction of software components
US20020038449A1 (en) * 1999-12-29 2002-03-28 Green David W. Method and system and article of manufacture for an N-tier software component architecture oilfield model
US20020095650A1 (en) * 1999-12-29 2002-07-18 Green David W. Method of and system for designing an N-tier software architecture for use in generating software components
US20020104067A1 (en) * 1999-12-29 2002-08-01 Green David W. Method and system and article of manufacture for an N-tier software component architecture application
US20020161734A1 (en) * 1999-03-03 2002-10-31 Christopher Stauber Application instantiation based upon attributes and values stored in a meta data repository, including tiering of application layers objects and components
US20020165867A1 (en) * 2001-05-07 2002-11-07 Tim Graser Support for domain level business object keys in EJB
US20020173970A1 (en) * 2001-03-09 2002-11-21 Tomoyuki Hamada Support system for maintenance contract of elevator
US20030004897A1 (en) * 2001-06-27 2003-01-02 Smith James E. Method and system for communicating user specific information
US6513045B1 (en) * 1999-11-17 2003-01-28 International Business Machines Corporation Method and an apparatus for providing cross product automated user assistance in the planning, configuration, and management of information systems
US6519642B1 (en) * 1997-01-24 2003-02-11 Peregrine Force, Inc. System and method for creating, executing and maintaining cross-enterprise processes
US6523027B1 (en) * 1999-07-30 2003-02-18 Accenture Llp Interfacing servers in a Java based e-commerce architecture
US20030036934A1 (en) * 2001-08-14 2003-02-20 Ouchi Norman Ken Adaptive workflow route
US20030046261A1 (en) * 2001-08-31 2003-03-06 Vert Tech Llc Apparatus and method for negotiating and generating contract documents on-line
US20030046130A1 (en) * 2001-08-24 2003-03-06 Golightly Robert S. System and method for real-time enterprise optimization
US6549949B1 (en) * 1999-08-31 2003-04-15 Accenture Llp Fixed format stream in a communication services patterns environment
US20030074463A1 (en) * 1999-11-30 2003-04-17 Accenture Llp Management interface between a core telecommunication system and a local service provider
US20030083947A1 (en) * 2001-04-13 2003-05-01 Hoffman George Harry System, method and computer program product for governing a supply chain consortium in a supply chain management framework
US20030114163A1 (en) * 2001-07-27 2003-06-19 Bickle Gerald L. Executable radio software system and method
US20030149714A1 (en) * 2001-10-26 2003-08-07 Fabio Casati Dynamic task assignment in workflows
US20030182287A1 (en) * 2002-03-22 2003-09-25 Carlo Parlanti Interface for an electronic spreadsheet and a database management system
US20030200533A1 (en) * 2001-11-28 2003-10-23 Roberts Andrew F. Method and apparatus for creating software objects
US20030212990A1 (en) * 2002-05-08 2003-11-13 Thomas Brodkorb Software delivery manager
US20040001103A1 (en) * 2002-06-28 2004-01-01 Fliess Kevin V. Modeling business objects
US6684387B1 (en) * 1999-09-23 2004-01-27 International Business Machines Corporation Method and apparatus for verifying Enterprise Java Beans
US20040064805A1 (en) * 2002-09-27 2004-04-01 Sparago Evan S. Enterprise scoped software factory
US20040128646A1 (en) * 2002-12-31 2004-07-01 Jindal Dinesh K. System and method of product development
US20040162857A1 (en) * 2003-02-14 2004-08-19 Butts David A. System for managing and dynamically recreating factory environments
US20040162741A1 (en) * 2003-02-07 2004-08-19 David Flaxer Method and apparatus for product lifecycle management in a distributed environment enabled by dynamic business process composition and execution by rule inference
US20040176968A1 (en) * 2003-03-07 2004-09-09 Microsoft Corporation Systems and methods for dynamically configuring business processes
US20040187140A1 (en) * 2003-03-21 2004-09-23 Werner Aigner Application framework
US20040204947A1 (en) * 2003-03-28 2004-10-14 Ruicheng Li System and method for generic business scenario management
US20050075968A1 (en) * 2003-09-19 2005-04-07 Apostolides John K. Service operation data processing using checklist functionality in association with inspected items
US6892192B1 (en) * 2000-06-22 2005-05-10 Applied Systems Intelligence, Inc. Method and system for dynamic business process management using a partial order planner
US6976144B1 (en) * 2003-05-06 2005-12-13 Pegasystems, Inc. Methods and apparatus for digital data processing with mutable inheritance
US20060004887A1 (en) * 2002-10-04 2006-01-05 Andre Schenk Method and device for generating distributed java applications by means of a central xml configuration file
US7103597B2 (en) * 2002-10-03 2006-09-05 Mcgoveran David O Adaptive transaction manager for complex transactions and business process
US7120898B2 (en) * 2003-06-26 2006-10-10 Microsoft Corporation Intermediate representation for multiple exception handling models
US7155439B2 (en) * 2001-09-20 2006-12-26 Wellogix, Inc. Modular and customizable process and system for capturing field documentation data in a complex project workflow system
US7266764B1 (en) * 2000-08-16 2007-09-04 Sparta Systems, Inc. Graphical user interface for automated process control
US20090024507A1 (en) * 2002-01-08 2009-01-22 Agile Labs Pvt. Ltd. Unique versatile axpert executor engine which can interpret and execute transaction structures and information views to build information systems
US7516137B1 (en) * 2000-03-21 2009-04-07 Arrayworks Inc. System and method for dynamic management of business processes

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5448702A (en) * 1993-03-02 1995-09-05 International Business Machines Corporation Adapters with descriptor queue management capability
US5675804A (en) * 1995-08-31 1997-10-07 International Business Machines Corporation System and method for enabling a compiled computer program to invoke an interpretive computer program
US6067525A (en) * 1995-10-30 2000-05-23 Clear With Computers Integrated computerized sales force automation system
US6163704A (en) * 1996-11-15 2000-12-19 Telefonaktiebolaget Lm Ericsson (Publ) Delivery of subscriber digital data messages in a dual mode cellular telephone network
US6574661B1 (en) * 1997-09-26 2003-06-03 Mci Communications Corporation Integrated proxy interface for web based telecommunication toll-free network management using a network manager for downloading a call routing tree to client
US6202070B1 (en) * 1997-12-31 2001-03-13 Compaq Computer Corporation Computer manufacturing system architecture with enhanced software distribution functions
US20020015480A1 (en) * 1998-12-08 2002-02-07 Neil Daswani Flexible multi-network voice/data aggregation system architecture
US6356901B1 (en) * 1998-12-16 2002-03-12 Microsoft Corporation Method and apparatus for import, transform and export of data
US6246752B1 (en) * 1999-06-08 2001-06-12 Valerie Bscheider System and method for data recording
US6400813B1 (en) * 1999-10-25 2002-06-04 Inrange Technologies, Inc. Mediation system for a telephone network
CA2402918A1 (en) * 2000-03-31 2001-10-11 Kapow Aps Method of retrieving attributes from at least two data sources
US7044074B2 (en) * 2000-05-24 2006-05-16 Tapiren Survey System Ab Method and arrangement for inspection of an object
US6853997B2 (en) * 2000-06-29 2005-02-08 Infoglide Corporation System and method for sharing, mapping, transforming data between relational and hierarchical databases
CA2417763A1 (en) * 2000-08-04 2002-02-14 Infoglide Corporation System and method for comparing heterogeneous data sources
US6708074B1 (en) * 2000-08-11 2004-03-16 Applied Materials, Inc. Generic interface builder
JP2002207768A (en) * 2001-01-10 2002-07-26 Shinseiki Technology:Kk Information processing system, its method and recording medium recorded with information processing program operating on computer
US6792431B2 (en) * 2001-05-07 2004-09-14 Anadarko Petroleum Corporation Method, system, and product for data integration through a dynamic common model
US7103599B2 (en) * 2001-05-15 2006-09-05 Verizon Laboratories Inc. Parsing of nested internet electronic mail documents
US20030208378A1 (en) * 2001-05-25 2003-11-06 Venkatesan Thangaraj Clincal trial management
US20020186257A1 (en) * 2001-06-08 2002-12-12 Cadiz Jonathan J. System and process for providing dynamic communication access and information awareness in an interactive peripheral display
US20030101158A1 (en) * 2001-11-28 2003-05-29 Pinto Oscar P. Mechanism for managing incoming data messages in a cluster
US20050187867A1 (en) * 2002-01-03 2005-08-25 Sokolic Jeremy N. System and method for associating identifiers with transactions
US7177814B2 (en) * 2002-02-07 2007-02-13 Sap Aktiengesellschaft Dynamic grammar for voice-enabled applications
US20040181685A1 (en) * 2002-04-01 2004-09-16 Navjot Marwaha System and method for handling distribution of alerts
US7139938B2 (en) * 2002-04-01 2006-11-21 Capital One Financial Corporation System and method for providing common event format using alert index
US7249174B2 (en) * 2002-06-12 2007-07-24 Bladelogic, Inc. Method and system for executing and undoing distributed server change operations
US20040059701A1 (en) * 2002-09-20 2004-03-25 Sergey Fedorov Method and apparatus for integrating data aggregation of historical data and real-time deliverable metrics in a database reporting environment
US20040181753A1 (en) * 2003-03-10 2004-09-16 Michaelides Phyllis J. Generic software adapter
US20050027667A1 (en) * 2003-07-28 2005-02-03 Menahem Kroll Method and system for determining whether a situation meets predetermined criteria upon occurrence of an event
US8752030B1 (en) * 2006-03-09 2014-06-10 Verizon Services Corp. Process abstraction and tracking, systems and methods

Patent Citations (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5216592A (en) * 1991-04-25 1993-06-01 International Business Machines Corporation System and method for business process automation
US5598524A (en) * 1993-03-03 1997-01-28 Apple Computer, Inc. Method and apparatus for improved manipulation of data between an application program and the files system on a computer-controlled display system
US5754858A (en) * 1996-05-01 1998-05-19 Microsoft Corporation Customizable application project generation process and system
US6519642B1 (en) * 1997-01-24 2003-02-11 Peregrine Force, Inc. System and method for creating, executing and maintaining cross-enterprise processes
US6049664A (en) * 1997-11-25 2000-04-11 Alphablox Corporation Tier-neutral development mechanism for hypertext based applications
US6272673B1 (en) * 1997-11-25 2001-08-07 Alphablox Corporation Mechanism for automatically establishing connections between executable components of a hypertext-based application
US20020161734A1 (en) * 1999-03-03 2002-10-31 Christopher Stauber Application instantiation based upon attributes and values stored in a meta data repository, including tiering of application layers objects and components
US6523027B1 (en) * 1999-07-30 2003-02-18 Accenture Llp Interfacing servers in a Java based e-commerce architecture
US20010025372A1 (en) * 1999-08-30 2001-09-27 Vermeire Dean R. Method of accessing data and logic on existing systems through dynamic construction of software components
US6549949B1 (en) * 1999-08-31 2003-04-15 Accenture Llp Fixed format stream in a communication services patterns environment
US6684387B1 (en) * 1999-09-23 2004-01-27 International Business Machines Corporation Method and apparatus for verifying Enterprise Java Beans
US6513045B1 (en) * 1999-11-17 2003-01-28 International Business Machines Corporation Method and an apparatus for providing cross product automated user assistance in the planning, configuration, and management of information systems
US20030074463A1 (en) * 1999-11-30 2003-04-17 Accenture Llp Management interface between a core telecommunication system and a local service provider
US20020095650A1 (en) * 1999-12-29 2002-07-18 Green David W. Method of and system for designing an N-tier software architecture for use in generating software components
US20020104067A1 (en) * 1999-12-29 2002-08-01 Green David W. Method and system and article of manufacture for an N-tier software component architecture application
US20020038449A1 (en) * 1999-12-29 2002-03-28 Green David W. Method and system and article of manufacture for an N-tier software component architecture oilfield model
EP1122676A1 (en) * 2000-02-01 2001-08-08 e-Business Exchange Pte. Ltd. Electronic bill creation and presentment system
US7516137B1 (en) * 2000-03-21 2009-04-07 Arrayworks Inc. System and method for dynamic management of business processes
US6892192B1 (en) * 2000-06-22 2005-05-10 Applied Systems Intelligence, Inc. Method and system for dynamic business process management using a partial order planner
US7266764B1 (en) * 2000-08-16 2007-09-04 Sparta Systems, Inc. Graphical user interface for automated process control
US20020173970A1 (en) * 2001-03-09 2002-11-21 Tomoyuki Hamada Support system for maintenance contract of elevator
US20030083947A1 (en) * 2001-04-13 2003-05-01 Hoffman George Harry System, method and computer program product for governing a supply chain consortium in a supply chain management framework
US20020165867A1 (en) * 2001-05-07 2002-11-07 Tim Graser Support for domain level business object keys in EJB
US6999964B2 (en) * 2001-05-07 2006-02-14 International Business Machines Corporation Support for domain level business object keys in EJB
US20030004897A1 (en) * 2001-06-27 2003-01-02 Smith James E. Method and system for communicating user specific information
US20030114163A1 (en) * 2001-07-27 2003-06-19 Bickle Gerald L. Executable radio software system and method
US20030036934A1 (en) * 2001-08-14 2003-02-20 Ouchi Norman Ken Adaptive workflow route
US20030046130A1 (en) * 2001-08-24 2003-03-06 Golightly Robert S. System and method for real-time enterprise optimization
US20030046261A1 (en) * 2001-08-31 2003-03-06 Vert Tech Llc Apparatus and method for negotiating and generating contract documents on-line
US7155439B2 (en) * 2001-09-20 2006-12-26 Wellogix, Inc. Modular and customizable process and system for capturing field documentation data in a complex project workflow system
US20030149714A1 (en) * 2001-10-26 2003-08-07 Fabio Casati Dynamic task assignment in workflows
US20030200533A1 (en) * 2001-11-28 2003-10-23 Roberts Andrew F. Method and apparatus for creating software objects
US20090024507A1 (en) * 2002-01-08 2009-01-22 Agile Labs Pvt. Ltd. Unique versatile axpert executor engine which can interpret and execute transaction structures and information views to build information systems
US20030182287A1 (en) * 2002-03-22 2003-09-25 Carlo Parlanti Interface for an electronic spreadsheet and a database management system
US20030212990A1 (en) * 2002-05-08 2003-11-13 Thomas Brodkorb Software delivery manager
US20040001103A1 (en) * 2002-06-28 2004-01-01 Fliess Kevin V. Modeling business objects
US20040064805A1 (en) * 2002-09-27 2004-04-01 Sparago Evan S. Enterprise scoped software factory
US7103597B2 (en) * 2002-10-03 2006-09-05 Mcgoveran David O Adaptive transaction manager for complex transactions and business process
US20060004887A1 (en) * 2002-10-04 2006-01-05 Andre Schenk Method and device for generating distributed java applications by means of a central xml configuration file
US20040128646A1 (en) * 2002-12-31 2004-07-01 Jindal Dinesh K. System and method of product development
US20040162741A1 (en) * 2003-02-07 2004-08-19 David Flaxer Method and apparatus for product lifecycle management in a distributed environment enabled by dynamic business process composition and execution by rule inference
US20040162857A1 (en) * 2003-02-14 2004-08-19 Butts David A. System for managing and dynamically recreating factory environments
US20040176968A1 (en) * 2003-03-07 2004-09-09 Microsoft Corporation Systems and methods for dynamically configuring business processes
US20040187140A1 (en) * 2003-03-21 2004-09-23 Werner Aigner Application framework
US20040204947A1 (en) * 2003-03-28 2004-10-14 Ruicheng Li System and method for generic business scenario management
US6976144B1 (en) * 2003-05-06 2005-12-13 Pegasystems, Inc. Methods and apparatus for digital data processing with mutable inheritance
US7120898B2 (en) * 2003-06-26 2006-10-10 Microsoft Corporation Intermediate representation for multiple exception handling models
US20050075968A1 (en) * 2003-09-19 2005-04-07 Apostolides John K. Service operation data processing using checklist functionality in association with inspected items

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
User Guide for Microsoft Visio, Exterprise Edition, Microsoft 2000http://demon.eltc.ru/man/EntGuide.pdf orhttp://portal.aauj.edu/e_books/ms_visio2002_pro_guide.pdf *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070033196A1 (en) * 2005-08-02 2007-02-08 Sap Ag Service directory
US20070033571A1 (en) * 2005-08-02 2007-02-08 Sap Ag Dynamic work center
US20080109292A1 (en) * 2006-11-03 2008-05-08 Sap Ag Voice-enabled workflow item interface
US20100250322A1 (en) * 2009-03-27 2010-09-30 Michael Roy Norwood Simplified user interface and method for computerized task management systems
US20110145036A1 (en) * 2009-12-14 2011-06-16 Herschmann Jr Richard Beary Change management in route-based projects
WO2014120406A3 (en) * 2013-02-04 2014-10-23 Uni-B Solutions Llc Process management system, method, and computer-readable medium
WO2014120406A2 (en) * 2013-02-04 2014-08-07 Uni-B Solutions Llc Process management system, method, and computer-readable medium
US20140282188A1 (en) * 2013-03-15 2014-09-18 Moresteam Development Llc Computer graphical user interface, system, and method
US20150242389A1 (en) * 2014-02-27 2015-08-27 Netapp, Inc. Techniques to identify user interface elements associated with model violation events
US11227245B2 (en) 2017-01-06 2022-01-18 Microsoft Technology Licensing, Llc Master view of tasks
US10846111B2 (en) * 2018-12-18 2020-11-24 Servicenow, Inc. Customer service management
US11698802B2 (en) 2018-12-18 2023-07-11 Servicenow, Inc. Customer service management
US20220108249A1 (en) * 2019-01-12 2022-04-07 Sanjay Chandramohan Maheshwari Method and apparatus for workflow automation

Also Published As

Publication number Publication date
US11537958B2 (en) 2022-12-27
US20160283892A1 (en) 2016-09-29

Similar Documents

Publication Publication Date Title
US20040230466A1 (en) Adaptable workflow and communications system
US11537958B2 (en) Automated adaptation of business process tracking and communications
US8321919B2 (en) Framework for delegating roles in human resources ERP systems
US8150798B2 (en) Method and system for automated coordination and organization of electronic communications in enterprises
US7475136B2 (en) Method and apparatus for provisioning tasks using a provisioning bridge server
US6816871B2 (en) Delivering output XML with dynamically selectable processing
US7415607B2 (en) Obtaining and maintaining real time certificate status
US7802174B2 (en) Domain based workflows
US7085834B2 (en) Determining a user&#39;s groups
US7840658B2 (en) Employing job code attributes in provisioning
US7120647B2 (en) Web-based method and system for providing expert information on selected matters
US7363339B2 (en) Determining group membership
US7711818B2 (en) Support for multiple data stores
US8195714B2 (en) Context instantiated application protocol
US7467142B2 (en) Rule based data management
US8245141B1 (en) Hierarchical collaboration policies in a shared workspace environment
US20070208587A1 (en) Systems, software, and methods for communication-based business process messaging
US20070174390A1 (en) Customer service management
US7574483B1 (en) System and method for change management process automation
US20020138543A1 (en) Workflows with associated processes
US20100299176A1 (en) Collaborative Financial Close Portal
US20070168871A1 (en) Web-enabled transaction and collaborative management system
US7912930B1 (en) System and method for resource provisioning
US20030018723A1 (en) System and method of managing a change in an electronic mail address
US8850525B1 (en) Access control center auto configuration

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION