WO2001027762A1 - Computer-implemented system and method for monitoring and managing business processes and associated resources - Google Patents

Computer-implemented system and method for monitoring and managing business processes and associated resources Download PDF

Info

Publication number
WO2001027762A1
WO2001027762A1 PCT/US2000/024296 US0024296W WO0127762A1 WO 2001027762 A1 WO2001027762 A1 WO 2001027762A1 US 0024296 W US0024296 W US 0024296W WO 0127762 A1 WO0127762 A1 WO 0127762A1
Authority
WO
WIPO (PCT)
Prior art keywords
state
business process
resource
sub
business
Prior art date
Application number
PCT/US2000/024296
Other languages
French (fr)
Inventor
Padma P. Reddy
Vasudev Rangadass
Cary Hocker
Rubesh Mehta
Cyrus Dadgar
Original Assignee
I2 Technologies, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by I2 Technologies, Inc. filed Critical I2 Technologies, Inc.
Priority to AU71120/00A priority Critical patent/AU7112000A/en
Publication of WO2001027762A1 publication Critical patent/WO2001027762A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2257Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems

Definitions

  • This invention relates generally to the field of computer systems and more specifically to a computer- implemented system and method for monitoring and managing business processes and associated resources.
  • a business process includes a series of one or more activities or other sub- processes that may be executed in association with, for example, a business or other organization.
  • Business processes typically require specified resources for execution, for example, supply chain planning engines or other applications, and often require such resources at specified times. Previous monitoring and management techniques, however, have not been satisfactory in efficiency and effectiveness.
  • previous systems may provide a way to monitor and manage resources but not the business processes that may use these resources .
  • Other previous systems may provide the ability to monitor and manage individual business processes, but are unable to correlate resources to the processes.
  • These systems are not able to identify resources that cannot satisfy business process demands in the context of the business process and, in response, take one or more suitable corrective measures.
  • these systems are not able to automatically gather and analyze information about execution of a business process, and about associated resources, and correlate them such that improvements may be suggested to the business process.
  • a computer- implemented system and method for monitoring and managing business processes and associated resources are provided that reduce or eliminate disadvantages and problems associated with prior systems and methods.
  • a computer-implemented system for monitoring and managing one or more business processes and associated resources includes a memory that stores state information indicating the state of at least one business process, state information indicating the state of at least one resource to be used during execution of the business process, and at least one rule relating the resource to the business process.
  • a monitor engine accesses at least some of the state information, applies the rule according to the state information, and generates a notification if the state information is unsatisfactory according to the rule.
  • the monitor engine may determine the state of the business process or resource using the corresponding state information and, if the state is unsatisfactory, generate the notification to affect the state.
  • the present invention provides a number of important technical advantages over previous systems .
  • the present invention allows for effective monitoring and management of business processes and their associated resources, resulting in more efficient execution of the business processes .
  • the system and method of the present invention apply suitable rules relating business processes to resources that are to be used for execution of the business processes.
  • resources may include supply chain planning engines or other software applications, machines on which these applications run, or any other suitable resources. Rules may be used, for example, to identify in advance a resource that is not able to satisfy a business process demand and, in response, to notify a user using a display that visually conveys information concerning the business process and associated resources.
  • the present invention allows for automatic collection and analysis of statistical information about the execution of business processes and resources, which may be used to identify potential business process problems and suggest improvements.
  • the present invention further allows different types of business processes and resources to be effectively monitored and managed, thereby allowing new business processes and resources to be more readily integrated into business operations.
  • the system and method of the present invention are adapted for use in a variety of complex business operations and planning environments.
  • FIGURE 1 illustrates an exemplary system for monitoring and managing business processes and associated resources
  • FIGURE 2A illustrates an exemplary display including multiple perspective views
  • FIGURE 2B illustrates an exemplary resource topology view
  • FIGURE 2C illustrates an exemplary business process overview
  • FIGURE 2D illustrates an exemplary business process aggregate view
  • FIGURE 2E illustrates an exemplary business process detailed view
  • FIGURE 3 illustrates an exemplary method of monitoring and managing business processes and associated resources
  • FIGURE 4 illustrates an exemplary method of applying a rule relating one or more resources to an associated business process.
  • FIGURE 1 illustrates an exemplary system 100 for monitoring and managing business processes and associated resources.
  • System 100 includes a monitor 102 in communication with one or more business process execution environments 104 and one or more systems managers 106.
  • monitor 102 links business processes 108 executing in execution environment 104 to resources 110 managed by systems manager 106.
  • a business process may include any appropriate activity, procedure, method, operation, or workflow associated with at least a portion of a business or other organization.
  • a manufacturing business might execute raw materials ordering, manufacturing, packaging, and shipping processes 108, among others.
  • each business process 108 may include a set of one or more sub-processes (SP) 112.
  • SP sub-processes
  • exemplary business process 108a may include no sub-processes 112
  • exemplary business process 108b may include sub-processes 112a and 112b.
  • this business process 108 might require an order entry system, a demand fulfillment engine, a transportation planner, and a billing system, among others.
  • one or more persons may need to handle any exceptions associated with the business process. For every order placed, each of the required applications must be operable and operating - any down time may result in lost revenues.
  • monitor 102 may determine in advance whether the required applications are operable and operating such that the business process 108 may properly execute. For example, if a required application is not operable, then monitor 102 may take action to start another instance of that application, start an alternative application, or affect the operation of the business process 108 in some manner such that the effect of the application being unavailable is minimized. As another example, if a required application is operable but not currently operating, monitor 102 may take action to start the application such that the execution of the business process 108 is not hindered. Monitor 102 may perform these operations before business process 108 begins executing or at any other appropriate time, for example, immediately before affected applications are needed. In one embodiment, monitor 102 communicates with systems manager 106 to verify resource availability prior to or during business process execution and, in response, to start any necessary resources 110. These and other capabilities are not found in previous systems and provide a number of important technical advantages .
  • Monitor 102 may include one or more business process instrumentation (PI) interfaces 114 that facilitate communication between the monitor 102 and execution environment 104.
  • instrumentation may be defined as suitable functionality allowing business processes 108 to provide dynamic and, preferably, substantially real-time information to monitor 102 regarding the states of business processes 108.
  • a business process 108 may be in a normal, problem, or failure state and may provide such information to monitor 102 during execution of business process 108, in substantially real-time, using the PI interface 114.
  • the PI interface 114 includes one or more application programming interfaces
  • APIs APIs
  • adapter For communicating with execution environment 104.
  • APIs APIs
  • adapter APIs
  • Systems manager 106 manages or otherwise supports one or more resources 110 that may each include, for example, one or more physical machines, software components, or any other appropriate resources that perform tasks necessary for or otherwise associated with the execution of one or more business processes 108 and their sub-processes 112.
  • resources 110 may each include, for example, one or more physical machines, software components, or any other appropriate resources that perform tasks necessary for or otherwise associated with the execution of one or more business processes 108 and their sub-processes 112.
  • resources 110 may each include, for example, one or more physical machines, software components, or any other appropriate resources that perform tasks necessary for or otherwise associated with the execution of one or more business processes 108 and their sub-processes 112.
  • resources 110 may each include, for example, one or more physical machines, software components, or any other appropriate resources that perform tasks necessary for or otherwise associated with the execution of one or more business processes 108 and their sub-processes 112.
  • resources 110 may each include, for example, one or more physical machines, software components, or any other appropriate resources that perform tasks necessary for or
  • exemplary resources 110 for business process 108 may include a demand planner, factory planner application, supply chain planner, and transportation planner applications.
  • Resources 110 may additionally include computer systems and their components, such as central processing units (CPUs) , operating systems, and hard disks, that support the operation of such applications.
  • Systems manager 106 may includes any suitable systems management tool or other component appropriate for the management of resources 110 and operable to communicate with monitor 102 for monitoring and management of resources 110.
  • Monitor 102 may also include one or more systems manager (SM) interfaces 120 that facilitate communication between monitor 102 and systems manager 106. Similar to PI interface 114, SM interface 120 may include one or more suitable APIs 122 and an adapter 124 for communicating with systems manager 106 and providing instrumentation for resources 110.
  • API 122 may interface to one or more custom, proprietary, or other monitoring or management environments internal or external to systems manager 106.
  • Adapter 124 includes components appropriate to interact with systems manager 106 to collect instrumentation data for resources 110, for example, supporting appropriate connection mechanisms and communications protocols. For example, API 122 and adapter 124 may cooperate to provide the monitor 102 with CPU, hard disk, and memory utilization information for a physical resource 160 that is being monitored. Systems manager 106 may provide polling of resources 160 to determine when specified thresholds are crossed and responsive warnings, alerts, or other notification events (depending on the threshold) should be communicated to monitor 102.
  • SM systems manager
  • Monitor 102 includes a monitor engine 126 that monitors the states, health, condition, or other suitable property of business processes 108 and their associated resources 110, applying rules that define appropriate relationships among business processes 108 and resources 110.
  • Monitor engine 126 receives information about business processes 108 (including sub-processes 112) , information about resources 110, and one or more rules relating the business processes 108 to the resources 110.
  • monitor engine 126 includes a state monitoring engine 128, a business layer 130, and a memory 132.
  • the state monitoring engine 128 uses the information received using PI interface 114 and SM interface 120 to monitor the states of business processes 108 (including any sub-process 112) and resources 110, respectively.
  • Business layer 130 receives notifications of state changes for business processes 108 (using PI interface 114) and for resources 110 (from systems manager 106 using SM interface 120) and communicates the notifications to state monitoring engine 128.
  • Business layer 130 also communicates one or more previously defined rules to the state monitoring engine 128 that define actions monitor engine 126 is to take upon the occurrence of specified events or the existence of specified conditions that occur during execution of business processes 108. Rules affecting a business process 108 may be communicated as part of or otherwise in association with an execution plan for the business process 108.
  • an execution plan for business process 108 may include, in any combination and without limitation: (1) expected elapsed time for business process 108; (2) attribute and state definitions for business process 108; (3) expected elapsed time for one or more activities or other appropriate sub-processes 112 of business process 108; (4) attribute and state definitions for activities or other sub-processes 112;
  • a rule may incorporate any suitable information in an execution plan; for example, a definition of an exception condition (such as a required resource 110 not currently operating) along with a definition of a responsive action (start the required resource 110) may constitute a rule.
  • Sub- processes 112 may be linked to one another in any suitable manner, according to information contained in associated transfer objects or otherwise. For example, a web order transfer object may contain a customer name, part number, and requested quantity. A sub-process 112 might receive the transfer object and access this information for its execution (possibly changing, adding to, deleting from, or otherwise modifying the information as appropriate) .
  • a relatively simple execution plan may specify that business process 108 enters an execution state.
  • a first activity then enters an execution state and completes successfully.
  • a transfer object is created and successfully communicated to a second activity linked to the first activity.
  • the second activity enters an execution state, accesses the transfer object, and completes successfully to successfully complete business process 108.
  • One or more rules may define those actions to be taken in response to problems or other exception conditions associated with execution of this plan.
  • execution plans are much more complex than this, for example, including a large number of activities and incorporating complex states based on attribute values, incorporating exception conditions, and incorporating complex logic to evaluate correlations of states to a variety of objects and generate exceptions as suitable.
  • the present invention contemplates an execution plan for a business process 108 incorporating any appropriate information to guide its execution and facilitate its monitoring within system 100, according to particular needs.
  • State monitoring engine 128 stores state information for business processes 108 and resources 110 in memory 132 and, if appropriate, in database 134. Although state monitoring engine 128 is described above as receiving certain information from business layer 130, state monitoring engine 128 may instead access memory 132 to access information that business layer 130 stores in memory 132.
  • Database 134 contains historical data, statistical data, or other suitable information concerning the monitoring and management of the business processes 108 and resources 110. For example only and not by way of limitation, database 134 may contain statistical data, compiled over a period of time, concerning business process bottlenecks that may be analyzed to suggest suitable business process improvements. Database 134 may be integral to or separate from memory 132.
  • Monitor engine 126 may allow memory 132, database 134, or both memory 132 and database 134 to be queried for any appropriate stored information concerning the business processes 108 and associated resources 110. In one embodiment, older or any other selected information may be periodically or otherwise deleted from database 134 as appropriate.
  • Monitor 102 also includes a communication API 136 supporting a web-based or other user interface 138 for communicating with users of system 100.
  • API 136 provides the ability to send and receive logical events, map logical events to and from physical events, and may support any other suitable event-related functionality.
  • user interface 138 may provide a display that includes multiple perspective views of one or more business processes 108 in execution environment 104, along with any suitable information concerning related resources 110.
  • Monitor 102, execution environment 104, and systems manager 106 may be integral to or separate from one another; may communicate using one or more local area networks (LANs) , metropolitan area networks (MANs) , wide area networks (WANs) , a global data communications network such as the Internet, or any other suitable networks; and may each operate on one or more computer systems at one or more locations, as appropriate .
  • LANs local area networks
  • MANs metropolitan area networks
  • WANs wide area networks
  • Internet global data communications network
  • business process 108 is defined and a suitable execution plan including one or more rules is stored within business layer 130.
  • business process 108 begins executing within execution environment 104 and a control event is communicated from execution environment 104 to monitor engine 126 of monitor 102.
  • the control event may include, for example, a name of the business process 108 being executed, the type of business process 108 being executed, and an identifier of the particular instance of business process 108 being executed.
  • state monitoring engine 128 obtains the previously defined execution plan for that business process 108, including one or more appropriate rules, from the business layer 130 and begins monitoring business process 108 and associated resources 110.
  • Monitor 102 and execution environment 104 may communicate any appropriate information during execution of business process 108, for example, state information, activity information, and other suitable instrumented data.
  • Monitor engine 126 receives state information for the business process 108 (including sub-processes 112) from execution environment 104 using PI interface 114. Monitor engine 126 also receives state information for one or more resources 110 associated with the business process 108 from systems manager 106 using SM interface 120. In one embodiment, systems manager 106 may communicate initial state information for resources 110 and thereafter communicate state information in response to each change in state for each resource 110.
  • Business layer 130 receives the state information and communicates it to state monitoring engine 128, which as described above is monitoring business process 108 and associated resources 110. According to this monitoring and the execution of business process 108, monitor engine 126 may apply one or more rules relating resources 110 to business process 108.
  • Monitor 102 may send suitable control events to execution environment 104, according to its application of these rules, to cause execution environment to stop business process 108, restart business process 108, or otherwise affect operation of business process 108. Also according to application of these rules, instead of or in addition to communicating with execution environment 104 about business process 108, monitor 102 may communicate with systems manager 106 to start a not yet operating resource 110, restart a previously failed resource 110, start an alternative resource 110, or otherwise affect operation of one or more suitable resources 110 according to the needs of business process 108.
  • business layer 130 might receive state information indicating that business process 108 has started, a first resource 110 is not operable, and a second resource 110 is operable but is not currently operating.
  • a rule may specify that if business process 108a has started and first resource 110 is not operable, send notifications to the user interface 138 for display, to execution environment 104 for initiation of an appropriate responsive measure, or to the systems manager 106 for initiation of an appropriate responsive measure, singly or in any combination.
  • the state monitoring engine 128 receives the state information from the business layer 130, applies the rule, and in response causes the specified notifications to be sent.
  • Another rule might state that if business process 108a has started and a second resource is not currently operating, automatically start a third resource if possible.
  • the state monitoring engine 128 applies the rule's condition according to the state information and monitor 102 sends a notification to business layer 130, which then invokes the rule's specified action and sends an instruction to systems manager 106 to start the third resource 110.
  • the correlation of business processes 108 and resources 110 according to the present invention, using one or more appropriate rules forming part of a business process execution plan, provides an important technical advantage.
  • FIGURE 2A illustrates an exemplary display 200 generated using web-based or other user interface 138 and including multiple views 202.
  • Each view provides information concerning execution environment 104, one or more business processes 108 within execution environment 104, one or more resources 110 associated with systems manager 106, or any suitable combination of the above.
  • a three-dimensional display 200 is illustrated including three simultaneous views 202, the display 200 may have any suitable number of dimensions and include any suitable number of views 202, according to particular needs.
  • display 200 might be a one- dimensional "flat" display 200 that includes multiple views 202 that each have a corresponding panel within display 200.
  • Display 200 may include any suitable views 202, arranged in any appropriate manner, without departing from the intended scope of the present invention.
  • each of the views 202 is a perspective view providing information concerning an associated aspect of execution environment 104, one or more business processes 108, or one or more resources 110.
  • views 202 may include: (1) one or more views 202 each reflecting the topology, health, and other appropriate characteristics of one or more business processes 108; (2) one or more views 202 that each reflect the topology, health, and other characteristics of one or more physical, logical, or other resources 110; (3) one or more views 202 reflecting historical, current, or projected statistical information concerning one or more business processes 108, one or more resources 110, or any combination of business processes 108 and resources 110; and (4) any other appropriate views 202.
  • Perspective views 202 may be correlated such that a selection or other input received with respect to a first view 202 may cause one or more other views 202 to be concurrently updated or otherwise modified to reflect the selection or other input .
  • FIGURE 2B illustrates an exemplary resource topology view 202a providing performance data for one or more resources 110 currently being monitored.
  • resource topology view 202 may use indicators 204 within or otherwise associated with icons 206 to display performance data for corresponding planning engines or other applications currently being monitored.
  • the indicators 204 may include any suitable bar graphs, pie charts, or other suitable indicators 204 within or otherwise associated with icons 206 and may convey data according to their color, shading, shape, or any other suitable indicia.
  • User interface 138 may provide further, perhaps more detailed, performance data for a particular resource 110 in response to the user selecting the icon 206 representing the resource 110 using a mouse pointer, touch screen, or in any other suitable manner.
  • a resulting pop-up display 208 for the selected resource 110 may provide performance statistics, graphs, or other data for resource 110.
  • display 208 might provide the CPU utilization, available memory, response time, and expected response time for the resource 110. These performance parameters might indicate that the CPU utilization is high, free memory is low, and the expected duration of a transaction or operation involving resource 110 been exceeded.
  • Topology view 202 may provide any suitable visual, audible, or other cues to inform the user of critical events or conditions concerning resource 110.
  • topology view 202 may allow the user to perform suitable management operations with respect to monitored resources 110. For example, the user may be permitted to start or stop resources 110 (using pop-up display 208 or otherwise) , to access error logs concerning resources 110 for trouble shooting, or perform any other suitable management activities relating to resources 110.
  • FIGURE 2C illustrates an exemplary business process overview 202b that provides information concerning one or more business processes 108 executing in execution environment 104.
  • Business process overview 202b indicates the status of one or more business processes 108 being monitored, allowing the user to readily assess the overall performance of business processes 108, perhaps across multiple instances of each business process 108.
  • business process overview 202b may provide information for an order fulfillment process 108e, an inventory inquiry process 108h, an order request process 108j , a procurement process 1081, and a promise item process 108m, among others.
  • the business process overview 202b may identify or use a suitable scale to indicate the number of instances of each business process 108 that are currently executing, for example, the number of promise item processes 108m currently executing. The user may be able to select a particular instance to obtain more detailed information for that instance, as described more fully below with reference to FIGURE 2E.
  • Business process overview 204 may provide suitable state information for each business processes 108, for example, providing the percentage of instances of business process 108 that are in normal, warning, alert, or failure states.
  • This state information may be provided using color, shading, shape or other suitable indicia.
  • a portion of a bar, banner, box, or other region 210 within overview 202b associated with business process 108 may indicate the percentage of business process instances in the corresponding state.
  • a gray portion 212a might indicate the percentage of instances in a normal state
  • a yellow portion 212b might indicate the percentage of instances in a delayed or other warning state
  • a red portion 212c might indicate the percentage of instances in an alert state.
  • region 210 is entirely gray, the user readily determines that no action may be necessary. On the other hand, if fifty percent of region 210 is yellow (fifty percent of the 1000 instances are in a delayed or other warning state) and twenty percent of region 210 is red (twenty percent of the 1000 instances are in an alert state) , the user may readily determines that immediate corrective measures may be necessary.
  • the rules specifying what constitutes a particular state of a business process instance may be defined in any suitable manner, according to particular needs. For example, an exemplary rule might specify that if the actual duration of an activity exceeds the expected duration of the activity, communicate a notification that results in a visual indicator within business process overview 202b.
  • fulfillment process 108e might have associated rules specifying that if an order is shipped within forty-eight hours, then process 108e is in a normal state; if the order is shipped between forty-eight and seventy-two hours, then process 108e is in a warning state; if the order is shipped between seventy-two and ninety-six hours, then process 108e is in a critical state; and if the order is shipped in over ninety-six hours, then process 108e is in a failure state. Suitable notifications may be communicated accordingly.
  • State monitoring engine 128 processes the state information according to these rules, which it receives from business layer 130, as fulfillment process 108e executes in execution environment 104 during operation of system 100.
  • FIGURE 2D illustrates exemplary business process aggregate view 202c that includes one or more activities or other sub-processes 112 of business process 108, such as fulfillment process 108e described above, arranged in the logical sequence corresponding to execution of fulfillment process 108e.
  • Each sub-process 112 may involve one or more tasks, for example, getting a quote from a fulfillment engine application, sending an order to a transportation manager application, or sending data to a factory planner application.
  • the sub-processes 112 for the fulfillment process 108e may include web order sub-process 112a, price check sub- process 112b, product availability sub-process 112c, order product sub-process 112d, warehouse management system sub-process 112e, transport parts sub-process 112f, receive parts sub-process 112g, shipping receive parts sub-process 112h, ship product sub-process 112i, invoice sub-process 112j , and e-mail invoice sub-process 112k, in any appropriate combination and without limitation.
  • Aggregate view 202c displays the aggregate status of a particular business process 108, considering all of its activities or other sub-processes 112. For each of these sub-processes 112, aggregate view 202c may indicate the number of instances of the sub-process 112 that are at that particular sub-process 112. Aggregate view 202c may do so using text, color, shading, shape, or any suitable indicia associated with icon 214 for that sub-process 112. A relatively large number of instances of business process 108 at a sub-process 112 may indicate a bottleneck at that sub-process 112 for business process 108 and thus an actual or potential problem.
  • a bottleneck is at an activity requiring manager approval to complete, then the manager may be failing to adequately perform his or her duties. If the bottleneck is at an activity requiring a quote to be obtained from a third-party fulfillment engine application, then it may be desirable to replace that third-party application. If the bottleneck is at an activity requiring a response from a particular resource 110, then that resource 108 may not be operating.
  • the present invention contemplates any appropriate condition or event being indicated according to the number of instances of business process 108 that are currently at a particular sub-process 112.
  • business process overview 202b might indicate that two percent of e-fulfillment business processes 108 have exceeded their expected duration for execution (meaning the promised ship dates have passed but the goods for the orders have not yet been shipped) .
  • Business process aggregate view 202c might indicate that all such business processes instances are waiting on parts from external suppliers. As a result, a user within the company is able to readily identify where the bottleneck has occurred and take action to address the problem.
  • business process overview 202b and business process aggregate view 202c are displayed simultaneously within display 200, such that the user may more readily appreciate these relationships.
  • user interface 138 may display a business process detailed view 202d, as illustrated in FIGURE 2E.
  • Detailed view 202d displays the current state of at least a portion of the selected business process 108, for example, which activities have already executed; which activity is currently executing; which activities remain to be executed; the expected duration for each activity; the actual duration for executed or executing activity; any warning, alert, or other appropriate notifications for one or more particular activities for which corresponding rules have been defined; and any other suitable information for sub-processes 112 of selected business process 108.
  • the user may brush over, point to, click on, or otherwise select a particular sub-process 112 to obtain more detailed information for that sub-process 112.
  • a resulting pop-up display 216 may provide, for example, the expected and the actual durations of sub-process 112 and any warning, alert, or other notifications for sub- process 112.
  • the user may similarly select a link 218 between sub-processes 112 to view the content of information passing through that portion of the business process 108, for example, order information including an order number, order quantity, and order amount.
  • the user may query for a specific data element. For example, if the user searches for a particular order number, one or more business process instances pertaining to that order may be displayed using detailed view 202d to illustrate where in business process 108 the corresponding order is.
  • FIGURE 3 illustrates an exemplary method of managing business processes 108 and associated resources 110.
  • monitor 102 monitors and manages exemplary e-fulfillment process 108e that executes within execution environment 104 and one or more associated resources 110 associated with systems manager 106.
  • fulfillment process 108e any appropriate business process 108 may of course be monitored and managed without departing from the intended scope of the present invention.
  • the method begins at step 302, where the fulfillment process 108 (including one or more of its sub-processes 112 described above with reference to FIGURE 2D) is defined according to input from the user.
  • Fulfillment process 108e may be defined using hypertext markup language
  • An appropriate execution plan for business process 108 is defined at step 304 and, at step 304
  • the execution plan may be stored in business layer 130 immediately prior to execution of business process 108 or at any other time.
  • the execution plan may include, among other information, one or more transfer objects including data to be passed between sub- processes 112 and one or more rules to be applied according to the operation of business process 108.
  • the business process 108 begins executing within the execution environment 104 and, at step 310, the execution environment 104 communicates an appropriate control event to monitor engine 126 of monitor 102 using PI interface 114.
  • the control event may include, for example, a name of the business process 108 being executed, the type of the business process 108 being executed, and an identifier of the particular instance of business process 108 being executed.
  • state monitoring engine 128 of monitor 102 obtains the previously defined execution plan for business process 108, including one or more transfer objects and one or more rules, from the business layer 130.
  • state monitoring engine 128 begins monitoring the business process 108 and its associated resources 110.
  • monitor 102 may communicate information with execution environment 104 and systems manager 106, including for example state information, activity information, and any other suitable instrumented data.
  • execution environment 104 and systems manager 106 including for example state information, activity information, and any other suitable instrumented data.
  • the user interface 138 begins to generate displays 200 to provide the user with suitable information concerning business process 108 and associated resources 110.
  • a first of possibly multiple sub- processes 112 of the business process 108 begins executing in execution environment 104. This event may be essentially the same as or may occur substantially simultaneously with the business process 108 beginning to execute.
  • the sub-process 112 accesses (and possibly modifies) one or more transfer objects.
  • a web order sub- process 112 that executes in response to a web order received over the Internet may include a web order transfer object that contains the customer name, part number, and requested quantity for the order.
  • a transfer object may be included in or otherwise associated with a sub-process 112 as a result of the initial definition of the sub-process 112.
  • the transfer object may be included in the stored execution plan and communicated to sub-process 112 from business layer 130 of monitor engine 126.
  • Business layer 130 receives state information for the business process 108 (including sub-processes 112) from execution environment 104 at step 322 using PI interface 114.
  • Business layer 130 also receives state information for one or more resources 110 that are associated with business process 108 from systems manager 106 at step 324 using SM interface 120.
  • systems manager 106 may communicate initial state information for resources 110 being monitored and subsequently communicate state information in response to a change in state for a monitored resource 110.
  • Business layer 130 may store the information in memory 132 and possibly database 134 at step 326.
  • Business layer 130 communicates the state information to the state monitoring engine 128 at step 328, which as described above is monitoring business process 108 and associated resources 110.
  • Business layer 130 may begin to receive and then communicate state information for business process 108 and resources 110 at any suitable time before, during, or after business process 108 or its first sub-process 112 begin executing.
  • monitor engine 126 may apply one or more rules relating resources 110 to business process 108 at step 330.
  • Application of a rule is described more fully below with reference to FIGURE 4.
  • monitor 102 may send one or more control events to execution environment 104, according to application of the rules, to cause execution environment to stop business process 108 or the sub-process 112, restart business process 108 or the sub-process 112, or otherwise affect the operation of business process 108 or the sub- process 112.
  • monitor 102 may communicate with systems manager 106 to start one or more not yet operating resources 110, restart one or more previously failed resources 110, start one or more alternative resources 110, or otherwise affect the operation of one or more resources 110 according to the needs of business process 108 and sub-process 112.
  • monitor engine 126 modifies one or more transfer objects as appropriate and then communicates one or more of these transfer objects to the next sub-process 112 at step 338.
  • a price check sub-process 112 that executes subsequent to the web order sub-process 112 might need some or all of the information contained in the web order transfer object to execute. Accordingly, web order sub-process 112 communicates the web order transfer object to the price check sub-process 112 to provide this information.
  • step 320 where the next sub-process 112 accesses one or more suitable transfer objects.
  • transfer objects for first sub-process 112 are described as being included in or otherwise associated with first sub-process 112, and transfer objects for next sub-process 112 are described as being received from first sub-process 112, the present invention contemplates a sub-process 112 accessing any suitable transfer objects at step 320.
  • a next sub-process 112 may include a transfer object as a result of its initial definition, may receive a transfer object from a proceeding sub-process 112, may receive a transfer object from another previous sub-process 112, or may access one or more transfer objects in any suitable manner to access appropriate information.
  • Monitor 102 and it components continue to receive state information, apply rules as appropriate, and generate suitable displays 200 while the business process 108 is executing. If sub-process 112 and business process 108 are both complete at step 336, the execution environment 104 communicates a control event to monitor engine 126 at step 340. In response, at step 342, state monitoring engine 128 ceases monitoring the business process 108 and associated resources 110, and the method ends. Although monitoring and management of a single business process 108 (and associated resources 110) is described, monitor 102 may monitor and manage any suitable number of business processes 108 (and associated resources 110) serially, simultaneously, or in any other manner .
  • FIGURE 4 illustrates an exemplary method of applying a rule correlating the states one or more resources 110 to the operation of a business process 108 with which the resources 110 are associated.
  • application of rules within monitor engine 126 facilitates monitoring and management of business process 108 and associated resources 110.
  • the method begins at step 402, where state monitoring engine 128 receives, retrieves, or otherwise accesses one or more rules each relating business process 108 (or at least one of its sub-processes 112) to at least one resource 110.
  • state monitoring engine 128 may receive all rules for business process 108 at essentially the same time from business layer 130, shortly before business process 108 begins executing. However, state monitoring engine 128 may receive a subset of one or more rules shortly before corresponding sub-process 112 begins to execute or at any other suitable time.
  • An exemplary rule might specify that if a sub-process 112 has started and a particular resource 110 is not currently operating, then send a notification to user interface 138, execution environment 104, or systems manager 106, individually or in any appropriate combination.
  • the state monitoring engine 128 may preferably determine in advance whether resources 110 are satisfactory for anticipated execution of the sub-process 112.
  • this exemplary rule might be modified to trigger in response to an event associated with execution of a proceeding sub-process 112 (such as the proceeding sub-process 112 starting) , a specified lead time threshold being crossed (such as sixty seconds before the sub-process 112 is anticipated to start) , or any other suitable event, condition, or other trigger.
  • a customer promise transfer object might include the customer name, part number, requested quantity, and promise date.
  • An exemplary rule to be applied might specify that if the customer name is "Acme" and the customer promise is greater than a predetermined number of units, then send a notification to indicate that resources 110 for the order are insufficient.
  • the present invention contemplates application of any appropriate rule relating at least a portion of business process 108 to at least one resource 110 associated with its operation.
  • state monitoring engine 128 receives suitable state information for the sub-process 112 and for the particular associated resource 110 from business layer 130. At step 406, according to the state information for business process 108, state monitoring engine 128 determines whether sub-process 112 has started. At step 408, according to the state information for resource 110, state monitoring engine 128 determines whether resource 110 is currently operating. At step 404,
  • State monitoring engine 128 generates a notification event at step 412 and may communicate suitable notifications to user interface 138 at step 414, to execution environment 104 at step 416, and to systems manager 106 at step 418, individually or in any appropriate combination.
  • user interface 138 may modify one or more views 202 of display 200 at step 420.
  • execution environment 104 may temporarily stop sub- process 112 from executing, may slow down sub-process 112, may start a corrective sub-process 112, may delay one or more subsequent sub-processes 112, or may otherwise affect the operation of one or more sub- processes 112 of business process 108 in any suitable manner at step 422.
  • a corrective sub-process 112 might involve, as an example, starting an alternative resource 110 for execution of the monitored sub-process 112.
  • systems manager 106 may start the non-operating resource 110, start an alternative resource 110, initiate an e- mail, page, or other alert to a system administrator, or otherwise affect the operation of one or more resources 110 in any suitable manner at step 424.
  • state monitoring engine 128 may apply a rule more or less continuously until application is no longer appropriate, for example, until after sub-process has completed. Alternatively, state monitoring engine 128 may apply the rule initially and then not again until a state change relating to the rule is detected.

Abstract

A computer-implemented system (100) for monitoring and managing one or more business processes (150) and associated resources (160) includes a memory (132) that stores state information indicating the state of at least one business process (108), state information indicating the state of at least one resource (110) to be used during execution of the business process (108), and at least one rule relating the resource (110) to the business process (108). A monitor engine (126) accesses at least some of the state information, applies the rule according to the state information, and generates a notification if the state information is unsatisfactory according to the rule. The monitor engine (126) may determine the state of the business process (108) or resource (110) using the state information and, if the state is unsatisfactory, generate the notification to affect the state.

Description

COMPUTER- IMPLEMENTED SYSTEM AND METHOD FOR MONITORING AND MANAGING BUSINESS PROCESSES AND ASSOCIATED RESOURCES
TECHNICAL FIELD OF THE INVENTION
This invention relates generally to the field of computer systems and more specifically to a computer- implemented system and method for monitoring and managing business processes and associated resources.
BACKGROUND OF THE INVENTION
The increasing complexity of relationships among business processes and the resources needed to execute these processes has led to rising demand for improved systems and methods for monitoring and managing such processes and resources. In general, a business process includes a series of one or more activities or other sub- processes that may be executed in association with, for example, a business or other organization. Business processes typically require specified resources for execution, for example, supply chain planning engines or other applications, and often require such resources at specified times. Previous monitoring and management techniques, however, have not been satisfactory in efficiency and effectiveness.
Some previous systems may provide a way to monitor and manage resources but not the business processes that may use these resources . Other previous systems may provide the ability to monitor and manage individual business processes, but are unable to correlate resources to the processes. These systems are not able to identify resources that cannot satisfy business process demands in the context of the business process and, in response, take one or more suitable corrective measures. Moreover, these systems are not able to automatically gather and analyze information about execution of a business process, and about associated resources, and correlate them such that improvements may be suggested to the business process. These and other deficiencies have made prior monitoring and management systems inadequate for the needs of many businesses and other organizations.
SUMMARY OF THE INVENTION
According to the present invention, a computer- implemented system and method for monitoring and managing business processes and associated resources are provided that reduce or eliminate disadvantages and problems associated with prior systems and methods.
In accordance with one embodiment of the present invention, a computer-implemented system for monitoring and managing one or more business processes and associated resources includes a memory that stores state information indicating the state of at least one business process, state information indicating the state of at least one resource to be used during execution of the business process, and at least one rule relating the resource to the business process. A monitor engine accesses at least some of the state information, applies the rule according to the state information, and generates a notification if the state information is unsatisfactory according to the rule. In a more particular embodiment, the monitor engine may determine the state of the business process or resource using the corresponding state information and, if the state is unsatisfactory, generate the notification to affect the state.
The present invention provides a number of important technical advantages over previous systems . The present invention allows for effective monitoring and management of business processes and their associated resources, resulting in more efficient execution of the business processes . The system and method of the present invention apply suitable rules relating business processes to resources that are to be used for execution of the business processes. Such resources may include supply chain planning engines or other software applications, machines on which these applications run, or any other suitable resources. Rules may be used, for example, to identify in advance a resource that is not able to satisfy a business process demand and, in response, to notify a user using a display that visually conveys information concerning the business process and associated resources. In addition, one or more corrective actions may be taken to affect operation of the business process or the problem resource, potentially resolving the problem before it negatively impacts the business or at least reducing its negative effects. The present invention allows for automatic collection and analysis of statistical information about the execution of business processes and resources, which may be used to identify potential business process problems and suggest improvements. The present invention further allows different types of business processes and resources to be effectively monitored and managed, thereby allowing new business processes and resources to be more readily integrated into business operations. As a result of these and other important benefits, the system and method of the present invention are adapted for use in a variety of complex business operations and planning environments. Other important technical advantages will be readily apparent to one skilled in the art from the following figures, descriptions, and claims.
BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the present invention and for further features and advantages, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which:
FIGURE 1 illustrates an exemplary system for monitoring and managing business processes and associated resources;
FIGURE 2A illustrates an exemplary display including multiple perspective views;
FIGURE 2B illustrates an exemplary resource topology view; FIGURE 2C illustrates an exemplary business process overview;
FIGURE 2D illustrates an exemplary business process aggregate view;
FIGURE 2E illustrates an exemplary business process detailed view;
FIGURE 3 illustrates an exemplary method of monitoring and managing business processes and associated resources; and
FIGURE 4 illustrates an exemplary method of applying a rule relating one or more resources to an associated business process. DETAILED DESCRIPTION OF THE DRAWINGS
FIGURE 1 illustrates an exemplary system 100 for monitoring and managing business processes and associated resources. System 100 includes a monitor 102 in communication with one or more business process execution environments 104 and one or more systems managers 106. In general, monitor 102 links business processes 108 executing in execution environment 104 to resources 110 managed by systems manager 106. A business process may include any appropriate activity, procedure, method, operation, or workflow associated with at least a portion of a business or other organization. As an example, a manufacturing business might execute raw materials ordering, manufacturing, packaging, and shipping processes 108, among others. In one embodiment, each business process 108 may include a set of one or more sub-processes (SP) 112. For example, exemplary business process 108a may include no sub-processes 112, while exemplary business process 108b may include sub-processes 112a and 112b.
As an example illustrating advantages of the present invention, consider a company having several business processes 108, one of them being an e-fulfillment business process 108 that involves accepting web-based orders over the Internet and shipping goods to the customer to fulfill the orders. The customer may be given the opportunity to check the price and availability of the goods before placing the order. If the company does not have sufficient goods in stock to satisfy the order demand, the company may contact one of its suppliers and, based on the price and availability of goods at the supplier, quote a price and delivery date to the customer. Several applications would typically be required to execute this business process 108. For example, this business process 108 might require an order entry system, a demand fulfillment engine, a transportation planner, and a billing system, among others. In some cases, one or more persons may need to handle any exceptions associated with the business process. For every order placed, each of the required applications must be operable and operating - any down time may result in lost revenues.
In one embodiment , according to the present invention, if an order is received to initiate business process 108, monitor 102 may determine in advance whether the required applications are operable and operating such that the business process 108 may properly execute. For example, if a required application is not operable, then monitor 102 may take action to start another instance of that application, start an alternative application, or affect the operation of the business process 108 in some manner such that the effect of the application being unavailable is minimized. As another example, if a required application is operable but not currently operating, monitor 102 may take action to start the application such that the execution of the business process 108 is not hindered. Monitor 102 may perform these operations before business process 108 begins executing or at any other appropriate time, for example, immediately before affected applications are needed. In one embodiment, monitor 102 communicates with systems manager 106 to verify resource availability prior to or during business process execution and, in response, to start any necessary resources 110. These and other capabilities are not found in previous systems and provide a number of important technical advantages .
Monitor 102 may include one or more business process instrumentation (PI) interfaces 114 that facilitate communication between the monitor 102 and execution environment 104. In one embodiment, instrumentation may be defined as suitable functionality allowing business processes 108 to provide dynamic and, preferably, substantially real-time information to monitor 102 regarding the states of business processes 108. As an example, a business process 108 may be in a normal, problem, or failure state and may provide such information to monitor 102 during execution of business process 108, in substantially real-time, using the PI interface 114. In one embodiment, the PI interface 114 includes one or more application programming interfaces
(APIs) 116 and one or more associated adapters 118 for communicating with execution environment 104. Adapter
118 includes components appropriate to interact with executing business processes 108 to collect instrumentation data from business processes 108, for example, supporting appropriate connection mechanisms and communication protocols for communication with business process 108. Systems manager 106 manages or otherwise supports one or more resources 110 that may each include, for example, one or more physical machines, software components, or any other appropriate resources that perform tasks necessary for or otherwise associated with the execution of one or more business processes 108 and their sub-processes 112. In one embodiment, resources
110 may include suitable supply chain planning engines or other applications. For example only and not by way of limitation, exemplary resources 110 for business process 108 may include a demand planner, factory planner application, supply chain planner, and transportation planner applications. Resources 110 may additionally include computer systems and their components, such as central processing units (CPUs) , operating systems, and hard disks, that support the operation of such applications. Systems manager 106 may includes any suitable systems management tool or other component appropriate for the management of resources 110 and operable to communicate with monitor 102 for monitoring and management of resources 110.
Monitor 102 may also include one or more systems manager (SM) interfaces 120 that facilitate communication between monitor 102 and systems manager 106. Similar to PI interface 114, SM interface 120 may include one or more suitable APIs 122 and an adapter 124 for communicating with systems manager 106 and providing instrumentation for resources 110. API 122 may interface to one or more custom, proprietary, or other monitoring or management environments internal or external to systems manager 106. Adapter 124 includes components appropriate to interact with systems manager 106 to collect instrumentation data for resources 110, for example, supporting appropriate connection mechanisms and communications protocols. For example, API 122 and adapter 124 may cooperate to provide the monitor 102 with CPU, hard disk, and memory utilization information for a physical resource 160 that is being monitored. Systems manager 106 may provide polling of resources 160 to determine when specified thresholds are crossed and responsive warnings, alerts, or other notification events (depending on the threshold) should be communicated to monitor 102.
Monitor 102 includes a monitor engine 126 that monitors the states, health, condition, or other suitable property of business processes 108 and their associated resources 110, applying rules that define appropriate relationships among business processes 108 and resources 110. Monitor engine 126 receives information about business processes 108 (including sub-processes 112) , information about resources 110, and one or more rules relating the business processes 108 to the resources 110. In one embodiment, monitor engine 126 includes a state monitoring engine 128, a business layer 130, and a memory 132. The state monitoring engine 128 uses the information received using PI interface 114 and SM interface 120 to monitor the states of business processes 108 (including any sub-process 112) and resources 110, respectively. Business layer 130 receives notifications of state changes for business processes 108 (using PI interface 114) and for resources 110 (from systems manager 106 using SM interface 120) and communicates the notifications to state monitoring engine 128. Business layer 130 also communicates one or more previously defined rules to the state monitoring engine 128 that define actions monitor engine 126 is to take upon the occurrence of specified events or the existence of specified conditions that occur during execution of business processes 108. Rules affecting a business process 108 may be communicated as part of or otherwise in association with an execution plan for the business process 108. In one embodiment, an execution plan for business process 108 may include, in any combination and without limitation: (1) expected elapsed time for business process 108; (2) attribute and state definitions for business process 108; (3) expected elapsed time for one or more activities or other appropriate sub-processes 112 of business process 108; (4) attribute and state definitions for activities or other sub-processes 112;
(5) attribute and state definitions for transfer objects that are passed between activities or sub-processes 112;
(6) an expected order of the traversal between states for business process 108; (7) definitions of one or more exception conditions; (8) definitions of one or more actions monitor 102 is to take in response to each exception condition; and (9) any other suitable information. In one embodiment, a rule may incorporate any suitable information in an execution plan; for example, a definition of an exception condition (such as a required resource 110 not currently operating) along with a definition of a responsive action (start the required resource 110) may constitute a rule. Sub- processes 112 may be linked to one another in any suitable manner, according to information contained in associated transfer objects or otherwise. For example, a web order transfer object may contain a customer name, part number, and requested quantity. A sub-process 112 might receive the transfer object and access this information for its execution (possibly changing, adding to, deleting from, or otherwise modifying the information as appropriate) .
** As an example, a relatively simple execution plan may specify that business process 108 enters an execution state. A first activity then enters an execution state and completes successfully. In response, a transfer object is created and successfully communicated to a second activity linked to the first activity. The second activity enters an execution state, accesses the transfer object, and completes successfully to successfully complete business process 108. One or more rules may define those actions to be taken in response to problems or other exception conditions associated with execution of this plan. Typically, execution plans are much more complex than this, for example, including a large number of activities and incorporating complex states based on attribute values, incorporating exception conditions, and incorporating complex logic to evaluate correlations of states to a variety of objects and generate exceptions as suitable. The present invention contemplates an execution plan for a business process 108 incorporating any appropriate information to guide its execution and facilitate its monitoring within system 100, according to particular needs.
State monitoring engine 128 stores state information for business processes 108 and resources 110 in memory 132 and, if appropriate, in database 134. Although state monitoring engine 128 is described above as receiving certain information from business layer 130, state monitoring engine 128 may instead access memory 132 to access information that business layer 130 stores in memory 132. Database 134 contains historical data, statistical data, or other suitable information concerning the monitoring and management of the business processes 108 and resources 110. For example only and not by way of limitation, database 134 may contain statistical data, compiled over a period of time, concerning business process bottlenecks that may be analyzed to suggest suitable business process improvements. Database 134 may be integral to or separate from memory 132. Monitor engine 126 may allow memory 132, database 134, or both memory 132 and database 134 to be queried for any appropriate stored information concerning the business processes 108 and associated resources 110. In one embodiment, older or any other selected information may be periodically or otherwise deleted from database 134 as appropriate.
Monitor 102 also includes a communication API 136 supporting a web-based or other user interface 138 for communicating with users of system 100. API 136 provides the ability to send and receive logical events, map logical events to and from physical events, and may support any other suitable event-related functionality. As described below with reference to FIGURES 2A-2E, user interface 138 may provide a display that includes multiple perspective views of one or more business processes 108 in execution environment 104, along with any suitable information concerning related resources 110.
Although a single monitor 102, a single execution environment 104, and a single systems manager 106 are shown, the present invention contemplates one or more monitors 102 sequentially, simultaneously, or otherwise interacting with one or more execution environments 104 and one or more systems managers 106 according to particular needs. Monitor 102, execution environment 104, and systems manager 106 may be integral to or separate from one another; may communicate using one or more local area networks (LANs) , metropolitan area networks (MANs) , wide area networks (WANs) , a global data communications network such as the Internet, or any other suitable networks; and may each operate on one or more computer systems at one or more locations, as appropriate .
In operation, business process 108 is defined and a suitable execution plan including one or more rules is stored within business layer 130. At an appropriate time, business process 108 begins executing within execution environment 104 and a control event is communicated from execution environment 104 to monitor engine 126 of monitor 102. In one embodiment, the control event may include, for example, a name of the business process 108 being executed, the type of business process 108 being executed, and an identifier of the particular instance of business process 108 being executed. In response to the control event, state monitoring engine 128 obtains the previously defined execution plan for that business process 108, including one or more appropriate rules, from the business layer 130 and begins monitoring business process 108 and associated resources 110. Monitor 102 and execution environment 104 may communicate any appropriate information during execution of business process 108, for example, state information, activity information, and other suitable instrumented data.
Monitor engine 126 receives state information for the business process 108 (including sub-processes 112) from execution environment 104 using PI interface 114. Monitor engine 126 also receives state information for one or more resources 110 associated with the business process 108 from systems manager 106 using SM interface 120. In one embodiment, systems manager 106 may communicate initial state information for resources 110 and thereafter communicate state information in response to each change in state for each resource 110. Business layer 130 receives the state information and communicates it to state monitoring engine 128, which as described above is monitoring business process 108 and associated resources 110. According to this monitoring and the execution of business process 108, monitor engine 126 may apply one or more rules relating resources 110 to business process 108. Monitor 102 may send suitable control events to execution environment 104, according to its application of these rules, to cause execution environment to stop business process 108, restart business process 108, or otherwise affect operation of business process 108. Also according to application of these rules, instead of or in addition to communicating with execution environment 104 about business process 108, monitor 102 may communicate with systems manager 106 to start a not yet operating resource 110, restart a previously failed resource 110, start an alternative resource 110, or otherwise affect operation of one or more suitable resources 110 according to the needs of business process 108.
For example, business layer 130 might receive state information indicating that business process 108 has started, a first resource 110 is not operable, and a second resource 110 is operable but is not currently operating. A rule may specify that if business process 108a has started and first resource 110 is not operable, send notifications to the user interface 138 for display, to execution environment 104 for initiation of an appropriate responsive measure, or to the systems manager 106 for initiation of an appropriate responsive measure, singly or in any combination. The state monitoring engine 128 receives the state information from the business layer 130, applies the rule, and in response causes the specified notifications to be sent. Another rule might state that if business process 108a has started and a second resource is not currently operating, automatically start a third resource if possible. The state monitoring engine 128 applies the rule's condition according to the state information and monitor 102 sends a notification to business layer 130, which then invokes the rule's specified action and sends an instruction to systems manager 106 to start the third resource 110. The correlation of business processes 108 and resources 110 according to the present invention, using one or more appropriate rules forming part of a business process execution plan, provides an important technical advantage.
FIGURE 2A illustrates an exemplary display 200 generated using web-based or other user interface 138 and including multiple views 202. Each view provides information concerning execution environment 104, one or more business processes 108 within execution environment 104, one or more resources 110 associated with systems manager 106, or any suitable combination of the above. Although a three-dimensional display 200 is illustrated including three simultaneous views 202, the display 200 may have any suitable number of dimensions and include any suitable number of views 202, according to particular needs. For example, display 200 might be a one- dimensional "flat" display 200 that includes multiple views 202 that each have a corresponding panel within display 200. Display 200 may include any suitable views 202, arranged in any appropriate manner, without departing from the intended scope of the present invention.
In one embodiment, each of the views 202 is a perspective view providing information concerning an associated aspect of execution environment 104, one or more business processes 108, or one or more resources 110. For example only and not by way of limitation, views 202 may include: (1) one or more views 202 each reflecting the topology, health, and other appropriate characteristics of one or more business processes 108; (2) one or more views 202 that each reflect the topology, health, and other characteristics of one or more physical, logical, or other resources 110; (3) one or more views 202 reflecting historical, current, or projected statistical information concerning one or more business processes 108, one or more resources 110, or any combination of business processes 108 and resources 110; and (4) any other appropriate views 202. Perspective views 202 may be correlated such that a selection or other input received with respect to a first view 202 may cause one or more other views 202 to be concurrently updated or otherwise modified to reflect the selection or other input .
In the illustrated embodiment, user interface 138 provides resource topology view 202a, business process overview 202b, and business process aggregate view 202c simultaneously within a three-dimensional display 200. FIGURE 2B illustrates an exemplary resource topology view 202a providing performance data for one or more resources 110 currently being monitored. For example only and not by way of limitation, resource topology view 202 may use indicators 204 within or otherwise associated with icons 206 to display performance data for corresponding planning engines or other applications currently being monitored. The indicators 204 may include any suitable bar graphs, pie charts, or other suitable indicators 204 within or otherwise associated with icons 206 and may convey data according to their color, shading, shape, or any other suitable indicia.
User interface 138 may provide further, perhaps more detailed, performance data for a particular resource 110 in response to the user selecting the icon 206 representing the resource 110 using a mouse pointer, touch screen, or in any other suitable manner. A resulting pop-up display 208 for the selected resource 110 may provide performance statistics, graphs, or other data for resource 110. For example only and not by way of limitation, display 208 might provide the CPU utilization, available memory, response time, and expected response time for the resource 110. These performance parameters might indicate that the CPU utilization is high, free memory is low, and the expected duration of a transaction or operation involving resource 110 been exceeded. Topology view 202 may provide any suitable visual, audible, or other cues to inform the user of critical events or conditions concerning resource 110. As an example, if a factory planner application becomes wholly or partially inoperative, the color of at least a portion of a corresponding icon 206 or indicator 204 might change from green to red. An e-mail, page, or other alert might be communicated to a system administrator or another appropriate control device. Moreover, topology view 202 may allow the user to perform suitable management operations with respect to monitored resources 110. For example, the user may be permitted to start or stop resources 110 (using pop-up display 208 or otherwise) , to access error logs concerning resources 110 for trouble shooting, or perform any other suitable management activities relating to resources 110. FIGURE 2C illustrates an exemplary business process overview 202b that provides information concerning one or more business processes 108 executing in execution environment 104. Business process overview 202b indicates the status of one or more business processes 108 being monitored, allowing the user to readily assess the overall performance of business processes 108, perhaps across multiple instances of each business process 108. For example only and without limitation, business process overview 202b may provide information for an order fulfillment process 108e, an inventory inquiry process 108h, an order request process 108j , a procurement process 1081, and a promise item process 108m, among others. The business process overview 202b may identify or use a suitable scale to indicate the number of instances of each business process 108 that are currently executing, for example, the number of promise item processes 108m currently executing. The user may be able to select a particular instance to obtain more detailed information for that instance, as described more fully below with reference to FIGURE 2E.
Business process overview 204 may provide suitable state information for each business processes 108, for example, providing the percentage of instances of business process 108 that are in normal, warning, alert, or failure states. This state information may be provided using color, shading, shape or other suitable indicia. For example, a portion of a bar, banner, box, or other region 210 within overview 202b associated with business process 108 may indicate the percentage of business process instances in the corresponding state. In a particular embodiment, a gray portion 212a might indicate the percentage of instances in a normal state, a yellow portion 212b might indicate the percentage of instances in a delayed or other warning state, and a red portion 212c might indicate the percentage of instances in an alert state. If the user sees that 1000 instances of a particular business process 108 are executing and region 210 is entirely gray, the user readily determines that no action may be necessary. On the other hand, if fifty percent of region 210 is yellow (fifty percent of the 1000 instances are in a delayed or other warning state) and twenty percent of region 210 is red (twenty percent of the 1000 instances are in an alert state) , the user may readily determines that immediate corrective measures may be necessary.
The rules specifying what constitutes a particular state of a business process instance may be defined in any suitable manner, according to particular needs. For example, an exemplary rule might specify that if the actual duration of an activity exceeds the expected duration of the activity, communicate a notification that results in a visual indicator within business process overview 202b. As a more particular example, fulfillment process 108e might have associated rules specifying that if an order is shipped within forty-eight hours, then process 108e is in a normal state; if the order is shipped between forty-eight and seventy-two hours, then process 108e is in a warning state; if the order is shipped between seventy-two and ninety-six hours, then process 108e is in a critical state; and if the order is shipped in over ninety-six hours, then process 108e is in a failure state. Suitable notifications may be communicated accordingly. State monitoring engine 128 processes the state information according to these rules, which it receives from business layer 130, as fulfillment process 108e executes in execution environment 104 during operation of system 100.
FIGURE 2D illustrates exemplary business process aggregate view 202c that includes one or more activities or other sub-processes 112 of business process 108, such as fulfillment process 108e described above, arranged in the logical sequence corresponding to execution of fulfillment process 108e. Each sub-process 112 may involve one or more tasks, for example, getting a quote from a fulfillment engine application, sending an order to a transportation manager application, or sending data to a factory planner application. In one embodiment, the sub-processes 112 for the fulfillment process 108e may include web order sub-process 112a, price check sub- process 112b, product availability sub-process 112c, order product sub-process 112d, warehouse management system sub-process 112e, transport parts sub-process 112f, receive parts sub-process 112g, shipping receive parts sub-process 112h, ship product sub-process 112i, invoice sub-process 112j , and e-mail invoice sub-process 112k, in any appropriate combination and without limitation.
Aggregate view 202c displays the aggregate status of a particular business process 108, considering all of its activities or other sub-processes 112. For each of these sub-processes 112, aggregate view 202c may indicate the number of instances of the sub-process 112 that are at that particular sub-process 112. Aggregate view 202c may do so using text, color, shading, shape, or any suitable indicia associated with icon 214 for that sub-process 112. A relatively large number of instances of business process 108 at a sub-process 112 may indicate a bottleneck at that sub-process 112 for business process 108 and thus an actual or potential problem. For example only and not by way of limitation, if a bottleneck is at an activity requiring manager approval to complete, then the manager may be failing to adequately perform his or her duties. If the bottleneck is at an activity requiring a quote to be obtained from a third-party fulfillment engine application, then it may be desirable to replace that third-party application. If the bottleneck is at an activity requiring a response from a particular resource 110, then that resource 108 may not be operating. The present invention contemplates any appropriate condition or event being indicated according to the number of instances of business process 108 that are currently at a particular sub-process 112.
As an example illustrating advantages of the present invention in connection with display 200, assume the goods for an order are expected to be shipped on or before the promised ship date. Business process overview 202b might indicate that two percent of e-fulfillment business processes 108 have exceeded their expected duration for execution (meaning the promised ship dates have passed but the goods for the orders have not yet been shipped) . Business process aggregate view 202c might indicate that all such business processes instances are waiting on parts from external suppliers. As a result, a user within the company is able to readily identify where the bottleneck has occurred and take action to address the problem. In one embodiment, business process overview 202b and business process aggregate view 202c are displayed simultaneously within display 200, such that the user may more readily appreciate these relationships.
In response to the user selecting a particular business process 108 using the business process overview 202b, user interface 138 may display a business process detailed view 202d, as illustrated in FIGURE 2E. Detailed view 202d displays the current state of at least a portion of the selected business process 108, for example, which activities have already executed; which activity is currently executing; which activities remain to be executed; the expected duration for each activity; the actual duration for executed or executing activity; any warning, alert, or other appropriate notifications for one or more particular activities for which corresponding rules have been defined; and any other suitable information for sub-processes 112 of selected business process 108.
The user may brush over, point to, click on, or otherwise select a particular sub-process 112 to obtain more detailed information for that sub-process 112. A resulting pop-up display 216 may provide, for example, the expected and the actual durations of sub-process 112 and any warning, alert, or other notifications for sub- process 112. The user may similarly select a link 218 between sub-processes 112 to view the content of information passing through that portion of the business process 108, for example, order information including an order number, order quantity, and order amount. In one embodiment, the user may query for a specific data element. For example, if the user searches for a particular order number, one or more business process instances pertaining to that order may be displayed using detailed view 202d to illustrate where in business process 108 the corresponding order is.
As another example illustrating technical advantages of the present invention in connection with display 200, assume the company has had several of its machines applications, or other resources 110 fail and would like to determine which of these failed systems to bring up first to minimize its lost revenues. Using business process overview 202b, the user may brush over, point to, click on, or otherwise select the e-fulfillment business process 108 to view a list of applications on which business process 108 depends (and the machines on which these applications run) . This information may be provided using business process detailed view 202d or in any other suitable manner. According to this information, the user may bring up more critical applications before less critical applications, possibly avoiding further lost revenue. These and other capabilities are not found in prior systems and provide a number of important technical advantages over such systems . FIGURE 3 illustrates an exemplary method of managing business processes 108 and associated resources 110. In this particular example, monitor 102 monitors and manages exemplary e-fulfillment process 108e that executes within execution environment 104 and one or more associated resources 110 associated with systems manager 106. Although monitoring and management of fulfillment process 108e is described, any appropriate business process 108 may of course be monitored and managed without departing from the intended scope of the present invention. The method begins at step 302, where the fulfillment process 108 (including one or more of its sub-processes 112 described above with reference to FIGURE 2D) is defined according to input from the user. Fulfillment process 108e may be defined using hypertext markup language
(HTML) , extensible markup language (XML) , or in any other suitable format. An appropriate execution plan for business process 108 is defined at step 304 and, at step
306, stored in business layer 130 of monitor engine 126. The execution plan may be stored in business layer 130 immediately prior to execution of business process 108 or at any other time. As described above, the execution plan may include, among other information, one or more transfer objects including data to be passed between sub- processes 112 and one or more rules to be applied according to the operation of business process 108.
At step 308, the business process 108 begins executing within the execution environment 104 and, at step 310, the execution environment 104 communicates an appropriate control event to monitor engine 126 of monitor 102 using PI interface 114. In one embodiment, the control event may include, for example, a name of the business process 108 being executed, the type of the business process 108 being executed, and an identifier of the particular instance of business process 108 being executed. At step 312, in response to the control event, state monitoring engine 128 of monitor 102 obtains the previously defined execution plan for business process 108, including one or more transfer objects and one or more rules, from the business layer 130. At step 314, state monitoring engine 128 begins monitoring the business process 108 and its associated resources 110. At any appropriate time during the execution of business process 108, monitor 102 may communicate information with execution environment 104 and systems manager 106, including for example state information, activity information, and any other suitable instrumented data. At step 316, as described more fully above with reference to FIGURES 2A through 2E, the user interface 138 begins to generate displays 200 to provide the user with suitable information concerning business process 108 and associated resources 110.
At step 318, a first of possibly multiple sub- processes 112 of the business process 108 begins executing in execution environment 104. This event may be essentially the same as or may occur substantially simultaneously with the business process 108 beginning to execute. At step 320, the sub-process 112 accesses (and possibly modifies) one or more transfer objects. For example, and not by way of limitation, a web order sub- process 112 that executes in response to a web order received over the Internet may include a web order transfer object that contains the customer name, part number, and requested quantity for the order. A transfer object may be included in or otherwise associated with a sub-process 112 as a result of the initial definition of the sub-process 112. Alternatively, the transfer object may be included in the stored execution plan and communicated to sub-process 112 from business layer 130 of monitor engine 126.
Business layer 130 receives state information for the business process 108 (including sub-processes 112) from execution environment 104 at step 322 using PI interface 114. Business layer 130 also receives state information for one or more resources 110 that are associated with business process 108 from systems manager 106 at step 324 using SM interface 120. In one embodiment, systems manager 106 may communicate initial state information for resources 110 being monitored and subsequently communicate state information in response to a change in state for a monitored resource 110. Business layer 130 may store the information in memory 132 and possibly database 134 at step 326. Business layer 130 communicates the state information to the state monitoring engine 128 at step 328, which as described above is monitoring business process 108 and associated resources 110. Business layer 130 may begin to receive and then communicate state information for business process 108 and resources 110 at any suitable time before, during, or after business process 108 or its first sub-process 112 begin executing.
According to its monitoring and the execution of the business process 108, monitor engine 126 may apply one or more rules relating resources 110 to business process 108 at step 330. Application of a rule is described more fully below with reference to FIGURE 4. At step 332, monitor 102 may send one or more control events to execution environment 104, according to application of the rules, to cause execution environment to stop business process 108 or the sub-process 112, restart business process 108 or the sub-process 112, or otherwise affect the operation of business process 108 or the sub- process 112. At step 334, also according to the application of the rules, instead of or in addition to communicating with execution environment 104, monitor 102 may communicate with systems manager 106 to start one or more not yet operating resources 110, restart one or more previously failed resources 110, start one or more alternative resources 110, or otherwise affect the operation of one or more resources 110 according to the needs of business process 108 and sub-process 112.
If sub-process 112 and business process 108 are both complete at step 336, monitor engine 126 modifies one or more transfer objects as appropriate and then communicates one or more of these transfer objects to the next sub-process 112 at step 338. Using the above example involving a web order transfer object, a price check sub-process 112 that executes subsequent to the web order sub-process 112 might need some or all of the information contained in the web order transfer object to execute. Accordingly, web order sub-process 112 communicates the web order transfer object to the price check sub-process 112 to provide this information. The method then returns to step 318, where the next sub- process 112 (price check sub-process 112 in the example) begins executing, and step 320, where the next sub- process 112 accesses one or more suitable transfer objects. Although transfer objects for first sub-process 112 are described as being included in or otherwise associated with first sub-process 112, and transfer objects for next sub-process 112 are described as being received from first sub-process 112, the present invention contemplates a sub-process 112 accessing any suitable transfer objects at step 320. For example, a next sub-process 112 may include a transfer object as a result of its initial definition, may receive a transfer object from a proceeding sub-process 112, may receive a transfer object from another previous sub-process 112, or may access one or more transfer objects in any suitable manner to access appropriate information.
Monitor 102 and it components continue to receive state information, apply rules as appropriate, and generate suitable displays 200 while the business process 108 is executing. If sub-process 112 and business process 108 are both complete at step 336, the execution environment 104 communicates a control event to monitor engine 126 at step 340. In response, at step 342, state monitoring engine 128 ceases monitoring the business process 108 and associated resources 110, and the method ends. Although monitoring and management of a single business process 108 (and associated resources 110) is described, monitor 102 may monitor and manage any suitable number of business processes 108 (and associated resources 110) serially, simultaneously, or in any other manner .
FIGURE 4 illustrates an exemplary method of applying a rule correlating the states one or more resources 110 to the operation of a business process 108 with which the resources 110 are associated. In general, as described above, application of rules within monitor engine 126 facilitates monitoring and management of business process 108 and associated resources 110. The method begins at step 402, where state monitoring engine 128 receives, retrieves, or otherwise accesses one or more rules each relating business process 108 (or at least one of its sub-processes 112) to at least one resource 110. In one embodiment, state monitoring engine 128 may receive all rules for business process 108 at essentially the same time from business layer 130, shortly before business process 108 begins executing. However, state monitoring engine 128 may receive a subset of one or more rules shortly before corresponding sub-process 112 begins to execute or at any other suitable time.
For purposes of illustration, and not by way of limitation, application of an exemplary rule is described. An exemplary rule might specify that if a sub-process 112 has started and a particular resource 110 is not currently operating, then send a notification to user interface 138, execution environment 104, or systems manager 106, individually or in any appropriate combination. As described above, the state monitoring engine 128 may preferably determine in advance whether resources 110 are satisfactory for anticipated execution of the sub-process 112. In that case, this exemplary rule might be modified to trigger in response to an event associated with execution of a proceeding sub-process 112 (such as the proceeding sub-process 112 starting) , a specified lead time threshold being crossed (such as sixty seconds before the sub-process 112 is anticipated to start) , or any other suitable event, condition, or other trigger. As another example (not explicitly described in connection with the described method) , a customer promise transfer object might include the customer name, part number, requested quantity, and promise date. An exemplary rule to be applied might specify that if the customer name is "Acme" and the customer promise is greater than a predetermined number of units, then send a notification to indicate that resources 110 for the order are insufficient. The present invention contemplates application of any appropriate rule relating at least a portion of business process 108 to at least one resource 110 associated with its operation.
At step 404, state monitoring engine 128 receives suitable state information for the sub-process 112 and for the particular associated resource 110 from business layer 130. At step 406, according to the state information for business process 108, state monitoring engine 128 determines whether sub-process 112 has started. At step 408, according to the state information for resource 110, state monitoring engine 128 determines whether resource 110 is currently operating. At step
410, if sub-process 112 has started and the resource 110 is currently operating, then no notification is mandated according to the exemplary rule and the method ends. However, if sub-process 112 has started and the resource 110 is not currently operating at step 410, then a notification is mandated according to the exemplary rule. State monitoring engine 128 generates a notification event at step 412 and may communicate suitable notifications to user interface 138 at step 414, to execution environment 104 at step 416, and to systems manager 106 at step 418, individually or in any appropriate combination. In response to the notification communicated at step 414, user interface 138 may modify one or more views 202 of display 200 at step 420. For example, user interface 138 might cause the color of an icon corresponding to sub-process 112 to change to red to indicate the problem. In response to the notification communicated at step 416, execution environment 104 may temporarily stop sub- process 112 from executing, may slow down sub-process 112, may start a corrective sub-process 112, may delay one or more subsequent sub-processes 112, or may otherwise affect the operation of one or more sub- processes 112 of business process 108 in any suitable manner at step 422. A corrective sub-process 112 might involve, as an example, starting an alternative resource 110 for execution of the monitored sub-process 112. In response to the notification communicated at step 418, systems manager 106 may start the non-operating resource 110, start an alternative resource 110, initiate an e- mail, page, or other alert to a system administrator, or otherwise affect the operation of one or more resources 110 in any suitable manner at step 424. Once responsive measures have been initiated, the method ends. In one embodiment, state monitoring engine 128 may apply a rule more or less continuously until application is no longer appropriate, for example, until after sub-process has completed. Alternatively, state monitoring engine 128 may apply the rule initially and then not again until a state change relating to the rule is detected.
Although several embodiments of the invention and their advantages are described in detail, a person skilled in the art could make various alterations, additions, and omissions without departing from the spirit and scope of the present invention as defined by the appended claims .

Claims

WHAT IS CLAIMED IS
1. A computer- implemented system for monitoring and managing one or more business processes and associated resources, comprising: a memory operable to store: state information indicating the state of at least one business process ; state information indicating the state of at least one resource to be used during execution of the business process; and at least one rule relating the resource to the business process; and a monitor engine operable to access at least some of the state information, to apply the rule according to the state information, and to generate a notification if the state information is unsatisfactory according to the rule .
2. The system of Claim 1, wherein the monitor engine is further operable to: determine the state of the business process using the state information; and if the state of the business process is unsatisfactory, generate the notification to affect the state of the business process.
3. The system of Claim 2, wherein at least a portion of the business process is started in response to the notification.
4. The system of Claim 1, wherein the monitor engine is further operable to: determine the state of the resource using the state information; and if the state of the resource is unsatisfactory, generate the notification to affect the state of the resource.
5. The system of Claim 4, wherein the resource is started in response to the notification.
6. The system of Claim 1, wherein the monitor engine is further operable to: determine the state of the resource using the state information; and if the state of the resource is unsatisfactory, generate the notification to affect the state of an alternative resource.
7. The system of Claim 6, wherein the alternative resource is started in response to the notification.
8. The system of Claim 1, wherein the business process comprises one or more sub-processes, the state information indicates the state of each sub-process, and the rule relates at least one resource to each sub- process.
9. The system of Claim 8, wherein the memory is operable to store an execution plan comprising: the rules for the business process; and one or more transfer objects each operable to communicate information from one sub-process to another sub-process during execution of the business process.
10. The system of Claim 1, further comprising: a first instrumentation interface coupling the monitor engine to an execution environment within which the business process is executed; and a second instrumentation interface coupling the monitor engine to a systems manager for managing the resource .
11. The system of Claim 1, wherein the monitor engine is further operable to store information about the execution of the business process in a database for purposes of statistical analysis.
12. The system of Claim 1, further comprising a user interface operable to generate a visual display comprising at least one view of the business process, the user interface operable to indicate within the view and in response to the notification that the state information is unsatisfactory according to the rule.
13. The system of Claim 1, further comprising the computer system on which the monitor engine operates.
14. A computer- implemented method of monitoring and managing one or more business processes and associated resources, comprising: storing : state information indicating the state of at least one business process; state information indicating the state of at least one resource to be used during execution of the business process; and at least one rule relating the resource to the business process; accessing at least some of the state information; applying the rule according to the state information; and generating a notification if the state information is unsatisfactory according to the rule.
15. The method of Claim 14, further comprising: determining the state of the business process using the state information; and if the state of the business process is unsatisfactory, generating the notification to affect the state of the business process.
16. The method of Claim 15, further comprising starting at least a portion of the business process in response to the notification.
17. The method of Claim 14, further comprising: determining the state of the resource using the state information; and if the state of the resource is determined to be unsatisfactory, generating the notification to affect the state of the resource.
18. The method of Claim 17, further comprising starting the resource in response to the notification.
19. The method of Claim 14, further comprising: determining the state of the resource using the state information; and if the state of the resource is determined to be unsatisfactory, generating the notification to affect the state of an alternative resource.
20. The method of Claim 19, further comprising starting the alternative resource in response to the notification.
21. The method of Claim 14, wherein the business process comprises one or more sub-processes, the state information indicates the state of each sub-process, and the rule relates at least one resource to each sub- process .
22. The method of Claim 21, further comprising storing an execution plan that includes: the rules for the business process; and one or more transfer objects each operable to communicate information from one sub-process to another sub-process during execution of the business process.
23. The method of Claim 14, further comprising: using a first instrumentation interface to communicate between the monitor engine and an execution environment within which the business process is executed; and using a second instrumentation interface to communicate between the monitor engine and a systems manager for managing the resource .
24. The method of Claim 14, further comprising storing information about execution of the business process in a database for purposes of statistical analysis .
25. The method of Claim 14, further comprising: generating a visual display including at least one view of the business process; and indicating within the view and in response to the notification that the state information is unsatisfactory according to the rule.
26. Software embodied in a computer-readable medium and operable to: store : state information indicating the state of at least one business process; state information indicating the state of at least one resource to be used during execution of the business process; and at least one rule relating the resource to the business process; access at least some of the state information; apply the rule according to the state information; and generate a notification if the state information is unsatisfactory according to the rule.
27. The software of Claim 26, further operable to: determine the state of the business process using the state information; and if the state of the business process is unsatisfactory, generate the notification to affect the state of the business process.
28. The software of Claim 27, further operable to start at least a portion of the business process in response to the notification.
29. The software of Claim 26, further operable to: determine the state of the resource using the state information; and if the state of the resource is unsatisfactory, generate the notification to affect the state of the resource .
30. The software of Claim 29, further operable to start the resource in response to the notification.
31. The software of Claim 26, further operable to: determine the state of the resource using the state information; and if the state of the resource is unsatisfactory, generate the notification to affect the state of an alternative resource.
32. The software of Claim 31, further operable to start the alternative resource in response to the notification.
33. The software of Claim 26, wherein the business process comprises one or more sub-processes, the state information indicates the state of each sub-process, and the rule relates at least one resource to each sub- process .
34. The software of Claim 33, further operable to store an execution plan comprising: the rules for the business process; and one or more transfer objects each operable to communicate information from one sub-process to another sub-process during execution of the business process.
35. The software of Claim 26, further operable to: use a first instrumentation interface to communicate between the monitor engine and an execution environment within which the business process is executed; and use a second instrumentation interface to communicate between the monitor engine and a systems manager for managing the resource .
36. The software of Claim 26, further operable to store information about execution of the business process in a database for purposes of statistical analysis.
37. The software of Claim 26, further operable to: generate a visual display including at least one view of the business process; and indicate within the view and in response to the notification that the state information is unsatisfactory according to the rule.
38. A computer-generated display associated with a system for monitoring and managing business processes and associated resources, comprising: a view concerning at least a portion of at least one business process, the view operable to reflect application of a rule relating the business process to one or more resources to be used in the execution of the business process, the rule being applied according to a state of at least the portion of the business process, the view further operable to indicate whether the state is satisfactory according to the rule.
39. The display of Claim 38, further comprising at least a second view concerning at least the portion of the business process and reflecting application of the rule, wherein: the first and second views are displayed simultaneously; and a change in state reflected in the first view is also substantially immediately reflected in the second view.
40. The display of Claim 38, wherein the view concerns multiple business processes executing in an execution environment, the view operable to indicate the number of instances of a particular business process that are in a particular state.
41. The display of Claim 38, wherein the view concerns multiple sub-processes of the business process, the view comprising an icon for each sub-process, the icons arranged in a logical sequence according to relationships between the sub-processes, the view operable to indicate using the icons the number of instances of the business process that are currently at a particular sub-process.
42. The display of Claim 38, wherein the view concerns multiple sub-processes of the business process, the view comprising an icon for each sub-process, the icons arranged in a logical sequence according to relationships between the sub-processes, the view operable to indicate using the icons which sub-processes have executed, which sub-processes are executing, and which sub-processes remain to be executed.
43. The display of Claim 42, wherein the view further comprises a pop-up display generated in response to a user selecting an icon for a sub-process, the pop-up display indicating expected and actual durations for the sub-process .
43. The display of Claim 42, wherein the view further comprises a link between at least two sub- processes, the view operable to indicate the content of the information passing between the sub-processes in response to a user selecting the link.
44. The display of Claim 38, further comprising a resource topology view providing performance information for one or more resources being monitored, the first view comprising an icon for each resource.
45. The display of Claim 44, wherein each icon comprises one or more indicia that reflect performance data for the associated resource.
46. The display of Claim 44, wherein the view further comprises a pop-up display generated in response to a user selecting an icon for a resource, the pop-up display providing performance data for the resource.
PCT/US2000/024296 1999-10-08 2000-08-31 Computer-implemented system and method for monitoring and managing business processes and associated resources WO2001027762A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU71120/00A AU7112000A (en) 1999-10-08 2000-08-31 Computer-implemented system and method for monitoring and managing business processes and associated resources

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US15850299P 1999-10-08 1999-10-08
US60/158,502 1999-10-08
US63949100A 2000-08-15 2000-08-15
US09/639,491 2000-08-15

Publications (1)

Publication Number Publication Date
WO2001027762A1 true WO2001027762A1 (en) 2001-04-19

Family

ID=26855093

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/024296 WO2001027762A1 (en) 1999-10-08 2000-08-31 Computer-implemented system and method for monitoring and managing business processes and associated resources

Country Status (2)

Country Link
AU (1) AU7112000A (en)
WO (1) WO2001027762A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003038682A1 (en) * 2001-10-31 2003-05-08 Vitria Technology, Inc. Real time business process analysis method and apparatus
US6931392B1 (en) 1998-12-07 2005-08-16 Vitria Technology, Inc. Real-time decision support system
EP1581897A1 (en) * 2002-12-12 2005-10-05 Sap Ag Scheduling tasks across multiple locations
WO2006015935A2 (en) * 2004-08-10 2006-02-16 International Business Machines Corporation System and method for automatically discovering and grouping resources used by a business process
EP1674988A2 (en) * 2004-12-23 2006-06-28 International Business Machines Corporation A monitor for an information technology system
US20090055770A1 (en) * 2007-08-21 2009-02-26 Oracle International Corporation Navigation systems with event notification
US7630955B2 (en) 2004-08-10 2009-12-08 International Business Machines Corporation Apparatus, system, and method for analyzing the association of a resource to a business process
US7661135B2 (en) 2004-08-10 2010-02-09 International Business Machines Corporation Apparatus, system, and method for gathering trace data indicative of resource activity

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4807108A (en) * 1987-08-10 1989-02-21 American Telephone And Telegraph Company, At&T Bell Laboratories Product realization method
US5408519A (en) * 1993-01-19 1995-04-18 Teledebit, L.P. Telecommunications system having a local area network with concurrently processing nodes
US5826239A (en) * 1996-12-17 1998-10-20 Hewlett-Packard Company Distributed workflow resource management system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4807108A (en) * 1987-08-10 1989-02-21 American Telephone And Telegraph Company, At&T Bell Laboratories Product realization method
US4807108B1 (en) * 1987-08-10 1995-03-28 Bell Telephone Labor Inc Product realization method
US5408519A (en) * 1993-01-19 1995-04-18 Teledebit, L.P. Telecommunications system having a local area network with concurrently processing nodes
US5826239A (en) * 1996-12-17 1998-10-20 Hewlett-Packard Company Distributed workflow resource management system and method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"ADAPTIVE SYSTEMS MANAGEMENT", ADAPTIVE SYSTEMS MANAGEMENT,XX,XX, no. version 2.1, January 1998 (1998-01-01), XP002105194 *
KERR R M: "A KNOWLEDGE BASED, INTEGRATED PROCESS PLANNING AND SCHEDULING SYSTEM FOR DOCUMENT PRAPARATION", ADVANCES IN PRODUCTION MANAGEMENT SYSTEMS, 1991, XP000892975 *
L. LEWIS: "Spectrum Service Level Management Definition, Offering and Strategy", TECHNICAL NOTE IML-CTRON-98-02, 30 March 1998 (1998-03-30), XP002150696 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763353B2 (en) 1998-12-07 2004-07-13 Vitria Technology, Inc. Real time business process analysis method and apparatus
US6931392B1 (en) 1998-12-07 2005-08-16 Vitria Technology, Inc. Real-time decision support system
WO2003038682A1 (en) * 2001-10-31 2003-05-08 Vitria Technology, Inc. Real time business process analysis method and apparatus
EP1581897A1 (en) * 2002-12-12 2005-10-05 Sap Ag Scheduling tasks across multiple locations
WO2006015935A3 (en) * 2004-08-10 2006-07-06 Ibm System and method for automatically discovering and grouping resources used by a business process
WO2006015935A2 (en) * 2004-08-10 2006-02-16 International Business Machines Corporation System and method for automatically discovering and grouping resources used by a business process
JP2008509494A (en) * 2004-08-10 2008-03-27 インターナショナル・ビジネス・マシーンズ・コーポレーション Apparatus, system, and method for automatically discovering and classifying resources used in business processes
US7546601B2 (en) 2004-08-10 2009-06-09 International Business Machines Corporation Apparatus, system, and method for automatically discovering and grouping resources used by a business process
KR100930015B1 (en) 2004-08-10 2009-12-07 인터내셔널 비지네스 머신즈 코포레이션 Devices, systems, and methods for automatically locating and grouping resources used by business processes
US7630955B2 (en) 2004-08-10 2009-12-08 International Business Machines Corporation Apparatus, system, and method for analyzing the association of a resource to a business process
US7661135B2 (en) 2004-08-10 2010-02-09 International Business Machines Corporation Apparatus, system, and method for gathering trace data indicative of resource activity
EP1674988A2 (en) * 2004-12-23 2006-06-28 International Business Machines Corporation A monitor for an information technology system
EP1674988A3 (en) * 2004-12-23 2009-05-13 International Business Machines Corporation A monitor for an information technology system
US20090055770A1 (en) * 2007-08-21 2009-02-26 Oracle International Corporation Navigation systems with event notification
US9442620B2 (en) * 2007-08-21 2016-09-13 Oracle International Corporation Navigation systems with event notification

Also Published As

Publication number Publication date
AU7112000A (en) 2001-04-23

Similar Documents

Publication Publication Date Title
US5893905A (en) Automated SLA performance analysis monitor with impact alerts on downstream jobs
US8782662B2 (en) Adaptive computer sequencing of actions
US8682705B2 (en) Information technology management based on computer dynamically adjusted discrete phases of event correlation
US8024275B2 (en) Method and system for monitoring a business process
US8677174B2 (en) Management of runtime events in a computer environment using a containment region
US8326910B2 (en) Programmatic validation in an information technology environment
JP4990623B2 (en) Method and system for supply chain management using a visual interface
US8775591B2 (en) Real-time information technology environments
US8447859B2 (en) Adaptive business resiliency computer system for information technology environments
US7610211B2 (en) Investigating business processes
US8296170B2 (en) Process management system and method
US8620716B2 (en) Computer system and method for detecting and processing changes in data
US20050172027A1 (en) Management of service level agreements for composite Web services
US20090172674A1 (en) Managing the computer collection of information in an information technology environment
US8275757B2 (en) Apparatus and method for process monitoring
US20090172670A1 (en) Dynamic generation of processes in computing environments
US8386597B2 (en) Systems and methods for the provision of data processing services to multiple entities
JP2012074028A (en) Creation of dependence map from dependence data
CA2416359A1 (en) Trend detection in an event management system
US20070162494A1 (en) Embedded business process monitoring
US7954062B2 (en) Application status board mitigation system and method
WO2001027762A1 (en) Computer-implemented system and method for monitoring and managing business processes and associated resources
US20180260535A1 (en) Managing Plan Problems Across Planning Cycles
US20060200496A1 (en) Organization action incidents
US7844586B2 (en) Methods and systems in monitoring tools for effective data retrieval

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

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

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP