US20070256050A1 - Bi-Directional Communication Between Change Management Tool and Implementation Tools - Google Patents
Bi-Directional Communication Between Change Management Tool and Implementation Tools Download PDFInfo
- Publication number
- US20070256050A1 US20070256050A1 US11/741,709 US74170907A US2007256050A1 US 20070256050 A1 US20070256050 A1 US 20070256050A1 US 74170907 A US74170907 A US 74170907A US 2007256050 A1 US2007256050 A1 US 2007256050A1
- Authority
- US
- United States
- Prior art keywords
- task
- change
- tasks
- implementation
- act
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000013070 change management Methods 0.000 title claims abstract description 63
- 230000007175 bidirectional communication Effects 0.000 title description 15
- 230000008859 change Effects 0.000 claims abstract description 82
- 238000000034 method Methods 0.000 claims abstract description 75
- 238000012508 change request Methods 0.000 claims abstract description 45
- 230000004044 response Effects 0.000 claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000005516 engineering process Methods 0.000 claims abstract description 7
- 238000007726 management method Methods 0.000 claims description 51
- 230000009471 action Effects 0.000 claims description 19
- 230000008569 process Effects 0.000 abstract description 22
- 238000012552 review Methods 0.000 abstract description 6
- 238000013459 approach Methods 0.000 description 7
- 230000010354 integration Effects 0.000 description 7
- 238000012797 qualification Methods 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 230000006854 communication Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 101000797623 Homo sapiens Protein AMBP Proteins 0.000 description 1
- 102100032859 Protein AMBP Human genes 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013474 audit trail Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
Definitions
- the subject matter of the present disclosure relates to bi-directional communication between a change management tool and implementation tools in an Information Technology Infrastructure.
- the tool may be the Remedy Change Management 7.0 by BMC Software, Inc. After performing the change/release, these individuals would manually update the status of the change (e.g., via a configuration management tool) in a piece wise fashion to indicate that the change was implemented. If needed for compliance purposes, one or more individuals could then manually verify the changes. While this approach may provide some control during the planning of a change, it provides no assistance for automating changes or for verifying that approved changes were made.
- FIG. 1 shows a tool 100 according to the prior art for implementing changes in an IT infrastructure.
- the tool 100 is generally manual and operates in a piece-wise fashion as discussed earlier.
- the tool 100 receives a change request 102 that can involve software distribution, software patch management, hardware parameter adjustments, adding a new user, or other type of change to the hardware and software components of the IT infrastructure.
- administrators can review the change request 102 , approve the request, and plan its implementation.
- a number of implementation actions 110 / 115 are sent to various implementation tools 160 / 165 in the IT infrastructure.
- one change request 102 can generate numerous individual implementation actions 110 / 115 for numerous implementation tools 160 / 165 .
- Each implementation tool 160 / 165 then performs the requested action 162 and registers a response 164 either manually or automatically.
- each implementation tool 160 / 165 performs its implementation action 110 / 115 without any knowledge of why the action is performed.
- each implementation tool 160 / 165 has no knowledge of any other tool being used or what its actual role is in solving the original change request 102 .
- the implementation tools 160 / 165 may have their own login or access criteria, thereby hindering any automation of the change process in the infrastructure.
- the subject matter of the present disclosure is directed to overcoming, or at least reducing the effects of, one or more of the problems set forth above.
- the change management tool is used to configure tasks to implement a change to the configuration of an IT infrastructure using implementation tools deployed on the infrastructure.
- the change management tool assigns tag information to the change.
- the tag information preferably includes a first identifier (e.g., a Change ID) associated with the requested change and includes second identifiers (e.g., Task IDs) associated with each of the tasks configured to implement the change.
- the change management tool manually or automatically sends task instructions to the implementation tools to perform the tasks.
- the task instructions include the identifiers and other task-related information to implement the task.
- the implementation tools send responses to the change management tool, which receives implementation results in the responses.
- each response includes the identifiers along with the implementation result.
- the change management tool maps/associates each implementation result to the tasks and other requirements associated with the configuration change.
- the mapped/associated results can then be made available for subsequent processing to meet various purposes.
- the associated results can be available to a user or to another software application.
- the user can assess the status (e.g., success or failure) of the configuration change across the multiple tasks and implementation tools.
- the user or the change management tool can test, interpret, check, etc. the results so that further decisions related to the change process can be made.
- the change management tool can use the associated results to determining which subsequent task to perform in implementing the change. For example, if implementation of given task returns a specific result, conditions or qualifications configured in the change management tool may indicate that one subsequent task should follow rather than another in order to implement the change request.
- the change management tool can use the associated results as inputs for subsequent tasks that are to be performed in implementing the change.
- FIG. 1 illustrates a tool and associated components according to the prior art for implementing a change to an IT infrastructure.
- FIG. 2 illustrates one embodiment of a change management tool having a task management tool and associated components for implementing a configuration change to an IT infrastructure.
- FIG. 3 illustrates a process of how the disclosed change management tool can be used to manage the configuration change to the IT infrastructure.
- FIG. 4 illustrates an example of how task template forms can be grouped and arranged in a workflow using the task management tool.
- FIGS. 5A-5D illustrate views of a task template form of the task management tool.
- FIGS. 6A-6D illustrate views of a task group template form of the task management tool.
- FIGS. 7 illustrates a process for configuring bi-directional communication between the change management, task management, and implementation tools.
- FIG. 8A illustrates a registry form for registering an implementation tool for bi-directional communication with the change management tool.
- FIG. 8B illustrates a return code form for configuring return codes received from registered implementation tools.
- FIG. 8C illustrates an integration form for configuring an interface between an implementation tool and the change management tool.
- the data communicated from the change management tool (which may also be referred to as a release management tool) to an implementation tool may include, but is not limited to: a change/release identifier (associated with an approved change/release operation); a task identifier (associated with a task to implement part of the change/release); configuration information on where the change needs to be implemented (e.g., applications, systems, groups of systems, groups of applications, or devices); the criticality or priority of the change/release; and one or more methods to automatically invoke an implementation tool.
- data communicated to the change management tool from an implementation tool may include, but is not limited to: one or more methods to automatically invoke the change management tool; a task identifier (associated with the task to implement a part of the change); a change/release identifier (associated with the approved change/release operation); configuration information on where the change needs to be implemented (e.g., applications, systems, groups of systems, groups of applications, or devices); task status; and additional details (e.g., implementation time, cost, etc.).
- a task identifier associated with the task to implement a part of the change
- a change/release identifier associated with the approved change/release operation
- configuration information on where the change needs to be implemented e.g., applications, systems, groups of systems, groups of applications, or devices
- task status e.g., implementation time, cost, etc.
- FIG. 2 shows a change management tool 200 according to one embodiment relative to a plurality of implementation tools 260 / 265 .
- the implementation tools 260 / 265 are distributed across an IT infrastructure for implementing changes to various software components, hardware components, and other aspects of the infrastructure's configuration.
- the implementation tools 260 / 265 may be software tools for performing actions (manually or automatically) to implement a change to the infrastructure's configuration.
- Some typical examples of the types of changes that may be made to the infrastructure's configuration include releases of software packages, deployment of software patches, management of software licenses, updating policies, and other changes/releases.
- a consistent and controlled process is used to make such changes.
- the change management tool 200 provides a “closed loop” approach to implement configuration changes.
- the change management tool 200 automatically transfers information between stages of operation to maintain the integrity of the configuration change.
- the change management tool 200 can track whether changes to the configuration are made successfully by verifying the implementation of software-related and other tasks required to make the change.
- verification of the tasks by the change management tool 200 also provides administrators with audit trails of the changes made to the configuration.
- the change management tool 200 includes a database 220 .
- the database 220 is a configuration management database (“CMDB”) in accordance with the Information Technology Infrastructure Library (“ITIL”) standard.
- CMDB configuration management database
- ITIL Information Technology Infrastructure Library
- Such a database 220 is well known in the art and generally stores configuration information related to rules, policies, and resources (software, hardware, etc.) of the IT infrastructure.
- the change management tool 200 includes a task management tool 210 . Although illustrated as part of the change management tool 200 , the task management tool 210 may actually be a separate application capable of operating in conjunction with the change management tool 200 .
- the task management tool 210 is used to manage the various tasks required to implement a requested change to the infrastructure's configuration.
- FIG. 3 shows a process 300 of using the change management tool 200 and task management tool 210 to manage a change to the infrastructure's configuration.
- the change management tool 200 receives a change request 202 and generates a unique identifier for that request (e.g., a Change ID) (Block 305 ).
- a change request 202 involves a request to release and install the latest version of a software application on systems of the infrastructure.
- a user may submit a service request to install the latest version of the software application on one or more systems.
- the change request 202 can include, but may not be limited to, a request to distribute software, manage a software patch, adjust a hardware parameter, configure new user information, or perform some other type of change to the hardware or software configuration of the IT infrastructure.
- the tag information 270 includes the unique identifier for the change request 202 (e.g., Change ID) and includes unique identifiers for each of the configured tasks (e.g., Task IDs), among other information disclosed herein.
- the identifiers can generally be character strings of a global unique identifier (GUID).
- GUID global unique identifier
- the tag information 270 is used in the bi-directional communication between the change management tool 200 and the implementation tools 260 / 265 . To achieve the communication, the tag information 270 can comprise any suitable data structure, protocol, and standard known in the art for communicating information between software tools and hardware components of an IT infrastructure.
- the tasks can be policy-based, deployment-based, or verification-based.
- Policy-based tasks include tasks for deploying applications and data, deploying patches, harvesting licenses when maximum limits have been exceeded, and enforcing the removal of unauthorized applications.
- Deployment-based tasks include tasks for deploying software or data and executing one-time jobs, commands, and scripts.
- Verification-based tasks include tasks to verify compliance for policy-based tasks based on a target, package, or both.
- Each change request 202 can require multiple tasks of different types with each task being essential to the successful implementation of the change.
- the change request 202 may require various implementation tools 260 / 265 throughout the IT infrastructure to implement the multiple tasks.
- the multiple tasks may need to be performed in a defined sequence or workflow.
- the task management tool 210 has a graphical user interface (GUI) 212 having a plurality of task template forms 214 and other forms that allow users to configure the various tasks and input information consistently.
- GUI graphical user interface
- the template forms 214 contain fields for the input and output of information and variables used during the change management process. Some of the template forms 214 may have a variable structure so that information can be exchanged automatically between the forms 214 .
- the task template forms 214 can be grouped together and related by associations and workflows.
- the task management tool 210 allows users to collect together individual task template forms 214 as a group, define associations between task template forms 214 or groups of task template forms 214 , define a workflow or sequencing scheme for implementing the various task templates forms 214 and groups, and define dependencies between the associated task template forms 214 and groups.
- the task management tool 210 communicates task instructions 230 / 235 to targeted implementation tools 260 / 265 deployed across the infrastructure (Block 215 ).
- the task instructions 230 / 235 include task-related information for the targeted implementation tool 260 / 265 to perform the task.
- the task instructions 230 / 235 also include tag information 273 (e.g., Change ID, Task ID, etc.) for identification, tracking, auditing, and other purposes disclosed herein. This tag information 273 comes from the tag information 270 generated automatically and manually when the tasks are configured and planned. In generally, the tag information 273 for each task instruction 230 / 235 may or may not be the same depending on the particular tasks, designated implementation tools, and other factors.
- the task management tool 210 sends out the various task instructions 230 / 235 using an interface 216 configured between the task management tool 210 and the implementation tools 260 / 265 .
- This interface 216 can automatically launch and/or can be manually activated in some embodiments so that task instructions 230 / 235 can be implemented automatically or manually based on the IT infrastructure and various required tasks.
- the task management tool 210 can send different types of tasks (e.g., policy, deployment, and verification tasks) in a specified sequence according to a desired workflow (See e.g., FIG. 4 ).
- the implementation tools 260 / 265 Upon receiving the task instructions 230 / 235 , the implementation tools 260 / 265 then perform the requested actions 262 of these tasks (Block 320 ). Because the implementation tools 260 / 265 are preconfigured for integration with the change management tool 200 , the interface and communication of the task instructions 230 / 235 to the implementation tools 260 / 265 can be performed with seamless authentication. In this way, the implementation tool 260 / 265 can launch the requested actions 262 without requiring additional authentication or user intervention (such as entry of a user ID and password).
- Each implementation tool 260 also registers a response 264 for the performed action 262 .
- the response 264 can indicate whether the action 230 / 235 has succeeded or failed or the response may be some variable or other parameter.
- the implementation tools 260 / 265 send results 240 / 245 back to the change management tool 200 , which logs the various results 240 / 245 (Block 325 ).
- the results 240 / 245 include details or results that may indicate whether implementation of the task has resulted in completion, error, failure, or other variable.
- the results 240 / 245 can include a return code value or some other indication of whether implementation of the requested task was successful or not.
- the results 240 / 245 include tag information 274 (e.g., Change ID and Task ID) used for tracking, verification, and auditing. Because the identifiers are included in the results 240 / 245 , the change management tool 200 is better able to match and track the implementation of the change request 202 and all of the various tasks and subtasks associated with it across the IT infrastructure. Based on the tagged results 240 / 245 it receives, the change management tool 200 can then verify the implementation of the change request 202 and perform other reporting functions.
- tag information 274 e.g., Change ID and Task ID
- each implementation tool 260 / 265 can automatically respond, or the change management tool 200 can query or “ping” the implementation tool 260 / 265 using tag information (e.g., Change and Task IDs) to get specific results or response codes.
- tag information e.g., Change and Task IDs
- the implementation tool 260 / 265 can also deliver results to a third party application. After that, the change management tool 200 can query that application for the results using tag information for identification.
- the implementation tool 260 can communicate its result 240 directly back to the task management tool 210 with information about the implementation identified by the associated tag information 274 .
- This form of returning results may be suitable for web-based interactions between the task management tool 210 and the implementation tool 260 that may be a third party application and not already configured to communicate directly with the configuration management database 220 .
- the implementation tool 265 can communicate information in a result 245 directly to the configuration management database 220 or some other third party application.
- This form of returning results may be suited for automated implementation tools 265 configured to auto-launch and communicate directly with the configuration management database 220 using a required format, protocol, etc.
- Subsequent interactions 250 made at arbitrary or regular intervals between the task management tool 210 and the configuration management database 220 can be used to exchange implementation details and other information identified by the tag information 275 so that tasks and the change request 202 can be updated.
- a review stage administrators use the change management tool 200 to review whether the change request 202 was indeed completed and can test, interpret, check, etc. the implementation results so that further decisions related to the change process can be made (Block 330 ). Because information regarding the task identifier, target, and packages has been automatically returned to the configuration management tool 200 in tag information 274 , the tool 200 can automatically verify the status of the task whenever a result 240 / 245 is received. If the task is successful, the tool 200 can mark the task as closed. In the review stage, the administrators can also analyze key performance indicators (KPIs), how many incidents were eliminated by the change request 202 , and the accuracy of the configuration management database 220 .
- KPIs key performance indicators
- the change management tool 200 can use the returned implementation results to drive subsequent processing steps to implement the change (Block 335 ). Two forms of driving subsequent processing are discussed below. It will be appreciated that the change management tool 200 can use these and other forms of subsequent processing based on returned implementation results.
- the change management tool 200 can use the returned results to determine what subsequent tasks to perform in order to implement the change request 202 . If, for example, implementation of given task returns a specific result, conditions or qualifications configured in the change management tool 200 may automatically indicate that a particular task (as opposed to some other task) should subsequently be performed to implement the change.
- the change management tool 200 can use the implemented result of a given task as input for a subsequent task to be performed in implementing the change.
- a first task may require an implementation tool to look up information about a machine assigned to a particular user (e.g., obtain a network address from the configuration management database 220 ). Then, that information can be used in a subsequent task to install a given piece of software on the identified machine.
- the tag information 270 in various forms ( 273 , 274 , 275 , and 276 ) facilitates the bidirectional communication between the change management tool 200 , task management tool 210 , and the implementation tools 260 .
- the tag information 270 may be multi-part and at least include unique identifiers, such as Change ID and Task ID.
- the tag information 270 may also include time stamps and information about target machines.
- the tag information 270 can identify an overall process, a subtask of that process, and a location in the configuration management database 220 so that the implementation tool 260 / 265 can provide data to the configuration management database 220 for the IT infrastructure.
- the tag information 270 can include information to eliminate the need for the change management tool 200 to mediate all activities of each implementation tool 260 / 265 to make changes.
- the tag information 270 can include login and authentication information to allow the implementation tools 260 / 265 to execute the actions 262 of the task without the need for user intervention.
- any such login and authentication information of this nature is encrypted so that the tag information 270 itself or any part of it may be encrypted using techniques known in the art.
- the tag information 270 can include access information so that the implementation tools 260 / 265 can access third party data to accomplish a task and can also include command line instructions or the like. In this way, the implementation tool 260 / 265 can access a database (e.g., configuration management database 220 ) to identify required data needed to accomplish some implementation task.
- a database e.g., configuration management database 220
- FIG. 4 shows an example of how tasks can be arranged in a group 400 and a workflow 410 .
- a Task Group Template A is shown having a plurality of grouped template forms ( 1 , 2 , 3 A-B, and 4 ) associated with it.
- FIG. 4 is simplified and that arrangements, groupings, and workflows between tasks as configured by the template forms may be more or less complex than depicted.
- multiple workflows and groupings may be simultaneously used and executed to implement a particular change and that multiple pieces of information, variables, and data can be configured for exchange between the various tasks, groups, etc.
- the various task templates can be executed in a particular order by associating and arranging the task templates as a workflow 410 .
- the workflow 410 follows the order of F 1 to F 3 .
- the task of template 1 is executed first, then the task of template 2 , and so on.
- Some features of the workflow 410 can be based on conditions or qualifications that can drive subsequent processing steps in implementing the change.
- task template 2 can be configured to determine what subsequent task to implement next (e.g., either template 3 A or 3 B). Therefore, after the task associated with task template 2 is implemented and the implementation result returned for it, conditions or qualifications configured in the task template 2 can determine based on the particular implementation result returned whether the workflow proceeds next to the task of template 3 A or that of template 3 B.
- the various task templates can also be set up to exchange variables and other data with the task group template A, with a variable pool, with each other, and with other tasks and groups. For example, after the task associated with task template 3 A is implemented and the implementation result returned for it, the implementation result can be used as input in performing the subsequent tasks of template 4 to implement the change. Likewise, implementation results, variables, and other data resulting from performance of the task in template 1 can thereafter be used in performing the task in template 3 B, for example, by configuring the templates to exchange data with a variable pool 420 .
- FIG. 5A shows a task template form 500 that administrators can use to configure the components of a task.
- the user can create two distinct types of tasks. One type is a manual task where a person or other manual means performs a task's action manually. The other type of task is an automatic task where an automatic action or predefined instruction is executed at run time.
- the administrator can use the form 500 to create an automatic action that runs by itself, to define a specified action that must be accomplished manually, to enter data for mapping/associating input variables, and to input data that is written from the task to another task or task group in the form of an output variable.
- an administrator can input commands for the task. These commands may be preconfigured or user-created and are stored as components associated with the interface ( 216 ) of the change management tool ( 200 ).
- the commands can include static values and parameters and can include command lines that will execute at runtime, such as launch or details commands.
- Some other tabs of the task template form 500 allow the user to classify a task and input assignments, completion, financials, usage, and system information for the task.
- FIGS. 5B-5C show input and output tabs 510 and 520 of the task template form 500 of FIG. 5A .
- administrators can map/associate input and output variables that can be exchanged between the tasks and between the task and the pool of variables.
- implementation results e.g., details about the success or failure of the task's implementation
- the administrator uses the input and output tabs 510 and 520 to map/associate disparate input formats (e.g., variables from returned results 240 / 245 ) to a more consistent reporting output format for the task management tool 210 .
- variable mappings/associations under these tabs 510 / 520 enable data to be passed into and out of fields when the task is executed at runtime.
- the variables can be user-defined or predefined, and the user can map existing variables to or from fields in the task template form. During execution, a pool of fields is made available in the task template form for variable usage so that variables can be mapped to and from the various fields defined for the task.
- FIG. 5D shows the automatic tab 530 of the task template form 500 of FIG. 5A .
- the administrator can define automatic commands for automatic types of tasks.
- Some of the automatic commands that can be configured include adding/deleting fields in a task template form, checking for approval to perform a task, copying a field from another task template form, setting up compliance parameters, and performing other automatic actions.
- FIG. 6A shows a task group template form 600 for administrators to create a group of tasks.
- This form 600 includes many similar features available with the individual task template form 500 of FIG. 5A .
- the task group template form 600 has tabs for mapping/associating input and output variables that enable data to be passed into and out of fields when the task group is executed.
- the administrator can define the task group by associating various individual task template forms and other task group template forms together to be contained in the group such that they constitute a certain action. Once various tasks and groups are associated together, the administrator then establishes how the associated tasks in the group relate to one another by creating a workflow.
- the administrator can construct a workflow that will determine the sequence in which grouped tasks are generated at runtime. If the task group contains other task groups, these may already have a workflow established within their configuration.
- the group's flow consists of one or more flow relationship records.
- Each flow relationship record consists of a task group or task template form, called a predecessor, linked to another task group or task template form, called a successor.
- These records can be arranged to produce a number of possible flow relationships. For example, two tasks can be started at the same time by marking them both as Start. Tasks or task groups can occur simultaneously by linking the same predecessor to more than one successor. In addition, more than one task or task group can be completed before a successor can start by linking two or more predecessors to the same successor.
- a change request 202 may involve multiple tasks to be performed to implement the change and the multiple tasks can be grouped together
- the task management tool 210 is able to determine whether the tasks, group, and change has been successfully completed.
- a task group may be determined complete only once all of the individual tasks and groups that it contains have run. When a task group is complete, its status is evaluated as either succeeding or failing, although other conditions can be used. By default, the task group is considered successful when all the task groups or tasks that it contains have a status of Success. If any do not have a status of Success, the task group can be given a status of Failed or Canceled.
- administrators can specify evaluations to determine whether a task group is complete or successful.
- the administrator can define operations on variables gathered from associated task groups and individual tasks. These operations are built into evaluation statements to evaluate the resulting status of the tasks. Some possible operations on the variables can include determining minimum, maximum, sum, average, count, etc., and these operations can be applied to variables in the fields from the individual task and task group template forms from which data is to be collected. Result fields then stores the results of the expressions that are then made available to the administrators.
- the administrator can then construct conditions or qualifications that can drive the change process and that can determined when a task or group is done or completed.
- the conditions or qualification can be built from the results fields of the various expressions in the operations tab 630 .
- the change process can be configured to determine what subsequent tasks are to be performed in implementing the change and what information is to be exchanged.
- each implementation tool 260 / 265 has to be registered to accept task instructions 230 / 235 and associated tag information 273 (e.g., Change and Task IDs) from the change management tool 200 , to know what to do with the task instructions and tag information, to know how to respond to the task instructions and tag information, and to use additional parameters.
- tag information 273 e.g., Change and Task IDs
- each registered implementation tool 260 / 265 may be provided its own unique identifier (e.g., Registry ID) that can be added to the tag information and used to identify implementation tools 260 / 265 and to track responses from the various implementation tools.
- FIG. 7 shows a process 700 in flowchart form for initially configuring the bi-directional communication.
- the administrator first registers various implementation tools 260 / 265 to interface with the change management tool 200 and the task management tool 210 (Block 705 ). Then, the administrator configures how the various implementation results and details (e.g., return codes) received from the registered implementation tools 260 / 265 will map to desired status details (e.g., success or failure) at the change management level within the change management tool 200 (Block 710 ). Finally, the administrator configures the integrations between the change management tool 200 and the implementation tools 260 / 265 so that they will be able to interface in bi-directional communication during the change management process (Block 715 ).
- various implementation results and details e.g., return codes
- desired status details e.g., success or failure
- FIG. 8A shows a registry form 800 for registering an implementation tool ( 260 / 265 ) for use with the change management tool ( 200 ).
- the administrator can register a name, description, and status (active or inactive) of the implementation tool (i. e., application).
- the change management tool 200 For each tool registered, the change management tool 200 generates a unique identifier (e.g., a Registry ID).
- the administrator can define what forms (template, instance) are to be associated with the implementation tool and can define connection information for communicating with the implementation tool, such as whether the connection is local or remote.
- the administrator can also associate various elements, such as templates 214 , interface forms, instance forms, etc., with the implementation tool.
- the registered information becomes a means for the task management tool 210 to recognize the implementation tool 260 / 265 , to set the configuration settings such as mode of connection (local or remote), and to use this information to establish the context for the features of the task management tool 210 that will be used for the associated implementation tool 260 / 265 .
- the administrator configures how various return code values from registered implementation tools 260 / 265 will map to information for the various task forms of the GUI 212 defined for a change request.
- the return code values from a given implementation tool 260 / 265 may not be very useful for determining status of a change request or task and whether the overall change request and its subtasks are complete.
- the administrator can specify how the status and reasons for a given task should be mapped to/associated with a particular return code received from an implementation tool 260 / 265 .
- FIG. 8B shows a return code form 810 for configuring how return codes from implementation tools 260 / 265 map to desired status information at the management tools ( 200 , 210 ).
- the administrator can select one of the registered implementation tools (i.e., application name) and input a return code value that would be returned from this selected tool.
- the administrator can select a template form (e.g., task or group template forms) to associate with the return code, a corresponding status that the return code will map to on the selected form, a corresponding status reason that will be provided on the selected form, and an indication of whether the entered return code is active or not.
- the implementation tool returns the specific return code value
- the corresponding status and status reason are mapped on the task template form. For example, a return code value of Error from an implementation tool 260 / 265 could be mapped to indicate a status of Pending and a status reason of Error on a task template form.
- FIG. 8C shows an integration form 820 for configuring an interface between an implementation tool ( 260 / 265 ) and the management tools ( 200 / 210 ).
- the administrator can select a registered implementation tool (i. e., application name) for integration with the change and task management tools ( 200 / 210 ).
- the administrator can associate one or more template forms ( 214 ) with the selected implementation tool ( 260 / 265 ) by associating a primary form, a template form, and a relationship form with that selected tool, for example.
- the administrator can indicate the integration as being active or inactive and can indicate options for the integration, such as whether to use a particular size view, group assignments, individual assignments, and notifications.
- the administrator can define what fields to include for a task when a task template form is opened and can define other details for inputting, viewing, and relating information between tasks and the implementation tool.
- a change request 202 can be configured to have various elements of information grouped and associated together and arranged in workflows.
- the tag information e.g., Change ID, Task IDs, Registry IDs, access information, log-in and authentication information, and any other information
- the tag information e.g., Change ID, Task IDs, Registry IDs, access information, log-in and authentication information, and any other information
- Acts in accordance with the disclosed change and task management techniques may be performed by a programmable control device executing instructions organized into one or more program modules.
- a programmable control device may be a single computer processor, a special purpose processor, a plurality of processors coupled by a communications link or a custom designed state machine.
- Storage devices suitable for tangibly embodying program instructions include, but are not limited to: magnetic disks (fixed, floppy, and removable) and tape; optical media such as CD-ROMs and digital video disks (“DVDs”); and semiconductor memory devices such as Electrically Programmable Read-Only Memory (“EPROM”), Electrically Erasable Programmable Read-Only Memory (“EEPROM”), Programmable Gate Arrays and flash devices.
- EPROM Electrically Programmable Read-Only Memory
- EEPROM Electrically Erasable Programmable Read-Only Memory
Abstract
Description
- This is a non-provisional of U.S. Provisional Application Ser. No. 60/745,872, filed 28 Apr. 2006, and entitled “Bi-directional Communication Between Change/Release Process Tools and Implementation Tools,” which is incorporated herein by reference in its entirety and to which priority is claimed.
- The subject matter of the present disclosure relates to bi-directional communication between a change management tool and implementation tools in an Information Technology Infrastructure.
- Today many organizations implement solutions to manage the process of requesting, planning, and implementing changes to their Information Technology (“IT”) infrastructure. Sometimes, multiple, related changes must be made to software and/or hardware components of the infrastructure. Such changes can also be referred to as “releases.” Traditionally, organizations use multiple tools to implement such changes and/or issue new releases in a piece-wise fashion where each tool is used to implement its part independently. One problem with this piece-wise approach is that often the operations to institute the multiple changes across the existing infrastructure involve dependent and related changes that need to be planned, approved, and implemented in a coordinated way. Complicating the implementation of such changes are the compliance concerns over verification of the changes across multiple toolsets.
- In one prior art approach, organizations use a tool to handle the request for a change, plan the change using the tool, and then individually assign the tasks associated with the change/release to a group of individuals that actually perform, or implement, the desired changes. As one example, the tool may be the Remedy Change Management 7.0 by BMC Software, Inc. After performing the change/release, these individuals would manually update the status of the change (e.g., via a configuration management tool) in a piece wise fashion to indicate that the change was implemented. If needed for compliance purposes, one or more individuals could then manually verify the changes. While this approach may provide some control during the planning of a change, it provides no assistance for automating changes or for verifying that approved changes were made.
-
FIG. 1 shows atool 100 according to the prior art for implementing changes in an IT infrastructure. Thetool 100 is generally manual and operates in a piece-wise fashion as discussed earlier. For example, thetool 100 receives achange request 102 that can involve software distribution, software patch management, hardware parameter adjustments, adding a new user, or other type of change to the hardware and software components of the IT infrastructure. Using thetool 100, administrators can review thechange request 102, approve the request, and plan its implementation. Once ready to implement, a number ofimplementation actions 110/115 are sent tovarious implementation tools 160/165 in the IT infrastructure. Typically, onechange request 102 can generate numerousindividual implementation actions 110/115 fornumerous implementation tools 160/165. Eachimplementation tool 160/165 then performs the requestedaction 162 and registers aresponse 164 either manually or automatically. - In this prior art approach, each
implementation tool 160/165 performs itsimplementation action 110/115 without any knowledge of why the action is performed. Thus, eachimplementation tool 160/165 has no knowledge of any other tool being used or what its actual role is in solving theoriginal change request 102. In addition, theimplementation tools 160/165 may have their own login or access criteria, thereby hindering any automation of the change process in the infrastructure. - In another prior art approach, overall process management is abandoned in favor of using multiple, distinct tools. One problem with this approach is that one change is often related to, or has dependencies upon, other changes. Managing the change process with a single tool can only take into account those changes under control of that tool. For example, imagine the case where a complex application (e.g., a customer billing system) needs to be updated—a process that will require changes to a number of different application and database components. Even if the application and database updates where closely coordinated and automated, there is no guarantee that they would not conflict with a change being administered elsewhere in the system at the same time (e.g., to a networking device).
- The subject matter of the present disclosure is directed to overcoming, or at least reducing the effects of, one or more of the problems set forth above.
- Systems and methods for conducting bi-directional communication between a change management tool and implementation tools in an IT infrastructure are disclosed. The change management tool is used to configure tasks to implement a change to the configuration of an IT infrastructure using implementation tools deployed on the infrastructure. In configuring the change, the change management tool assigns tag information to the change. To facilitate bi-directional communication and tracking, the tag information preferably includes a first identifier (e.g., a Change ID) associated with the requested change and includes second identifiers (e.g., Task IDs) associated with each of the tasks configured to implement the change.
- Once the tasks are configured, the change management tool manually or automatically sends task instructions to the implementation tools to perform the tasks. The task instructions include the identifiers and other task-related information to implement the task. After implementing or failing to implement its task, the implementation tools send responses to the change management tool, which receives implementation results in the responses. To facilitate the bi-directional communication and tracking, each response includes the identifiers along with the implementation result. Using the configuration based on the identifiers, the change management tool maps/associates each implementation result to the tasks and other requirements associated with the configuration change.
- The mapped/associated results can then be made available for subsequent processing to meet various purposes. For example, the associated results can be available to a user or to another software application. In a basic form, the user can assess the status (e.g., success or failure) of the configuration change across the multiple tasks and implementation tools. In other more sophisticated forms, the user or the change management tool can test, interpret, check, etc. the results so that further decisions related to the change process can be made. In another form of subsequent processing, the change management tool can use the associated results to determining which subsequent task to perform in implementing the change. For example, if implementation of given task returns a specific result, conditions or qualifications configured in the change management tool may indicate that one subsequent task should follow rather than another in order to implement the change request. In yet another for of subsequent processing, the change management tool can use the associated results as inputs for subsequent tasks that are to be performed in implementing the change.
-
FIG. 1 illustrates a tool and associated components according to the prior art for implementing a change to an IT infrastructure. -
FIG. 2 illustrates one embodiment of a change management tool having a task management tool and associated components for implementing a configuration change to an IT infrastructure. -
FIG. 3 illustrates a process of how the disclosed change management tool can be used to manage the configuration change to the IT infrastructure. -
FIG. 4 illustrates an example of how task template forms can be grouped and arranged in a workflow using the task management tool. -
FIGS. 5A-5D illustrate views of a task template form of the task management tool. -
FIGS. 6A-6D illustrate views of a task group template form of the task management tool. - FIGS. 7 illustrates a process for configuring bi-directional communication between the change management, task management, and implementation tools.
-
FIG. 8A illustrates a registry form for registering an implementation tool for bi-directional communication with the change management tool. -
FIG. 8B illustrates a return code form for configuring return codes received from registered implementation tools. -
FIG. 8C illustrates an integration form for configuring an interface between an implementation tool and the change management tool. - In accordance with the invention, bi-directional communication is provided between a change management tool and implementation tools. The data communicated from the change management tool (which may also be referred to as a release management tool) to an implementation tool may include, but is not limited to: a change/release identifier (associated with an approved change/release operation); a task identifier (associated with a task to implement part of the change/release); configuration information on where the change needs to be implemented (e.g., applications, systems, groups of systems, groups of applications, or devices); the criticality or priority of the change/release; and one or more methods to automatically invoke an implementation tool. Similarly, data communicated to the change management tool from an implementation tool may include, but is not limited to: one or more methods to automatically invoke the change management tool; a task identifier (associated with the task to implement a part of the change); a change/release identifier (associated with the approved change/release operation); configuration information on where the change needs to be implemented (e.g., applications, systems, groups of systems, groups of applications, or devices); task status; and additional details (e.g., implementation time, cost, etc.). Coordinating change/release and implementation operations using the disclosed bidirectional communication provides a great deal of automation with respect to scheduling, authorizing, implementing, and verifying proposed changes across the IT infrastructure.
-
FIG. 2 shows achange management tool 200 according to one embodiment relative to a plurality ofimplementation tools 260/265. Theimplementation tools 260/265 are distributed across an IT infrastructure for implementing changes to various software components, hardware components, and other aspects of the infrastructure's configuration. Thus, in the context of the present disclosure, theimplementation tools 260/265 may be software tools for performing actions (manually or automatically) to implement a change to the infrastructure's configuration. Some typical examples of the types of changes that may be made to the infrastructure's configuration include releases of software packages, deployment of software patches, management of software licenses, updating policies, and other changes/releases. Preferably, a consistent and controlled process is used to make such changes. - To achieve such consistency and control, the
change management tool 200 provides a “closed loop” approach to implement configuration changes. In this closed loop, thechange management tool 200 automatically transfers information between stages of operation to maintain the integrity of the configuration change. In addition, thechange management tool 200 can track whether changes to the configuration are made successfully by verifying the implementation of software-related and other tasks required to make the change. Finally, verification of the tasks by thechange management tool 200 also provides administrators with audit trails of the changes made to the configuration. - To help store the configuration of the infrastructure, the
change management tool 200 includes adatabase 220. In one embodiment, thedatabase 220 is a configuration management database (“CMDB”) in accordance with the Information Technology Infrastructure Library (“ITIL”) standard. Such adatabase 220 is well known in the art and generally stores configuration information related to rules, policies, and resources (software, hardware, etc.) of the IT infrastructure. - To help handle configuration changes, the
change management tool 200 includes atask management tool 210. Although illustrated as part of thechange management tool 200, thetask management tool 210 may actually be a separate application capable of operating in conjunction with thechange management tool 200. Thetask management tool 210 is used to manage the various tasks required to implement a requested change to the infrastructure's configuration. -
FIG. 3 shows aprocess 300 of using thechange management tool 200 andtask management tool 210 to manage a change to the infrastructure's configuration. During use, thechange management tool 200 receives achange request 202 and generates a unique identifier for that request (e.g., a Change ID) (Block 305). One typical example of achange request 202 involves a request to release and install the latest version of a software application on systems of the infrastructure. In such an example, a user may submit a service request to install the latest version of the software application on one or more systems. More generally, thechange request 202 can include, but may not be limited to, a request to distribute software, manage a software patch, adjust a hardware parameter, configure new user information, or perform some other type of change to the hardware or software configuration of the IT infrastructure. - In a subsequent stage, administrators use the
task management tool 210 to configure and plan various tasks to implement thechange request 202 and to generatetag information 270 for those various tasks (Block 310). Thetag information 270, for example, includes the unique identifier for the change request 202 (e.g., Change ID) and includes unique identifiers for each of the configured tasks (e.g., Task IDs), among other information disclosed herein. The identifiers can generally be character strings of a global unique identifier (GUID). As will be discussed below, thetag information 270 is used in the bi-directional communication between thechange management tool 200 and theimplementation tools 260/265. To achieve the communication, thetag information 270 can comprise any suitable data structure, protocol, and standard known in the art for communicating information between software tools and hardware components of an IT infrastructure. - In general, the tasks can be policy-based, deployment-based, or verification-based. Policy-based tasks include tasks for deploying applications and data, deploying patches, harvesting licenses when maximum limits have been exceeded, and enforcing the removal of unauthorized applications. Deployment-based tasks include tasks for deploying software or data and executing one-time jobs, commands, and scripts. Verification-based tasks include tasks to verify compliance for policy-based tasks based on a target, package, or both. Each
change request 202 can require multiple tasks of different types with each task being essential to the successful implementation of the change. In addition, thechange request 202 may requirevarious implementation tools 260/265 throughout the IT infrastructure to implement the multiple tasks. Moreover, the multiple tasks may need to be performed in a defined sequence or workflow. - To facilitate management of the tasks, the
task management tool 210 has a graphical user interface (GUI) 212 having a plurality of task template forms 214 and other forms that allow users to configure the various tasks and input information consistently. The template forms 214 contain fields for the input and output of information and variables used during the change management process. Some of the template forms 214 may have a variable structure so that information can be exchanged automatically between theforms 214. In addition, the task template forms 214 can be grouped together and related by associations and workflows. To do this, thetask management tool 210 allows users to collect together individual task template forms 214 as a group, define associations between task template forms 214 or groups of task template forms 214, define a workflow or sequencing scheme for implementing the various task templates forms 214 and groups, and define dependencies between the associated task template forms 214 and groups. - In the next stage, the
task management tool 210 communicatestask instructions 230/235 to targetedimplementation tools 260/265 deployed across the infrastructure (Block 215). Thetask instructions 230/235 include task-related information for the targetedimplementation tool 260/265 to perform the task. Thetask instructions 230/235 also include tag information 273 (e.g., Change ID, Task ID, etc.) for identification, tracking, auditing, and other purposes disclosed herein. Thistag information 273 comes from thetag information 270 generated automatically and manually when the tasks are configured and planned. In generally, thetag information 273 for eachtask instruction 230/235 may or may not be the same depending on the particular tasks, designated implementation tools, and other factors. - The
task management tool 210 sends out thevarious task instructions 230/235 using an interface 216 configured between thetask management tool 210 and theimplementation tools 260/265. This interface 216 can automatically launch and/or can be manually activated in some embodiments so thattask instructions 230/235 can be implemented automatically or manually based on the IT infrastructure and various required tasks. When communicating thetask instructions 230/235, thetask management tool 210 can send different types of tasks (e.g., policy, deployment, and verification tasks) in a specified sequence according to a desired workflow (See e.g.,FIG. 4 ). - Upon receiving the
task instructions 230/235, theimplementation tools 260/265 then perform the requestedactions 262 of these tasks (Block 320). Because theimplementation tools 260/265 are preconfigured for integration with thechange management tool 200, the interface and communication of thetask instructions 230/235 to theimplementation tools 260/265 can be performed with seamless authentication. In this way, theimplementation tool 260/265 can launch the requestedactions 262 without requiring additional authentication or user intervention (such as entry of a user ID and password). - Each
implementation tool 260 also registers aresponse 264 for the performedaction 262. For example, theresponse 264 can indicate whether theaction 230/235 has succeeded or failed or the response may be some variable or other parameter. Once theresponse 264 is registered, theimplementation tools 260/265send results 240/245 back to thechange management tool 200, which logs thevarious results 240/245 (Block 325). Theresults 240/245 include details or results that may indicate whether implementation of the task has resulted in completion, error, failure, or other variable. For example, theresults 240/245 can include a return code value or some other indication of whether implementation of the requested task was successful or not. Furthermore, theresults 240/245 include tag information 274 (e.g., Change ID and Task ID) used for tracking, verification, and auditing. Because the identifiers are included in theresults 240/245, thechange management tool 200 is better able to match and track the implementation of thechange request 202 and all of the various tasks and subtasks associated with it across the IT infrastructure. Based on the taggedresults 240/245 it receives, thechange management tool 200 can then verify the implementation of thechange request 202 and perform other reporting functions. - To return results, each
implementation tool 260/265 can automatically respond, or thechange management tool 200 can query or “ping” theimplementation tool 260/265 using tag information (e.g., Change and Task IDs) to get specific results or response codes. Theimplementation tool 260/265 can also deliver results to a third party application. After that, thechange management tool 200 can query that application for the results using tag information for identification. - In returning results, for example, the
implementation tool 260 can communicate itsresult 240 directly back to thetask management tool 210 with information about the implementation identified by the associatedtag information 274. This form of returning results may be suitable for web-based interactions between thetask management tool 210 and theimplementation tool 260 that may be a third party application and not already configured to communicate directly with theconfiguration management database 220. - Alternatively, the
implementation tool 265 can communicate information in aresult 245 directly to theconfiguration management database 220 or some other third party application. This form of returning results may be suited forautomated implementation tools 265 configured to auto-launch and communicate directly with theconfiguration management database 220 using a required format, protocol, etc.Subsequent interactions 250 made at arbitrary or regular intervals between thetask management tool 210 and theconfiguration management database 220 can be used to exchange implementation details and other information identified by thetag information 275 so that tasks and thechange request 202 can be updated. - In a review stage, administrators use the
change management tool 200 to review whether thechange request 202 was indeed completed and can test, interpret, check, etc. the implementation results so that further decisions related to the change process can be made (Block 330). Because information regarding the task identifier, target, and packages has been automatically returned to theconfiguration management tool 200 intag information 274, thetool 200 can automatically verify the status of the task whenever aresult 240/245 is received. If the task is successful, thetool 200 can mark the task as closed. In the review stage, the administrators can also analyze key performance indicators (KPIs), how many incidents were eliminated by thechange request 202, and the accuracy of theconfiguration management database 220. - In addition to making implementation results available for review and other like purposes, the
change management tool 200 can use the returned implementation results to drive subsequent processing steps to implement the change (Block 335). Two forms of driving subsequent processing are discussed below. It will be appreciated that thechange management tool 200 can use these and other forms of subsequent processing based on returned implementation results. - In one form of subsequent processing, the
change management tool 200 can use the returned results to determine what subsequent tasks to perform in order to implement thechange request 202. If, for example, implementation of given task returns a specific result, conditions or qualifications configured in thechange management tool 200 may automatically indicate that a particular task (as opposed to some other task) should subsequently be performed to implement the change. - In another form of subsequent processing, the
change management tool 200 can use the implemented result of a given task as input for a subsequent task to be performed in implementing the change. For example, a first task may require an implementation tool to look up information about a machine assigned to a particular user (e.g., obtain a network address from the configuration management database 220). Then, that information can be used in a subsequent task to install a given piece of software on the identified machine. - As discussed above, the
tag information 270 in various forms (273, 274, 275, and 276) facilitates the bidirectional communication between thechange management tool 200,task management tool 210, and theimplementation tools 260. Thetag information 270 may be multi-part and at least include unique identifiers, such as Change ID and Task ID. Thetag information 270 may also include time stamps and information about target machines. In addition, thetag information 270 can identify an overall process, a subtask of that process, and a location in theconfiguration management database 220 so that theimplementation tool 260/265 can provide data to theconfiguration management database 220 for the IT infrastructure. - Additionally, the
tag information 270 can include information to eliminate the need for thechange management tool 200 to mediate all activities of eachimplementation tool 260/265 to make changes. For example, thetag information 270 can include login and authentication information to allow theimplementation tools 260/265 to execute theactions 262 of the task without the need for user intervention. Preferably, any such login and authentication information of this nature is encrypted so that thetag information 270 itself or any part of it may be encrypted using techniques known in the art. Thetag information 270 can include access information so that theimplementation tools 260/265 can access third party data to accomplish a task and can also include command line instructions or the like. In this way, theimplementation tool 260/265 can access a database (e.g., configuration management database 220) to identify required data needed to accomplish some implementation task. - As noted previously, a given
change request 202 may involve a number of tasks. Therefore, thetask implementation tool 210 allows administrators to group the tasks together and build a workflow and execution scheme for those tasks.FIG. 4 shows an example of how tasks can be arranged in agroup 400 and aworkflow 410. In this example, a Task Group Template A is shown having a plurality of grouped template forms (1, 2, 3A-B, and 4) associated with it. It will be appreciated that the example represented inFIG. 4 is simplified and that arrangements, groupings, and workflows between tasks as configured by the template forms may be more or less complex than depicted. In addition, it will be appreciated that multiple workflows and groupings may be simultaneously used and executed to implement a particular change and that multiple pieces of information, variables, and data can be configured for exchange between the various tasks, groups, etc. - As shown, the various task templates can be executed in a particular order by associating and arranging the task templates as a
workflow 410. In this example, theworkflow 410 follows the order of F1 to F3. Thus, the task oftemplate 1 is executed first, then the task oftemplate 2, and so on. Some features of theworkflow 410 can be based on conditions or qualifications that can drive subsequent processing steps in implementing the change. For example,task template 2 can be configured to determine what subsequent task to implement next (e.g., eithertemplate task template 2 is implemented and the implementation result returned for it, conditions or qualifications configured in thetask template 2 can determine based on the particular implementation result returned whether the workflow proceeds next to the task oftemplate 3A or that oftemplate 3B. - The various task templates can also be set up to exchange variables and other data with the task group template A, with a variable pool, with each other, and with other tasks and groups. For example, after the task associated with
task template 3A is implemented and the implementation result returned for it, the implementation result can be used as input in performing the subsequent tasks oftemplate 4 to implement the change. Likewise, implementation results, variables, and other data resulting from performance of the task intemplate 1 can thereafter be used in performing the task intemplate 3B, for example, by configuring the templates to exchange data with avariable pool 420. - In the present embodiment, administrators use the
GUI 212 and task template forms 214 of thetask management tool 210 to configure the tasks group them together, make associations between them, and build the workflow of tasks.FIG. 5A , for example, shows atask template form 500 that administrators can use to configure the components of a task. In general, the user can create two distinct types of tasks. One type is a manual task where a person or other manual means performs a task's action manually. The other type of task is an automatic task where an automatic action or predefined instruction is executed at run time. Thus, the administrator can use theform 500 to create an automatic action that runs by itself, to define a specified action that must be accomplished manually, to enter data for mapping/associating input variables, and to input data that is written from the task to another task or task group in the form of an output variable. - As shown under the General tab of the
form 500, an administrator can input commands for the task. These commands may be preconfigured or user-created and are stored as components associated with the interface (216) of the change management tool (200). The commands can include static values and parameters and can include command lines that will execute at runtime, such as launch or details commands. Some other tabs of thetask template form 500 allow the user to classify a task and input assignments, completion, financials, usage, and system information for the task. -
FIGS. 5B-5C show input andoutput tabs task template form 500 ofFIG. 5A . In thesetabs 510/520, administrators can map/associate input and output variables that can be exchanged between the tasks and between the task and the pool of variables. Because implementation results (e.g., details about the success or failure of the task's implementation) can come from variousdisparate implementation tools 260/265, the administrator uses the input andoutput tabs results 240/245) to a more consistent reporting output format for thetask management tool 210. The variable mappings/associations under thesetabs 510/520 enable data to be passed into and out of fields when the task is executed at runtime. To define the mappings/associations, the variables can be user-defined or predefined, and the user can map existing variables to or from fields in the task template form. During execution, a pool of fields is made available in the task template form for variable usage so that variables can be mapped to and from the various fields defined for the task. -
FIG. 5D shows theautomatic tab 530 of thetask template form 500 ofFIG. 5A . In thistab 530, the administrator can define automatic commands for automatic types of tasks. Some of the automatic commands that can be configured include adding/deleting fields in a task template form, checking for approval to perform a task, copying a field from another task template form, setting up compliance parameters, and performing other automatic actions. - As mentioned previously, tasks can be grouped together and associated into workflows.
FIG. 6A shows a taskgroup template form 600 for administrators to create a group of tasks. Thisform 600 includes many similar features available with the individualtask template form 500 ofFIG. 5A . For example, the taskgroup template form 600 has tabs for mapping/associating input and output variables that enable data to be passed into and out of fields when the task group is executed. - As shown in the
association tab 610 ofFIG. 6B , the administrator can define the task group by associating various individual task template forms and other task group template forms together to be contained in the group such that they constitute a certain action. Once various tasks and groups are associated together, the administrator then establishes how the associated tasks in the group relate to one another by creating a workflow. - Using the
flow tab 620 ofFIG. 6C , the administrator can construct a workflow that will determine the sequence in which grouped tasks are generated at runtime. If the task group contains other task groups, these may already have a workflow established within their configuration. As shown in the flow relationship table, the group's flow consists of one or more flow relationship records. Each flow relationship record consists of a task group or task template form, called a predecessor, linked to another task group or task template form, called a successor. These records can be arranged to produce a number of possible flow relationships. For example, two tasks can be started at the same time by marking them both as Start. Tasks or task groups can occur simultaneously by linking the same predecessor to more than one successor. In addition, more than one task or task group can be completed before a successor can start by linking two or more predecessors to the same successor. - Because a
change request 202 may involve multiple tasks to be performed to implement the change and the multiple tasks can be grouped together, thetask management tool 210 is able to determine whether the tasks, group, and change has been successfully completed. By default, a task group may be determined complete only once all of the individual tasks and groups that it contains have run. When a task group is complete, its status is evaluated as either succeeding or failing, although other conditions can be used. By default, the task group is considered successful when all the task groups or tasks that it contains have a status of Success. If any do not have a status of Success, the task group can be given a status of Failed or Canceled. - As opposed to the above default evaluations of status, administrators can specify evaluations to determine whether a task group is complete or successful. In the
operations tab 630 ofFIG. 6D , for example, the administrator can define operations on variables gathered from associated task groups and individual tasks. These operations are built into evaluation statements to evaluate the resulting status of the tasks. Some possible operations on the variables can include determining minimum, maximum, sum, average, count, etc., and these operations can be applied to variables in the fields from the individual task and task group template forms from which data is to be collected. Result fields then stores the results of the expressions that are then made available to the administrators. - In the completions tab, the administrator can then construct conditions or qualifications that can drive the change process and that can determined when a task or group is done or completed. For example, the conditions or qualification can be built from the results fields of the various expressions in the
operations tab 630. Based on the conditions or qualifications, the change process can be configured to determine what subsequent tasks are to be performed in implementing the change and what information is to be exchanged. - To facilitate the bidirectional communication between the
change management tool 200 and theimplementation tools 260/265, eachimplementation tool 260/265 has to be registered to accepttask instructions 230/235 and associated tag information 273 (e.g., Change and Task IDs) from thechange management tool 200, to know what to do with the task instructions and tag information, to know how to respond to the task instructions and tag information, and to use additional parameters. In addition, once registered, each registeredimplementation tool 260/265 may be provided its own unique identifier (e.g., Registry ID) that can be added to the tag information and used to identifyimplementation tools 260/265 and to track responses from the various implementation tools. -
FIG. 7 shows aprocess 700 in flowchart form for initially configuring the bi-directional communication. The administrator first registersvarious implementation tools 260/265 to interface with thechange management tool 200 and the task management tool 210 (Block 705). Then, the administrator configures how the various implementation results and details (e.g., return codes) received from the registeredimplementation tools 260/265 will map to desired status details (e.g., success or failure) at the change management level within the change management tool 200 (Block 710). Finally, the administrator configures the integrations between thechange management tool 200 and theimplementation tools 260/265 so that they will be able to interface in bi-directional communication during the change management process (Block 715). - To register an
implementation tool 260/265 under the acts ofBlock 705, the administrator performs the registration process using a registry form of theGUI 212 so theimplementation tool 260/265 can be recognized by the interface 216.FIG. 8A shows aregistry form 800 for registering an implementation tool (260/265) for use with the change management tool (200). As generally shown, the administrator can register a name, description, and status (active or inactive) of the implementation tool (i. e., application). For each tool registered, thechange management tool 200 generates a unique identifier (e.g., a Registry ID). In various fields, the administrator can define what forms (template, instance) are to be associated with the implementation tool and can define connection information for communicating with the implementation tool, such as whether the connection is local or remote. The administrator can also associate various elements, such astemplates 214, interface forms, instance forms, etc., with the implementation tool. In this way, the registered information becomes a means for thetask management tool 210 to recognize theimplementation tool 260/265, to set the configuration settings such as mode of connection (local or remote), and to use this information to establish the context for the features of thetask management tool 210 that will be used for the associatedimplementation tool 260/265. - To configure return code mapping/association under the acts of
Block 710 ofFIG. 7 , the administrator configures how various return code values from registeredimplementation tools 260/265 will map to information for the various task forms of theGUI 212 defined for a change request. On there own, the return code values from a givenimplementation tool 260/265 may not be very useful for determining status of a change request or task and whether the overall change request and its subtasks are complete. Thus, by configuring the mapping/association of return codes, the administrator can specify how the status and reasons for a given task should be mapped to/associated with a particular return code received from animplementation tool 260/265. -
FIG. 8B shows areturn code form 810 for configuring how return codes fromimplementation tools 260/265 map to desired status information at the management tools (200, 210). As generally shown, the administrator can select one of the registered implementation tools (i.e., application name) and input a return code value that would be returned from this selected tool. Then, the administrator can select a template form (e.g., task or group template forms) to associate with the return code, a corresponding status that the return code will map to on the selected form, a corresponding status reason that will be provided on the selected form, and an indication of whether the entered return code is active or not. At runtime when the implementation tool returns the specific return code value, the corresponding status and status reason are mapped on the task template form. For example, a return code value of Error from animplementation tool 260/265 could be mapped to indicate a status of Pending and a status reason of Error on a task template form. - To integrate the tools under the acts of
Block 715 ofFIG. 7 , the administrator configures the template forms 214 of thetask management tool 210 to integrate with the registeredimplementations tools 260/265.FIG. 8C shows anintegration form 820 for configuring an interface between an implementation tool (260/265) and the management tools (200/210). As generally shown, the administrator can select a registered implementation tool (i. e., application name) for integration with the change and task management tools (200/210). The administrator can associate one or more template forms (214) with the selected implementation tool (260/265) by associating a primary form, a template form, and a relationship form with that selected tool, for example. In addition, the administrator can indicate the integration as being active or inactive and can indicate options for the integration, such as whether to use a particular size view, group assignments, individual assignments, and notifications. Finally, the administrator can define what fields to include for a task when a task template form is opened and can define other details for inputting, viewing, and relating information between tasks and the implementation tool. - As shown by the
various template forms 214 and other components of theGUI 212 of thetask management tool 210 inFIGS. 5A-5D , 6A-6D, and 8A-8C, achange request 202 can be configured to have various elements of information grouped and associated together and arranged in workflows. The tag information (e.g., Change ID, Task IDs, Registry IDs, access information, log-in and authentication information, and any other information) for thetask instructions 230/235 to implement thechange request 202 is used pervasively throughout the implementation of the change in the configuration so that the change process involves a closed loop where changes involving multiple tasks can be implemented and verified effectively in the IT infrastructure. - Acts in accordance with the disclosed change and task management techniques may be performed by a programmable control device executing instructions organized into one or more program modules. A programmable control device may be a single computer processor, a special purpose processor, a plurality of processors coupled by a communications link or a custom designed state machine. Storage devices suitable for tangibly embodying program instructions include, but are not limited to: magnetic disks (fixed, floppy, and removable) and tape; optical media such as CD-ROMs and digital video disks (“DVDs”); and semiconductor memory devices such as Electrically Programmable Read-Only Memory (“EPROM”), Electrically Erasable Programmable Read-Only Memory (“EEPROM”), Programmable Gate Arrays and flash devices.
- The foregoing description of preferred and other embodiments is not intended to limit or restrict the scope or applicability of the inventive concepts conceived of by the Applicants. In exchange for disclosing the inventive concepts contained herein, the Applicants desire all patent rights afforded by the appended claims. Therefore, it is intended that the appended claims include all modifications and alterations to the full extent that they come within the scope of the following claims or the equivalents thereof.
Claims (47)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/741,709 US8887133B2 (en) | 2006-04-28 | 2007-04-27 | Bi-directional communication between change management tool and implementation tools |
US14/535,030 US9152413B2 (en) | 2006-04-28 | 2014-11-06 | Bi-directional communication between change management tool and implementation tools |
US14/872,869 US11132192B2 (en) | 2006-04-28 | 2015-10-01 | Bi-directional communication between change management tool and implementation tools |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US74587206P | 2006-04-28 | 2006-04-28 | |
US11/741,709 US8887133B2 (en) | 2006-04-28 | 2007-04-27 | Bi-directional communication between change management tool and implementation tools |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/535,030 Continuation US9152413B2 (en) | 2006-04-28 | 2014-11-06 | Bi-directional communication between change management tool and implementation tools |
Publications (2)
Publication Number | Publication Date |
---|---|
US20070256050A1 true US20070256050A1 (en) | 2007-11-01 |
US8887133B2 US8887133B2 (en) | 2014-11-11 |
Family
ID=38649753
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/741,709 Active 2032-02-04 US8887133B2 (en) | 2006-04-28 | 2007-04-27 | Bi-directional communication between change management tool and implementation tools |
US14/535,030 Active US9152413B2 (en) | 2006-04-28 | 2014-11-06 | Bi-directional communication between change management tool and implementation tools |
US14/872,869 Active US11132192B2 (en) | 2006-04-28 | 2015-10-01 | Bi-directional communication between change management tool and implementation tools |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/535,030 Active US9152413B2 (en) | 2006-04-28 | 2014-11-06 | Bi-directional communication between change management tool and implementation tools |
US14/872,869 Active US11132192B2 (en) | 2006-04-28 | 2015-10-01 | Bi-directional communication between change management tool and implementation tools |
Country Status (1)
Country | Link |
---|---|
US (3) | US8887133B2 (en) |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070203952A1 (en) * | 2006-02-28 | 2007-08-30 | Microsoft Corporation | Configuration management database state model |
US20070300224A1 (en) * | 2006-06-22 | 2007-12-27 | Vijay Kumar Aggarwal | Method and apparatus to modify a task within a set of tasks |
US20080195453A1 (en) * | 2007-02-14 | 2008-08-14 | Simon Smith | Organisational Representational System |
US20090034016A1 (en) * | 2007-08-01 | 2009-02-05 | Silverbrook Research Pty Ltd | Method of Conferring Interactivity on Previously Printed Graphic Images |
US20110099158A1 (en) * | 2009-10-28 | 2011-04-28 | Computer Associates Think, Inc. | System and method for automatically detecting, reporting, and tracking conflicts in a change management system |
US20110191383A1 (en) * | 2010-02-01 | 2011-08-04 | Oracle International Corporation | Orchestration of business processes using templates |
US20110218921A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Notify/inquire fulfillment systems before processing change requests for adjusting long running order management fulfillment processes in a distributed order orchestration system |
US20110218813A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Correlating and mapping original orders with new orders for adjusting long running order management fulfillment processes |
US20110218924A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Distributed order orchestration system for adjusting long running order management fulfillment processes with delta attributes |
US20110218922A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Cost of change for adjusting long running order management fulfillment processes for a distributed order orchestration sytem |
US20110218923A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Task layer service patterns for adjusting long running order management fulfillment processes for a distributed order orchestration system |
US20110219218A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Distributed order orchestration system with rollback checkpoints for adjusting long running order management fulfillment processes |
US20110218927A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Compensation patterns for adjusting long running order management fulfillment processes in an distributed order orchestration system |
US20110218842A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Distributed order orchestration system with rules engine |
US20110218926A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Saving order process state for adjusting long running order management fulfillment processes in a distributed order orchestration system |
US20110218925A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Change management framework in distributed order orchestration system |
US20120221689A1 (en) * | 2009-11-10 | 2012-08-30 | Yan Qian | Control method and system for remote configuration |
US20120297331A1 (en) * | 2011-05-19 | 2012-11-22 | Sumathi Chutkay | Systems and methods for intelligent decision support |
US20130185701A1 (en) * | 2012-01-18 | 2013-07-18 | Sap Ag | Centralized, object-level change tracking |
US8762322B2 (en) | 2012-05-22 | 2014-06-24 | Oracle International Corporation | Distributed order orchestration system with extensible flex field support |
US20140380265A1 (en) * | 2013-06-25 | 2014-12-25 | Sap Ag | Software change process orchestration |
US20150370540A1 (en) * | 2014-06-20 | 2015-12-24 | Asset S.R.L. | Method of developing an application for execution in a workflow management system and apparatus to assist with generation of an application for execution in a workflow management system |
US9658901B2 (en) | 2010-11-12 | 2017-05-23 | Oracle International Corporation | Event-based orchestration in distributed order orchestration system |
US9672560B2 (en) | 2012-06-28 | 2017-06-06 | Oracle International Corporation | Distributed order orchestration system that transforms sales products to fulfillment products |
US20190053020A1 (en) * | 2016-07-25 | 2019-02-14 | Symbol Technologies, Llc | Systems and methods of deploying location tracking tags |
CN110020765A (en) * | 2018-11-05 | 2019-07-16 | 阿里巴巴集团控股有限公司 | A kind of switching method and apparatus of operation flow |
US10552769B2 (en) | 2012-01-27 | 2020-02-04 | Oracle International Corporation | Status management framework in a distributed order orchestration system |
US20200159595A1 (en) * | 2008-06-02 | 2020-05-21 | Microsoft Technology Licensing, Llc | Composable and cancelable dataflow continuation passing |
Families Citing this family (271)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2449534A1 (en) * | 2003-11-14 | 2005-05-14 | Ibm Canada Limited - Ibm Canada Limitee | On-demand software module deployment |
US7657871B2 (en) | 2005-07-22 | 2010-02-02 | Sbc Knowledge Ventures, L.P. | Method and system of managing configuration profiles of a plurality of deployed network elements |
US8887133B2 (en) | 2006-04-28 | 2014-11-11 | Bmc Software, Inc. | Bi-directional communication between change management tool and implementation tools |
US20080183690A1 (en) * | 2007-01-26 | 2008-07-31 | Ramachandran Puthukode G | Method for providing assistance in making change decisions in a configurable managed environment |
DE102011077218B4 (en) | 2011-06-08 | 2023-12-14 | Servicenow, Inc. | Access to data stored in a cloud |
US8914406B1 (en) | 2012-02-01 | 2014-12-16 | Vorstack, Inc. | Scalable network security with fast response protocol |
US9710644B2 (en) | 2012-02-01 | 2017-07-18 | Servicenow, Inc. | Techniques for sharing network security event information |
US11416325B2 (en) | 2012-03-13 | 2022-08-16 | Servicenow, Inc. | Machine-learning and deep-learning techniques for predictive ticketing in information technology systems |
US9942342B2 (en) | 2014-06-09 | 2018-04-10 | Skygiraffe, Inc. | System and method for providing database content on a client device |
US9853863B1 (en) | 2014-10-08 | 2017-12-26 | Servicenow, Inc. | Collision detection using state management of configuration items |
US10437824B2 (en) | 2015-01-23 | 2019-10-08 | Attivio, Inc. | Querying across a composite join of multiple database tables using a search engine index |
US9742625B2 (en) | 2015-08-12 | 2017-08-22 | Servicenow, Inc. | Automated electronic computing and communication system event analysis and management |
US10181984B1 (en) | 2015-08-24 | 2019-01-15 | Servicenow, Inc. | Post incident review |
US10819594B2 (en) | 2015-11-02 | 2020-10-27 | Servicenow, Inc. | System and method for generating a graphical display region indicative of conditions of a computing infrastructure |
US10454752B2 (en) | 2015-11-02 | 2019-10-22 | Servicenow, Inc. | System and method for processing alerts indicative of conditions of a computing infrastructure |
AU2016367922B2 (en) | 2015-12-11 | 2019-08-08 | Servicenow, Inc. | Computer network threat assessment |
US9659391B1 (en) | 2016-03-31 | 2017-05-23 | Servicenow, Inc. | Request resolution shaper in a networked system architecture |
US10015186B1 (en) | 2016-04-12 | 2018-07-03 | Servicenow, Inc. | Method and apparatus for reducing security risk in a networked computer system architecture |
WO2017184872A1 (en) | 2016-04-20 | 2017-10-26 | Servicenow, Inc. | Visualization of chat task record, linking messaging, and record keeping |
US10417395B2 (en) | 2016-04-21 | 2019-09-17 | Servicenow, Inc. | Application usage analytics for licensing analysis |
US10270885B2 (en) | 2016-05-13 | 2019-04-23 | Servicenow, Inc. | System and method for deploying resources within a computing infrastructure |
US10353549B2 (en) | 2016-05-13 | 2019-07-16 | Servicenow, Inc. | Predictive watch face interface |
US10826875B1 (en) | 2016-07-22 | 2020-11-03 | Servicenow, Inc. | System and method for securely communicating requests |
US10963634B2 (en) | 2016-08-04 | 2021-03-30 | Servicenow, Inc. | Cross-platform classification of machine-generated textual data |
US10387385B1 (en) | 2016-09-29 | 2019-08-20 | Servicenow, Inc. | System and method for batch database modification |
US11080588B2 (en) | 2016-10-17 | 2021-08-03 | Servicenow, Inc. | Machine learning with partial inversion |
US10270646B2 (en) | 2016-10-24 | 2019-04-23 | Servicenow, Inc. | System and method for resolving master node failures within node clusters |
US10354215B2 (en) | 2016-10-26 | 2019-07-16 | Servicenow, Inc. | System and method for service modeling |
US11048853B2 (en) | 2016-10-31 | 2021-06-29 | Servicenow, Inc. | System and method for resource presentation |
US10430170B2 (en) | 2016-10-31 | 2019-10-01 | Servicenow, Inc. | System and method for creating and deploying a release package |
US10547519B2 (en) | 2016-11-02 | 2020-01-28 | Servicenow, Inc. | System and method of associating metadata with computing resources across multiple providers |
US10447526B2 (en) | 2016-11-02 | 2019-10-15 | Servicenow, Inc. | Network event grouping |
US10817524B2 (en) | 2017-04-10 | 2020-10-27 | Servicenow, Inc. | Systems and methods for querying time series data |
US11044143B2 (en) | 2017-04-17 | 2021-06-22 | Servicenow, Inc. | System for processing events using event rules |
US10516565B2 (en) | 2017-04-18 | 2019-12-24 | Servicenow, Inc. | Transformation and transmission of event messages |
US11640434B2 (en) | 2017-04-19 | 2023-05-02 | Servicenow, Inc. | Identifying resolutions based on recorded actions |
US10242037B2 (en) | 2017-04-20 | 2019-03-26 | Servicenow, Inc. | Index suggestion engine for relational databases |
US10620996B2 (en) | 2017-04-26 | 2020-04-14 | Servicenow, Inc. | Batching asynchronous web requests |
US10921959B2 (en) | 2017-05-01 | 2021-02-16 | Servicenow, Inc. | Customer service management workspace |
US10728324B2 (en) | 2017-05-01 | 2020-07-28 | Servicenow, Inc. | Selective server-side execution of client-side scripts |
US10333960B2 (en) | 2017-05-03 | 2019-06-25 | Servicenow, Inc. | Aggregating network security data for export |
US10936613B2 (en) | 2017-05-03 | 2021-03-02 | Servicenow, Inc. | Table-per-partition |
US10776732B2 (en) | 2017-05-04 | 2020-09-15 | Servicenow, Inc. | Dynamic multi-factor ranking for task prioritization |
US10949807B2 (en) | 2017-05-04 | 2021-03-16 | Servicenow, Inc. | Model building architecture and smart routing of work items |
US10977575B2 (en) | 2017-05-04 | 2021-04-13 | Servicenow, Inc. | Machine learning auto completion of fields |
US10355913B2 (en) | 2017-05-04 | 2019-07-16 | Servicenow, Inc. | Operational analytics in managed networks |
US10541961B2 (en) | 2017-05-05 | 2020-01-21 | Servicenow, Inc. | System and method for automating actions in distributed computing |
US10936968B2 (en) | 2017-05-05 | 2021-03-02 | Servicenow, Inc. | Ticket routing |
US10419304B2 (en) | 2017-05-05 | 2019-09-17 | Servicenow, Inc. | Indicator value aggregation in a multi-instance computing environment |
US11163747B2 (en) | 2017-05-05 | 2021-11-02 | Servicenow, Inc. | Time series data forecasting |
US10949903B2 (en) | 2017-05-05 | 2021-03-16 | Servicenow, Inc. | System, computer-readable medium, and method for blueprint-based cloud management |
US10650056B2 (en) | 2017-05-05 | 2020-05-12 | Servicenow, Inc. | Template-based faceted search experience |
US11620571B2 (en) | 2017-05-05 | 2023-04-04 | Servicenow, Inc. | Machine learning with distributed training |
US10447553B2 (en) | 2017-05-05 | 2019-10-15 | Servicenow, Inc. | Systems and methods for service-aware mapping of a system infrastructure |
US10706226B2 (en) | 2017-05-05 | 2020-07-07 | Servicenow, Inc. | Graphical user interface for inter-party communication with automatic scoring |
US10354257B2 (en) | 2017-05-05 | 2019-07-16 | Servicenow, Inc. | Identifying clusters for service management operations |
US10484358B2 (en) | 2017-05-05 | 2019-11-19 | Servicenow, Inc. | Single sign-on user interface improvements |
US10956013B2 (en) | 2017-05-05 | 2021-03-23 | Servicenow, Inc. | User interface for automated flows within a cloud based developmental platform |
US10915515B2 (en) | 2017-05-05 | 2021-02-09 | Servicenow, Inc. | Database performance tuning framework |
US10042618B1 (en) | 2017-05-05 | 2018-08-07 | Servicenow, Inc. | Integration application creator design |
US10789575B2 (en) | 2017-05-05 | 2020-09-29 | Servicenow, Inc. | User interface for timesheet reporting |
US11087256B2 (en) | 2017-05-05 | 2021-08-10 | Servicenow, Inc. | Graphical user interface for discovering consumption of services |
US10620930B2 (en) | 2017-05-05 | 2020-04-14 | Servicenow, Inc. | Software asset management |
US11468389B2 (en) | 2017-05-05 | 2022-10-11 | Servicenow, Inc. | Systems and methods for analytics, predictions, and reporting |
US10275241B2 (en) | 2017-05-05 | 2019-04-30 | Servicenow, Inc. | Hybrid development systems and methods |
US10832189B2 (en) | 2017-05-05 | 2020-11-10 | Servicenow, Inc. | Systems and methods for dynamically scheduling tasks across an enterprise |
US10938586B2 (en) | 2017-05-06 | 2021-03-02 | Servicenow, Inc. | Systems for peer-to-peer knowledge sharing platform |
US10673715B2 (en) | 2017-07-20 | 2020-06-02 | Servicenow, Inc. | Splitting network discovery payloads based on degree of relationships between nodes |
US10708139B2 (en) | 2017-08-01 | 2020-07-07 | Servicenow, Inc. | Automatic grouping of similar applications and devices on a network map |
US10705875B2 (en) | 2017-08-09 | 2020-07-07 | Servicenow, Inc. | Systems and methods for recomputing services |
US11012305B2 (en) | 2017-08-09 | 2021-05-18 | Servicenow, Inc. | Systems and methods for service mapping |
US10824642B2 (en) | 2017-08-10 | 2020-11-03 | Servicenow, Inc. | Data synchronization architecture |
US11132613B2 (en) | 2017-08-10 | 2021-09-28 | Servicenow, Inc. | Traffic based discovery noise reduction architecture |
US10719611B2 (en) | 2017-09-27 | 2020-07-21 | Servicenow, Inc. | Static security scanner for applications in a remote network management platform |
US10558920B2 (en) | 2017-10-02 | 2020-02-11 | Servicenow, Inc. | Machine learning classification with confidence thresholds |
US10911314B2 (en) | 2017-10-02 | 2021-02-02 | Servicenow, Inc. | Systems and methods for determining entry points for mapping a network |
US10402581B2 (en) | 2017-10-03 | 2019-09-03 | Servicenow, Inc. | Searching for encrypted data within cloud based platform |
US11093617B2 (en) | 2017-10-04 | 2021-08-17 | Servicenow, Inc. | Automated vulnerability grouping |
US20190102841A1 (en) | 2017-10-04 | 2019-04-04 | Servicenow, Inc. | Mapping engine configurations with task managed workflows and grid user interfaces |
US11057276B2 (en) | 2017-10-04 | 2021-07-06 | Servicenow, Inc. | Bulk service mapping |
US10547501B2 (en) | 2017-10-04 | 2020-01-28 | Servicenow, Inc. | Self-monitoring |
US10621313B2 (en) | 2017-10-04 | 2020-04-14 | Servicenow, Inc. | Distribution and enforcement of per-feature-set software application licensing |
US11238082B2 (en) | 2017-10-04 | 2022-02-01 | Servicenow, Inc. | Text analysis of unstructured data |
US10740726B2 (en) | 2017-10-05 | 2020-08-11 | Servicenow, Inc. | Systems and methods for providing message templates in an enterprise system |
US10585912B2 (en) | 2017-10-10 | 2020-03-10 | Servicenow, Inc. | Visualizing time metric database |
US10795885B2 (en) | 2017-11-15 | 2020-10-06 | Servicenow, Inc. | Predictive query improvement |
US10728345B2 (en) | 2017-11-16 | 2020-07-28 | Servicenow, Inc. | Field service management mobile offline synchronization |
US10732948B2 (en) * | 2017-12-01 | 2020-08-04 | Jpmorgan Chase Bank, N.A. | System and method for implementing automated deployment |
US11062088B2 (en) | 2017-12-12 | 2021-07-13 | International Business Machines Corporation | Contextual automation of information technology change services |
US11023461B2 (en) | 2018-01-19 | 2021-06-01 | Servicenow, Inc. | Query translation |
US10740568B2 (en) | 2018-01-24 | 2020-08-11 | Servicenow, Inc. | Contextual communication and service interface |
US11880557B2 (en) | 2018-01-29 | 2024-01-23 | Servicenow, Inc. | Distributed editing and versioning for graphical service maps of a managed network |
US10609163B2 (en) | 2018-02-26 | 2020-03-31 | Servicenow, Inc. | Proxy application supporting multiple collaboration channels |
US10826776B2 (en) | 2018-02-26 | 2020-11-03 | Servicenow, Inc. | Integrated continual improvement management |
US10783316B2 (en) | 2018-02-26 | 2020-09-22 | Servicenow, Inc. | Bundled scripts for web content delivery |
US11128542B2 (en) | 2018-02-26 | 2021-09-21 | Servicenow, Inc. | Interactive user interface to visually display the impact of configuration changes on a managed network |
US11200538B2 (en) | 2018-02-27 | 2021-12-14 | Servicenow, Inc. | System and method for a unified incident management interface |
US10542124B2 (en) | 2018-02-27 | 2020-01-21 | Servicenow, Inc. | Systems and methods of rate limiting for a representational state transfer (REST) application programming interface (API) |
US10990929B2 (en) | 2018-02-27 | 2021-04-27 | Servicenow, Inc. | Systems and methods for generating and transmitting targeted data within an enterprise |
US10719375B2 (en) | 2018-03-13 | 2020-07-21 | Servicenow, Inc. | Systems and method for event parsing |
US10606955B2 (en) | 2018-03-15 | 2020-03-31 | Servicenow, Inc. | Incident matching with vector-based natural language processing |
US11232224B2 (en) | 2018-03-15 | 2022-01-25 | Servicenow, Inc. | Database encryption |
US10740566B2 (en) | 2018-03-23 | 2020-08-11 | Servicenow, Inc. | Method and system for automated intent mining, classification and disposition |
US11520992B2 (en) | 2018-03-23 | 2022-12-06 | Servicenow, Inc. | Hybrid learning system for natural language understanding |
US10497366B2 (en) | 2018-03-23 | 2019-12-03 | Servicenow, Inc. | Hybrid learning system for natural language understanding |
US10728340B2 (en) | 2018-03-29 | 2020-07-28 | Servicenow, Inc. | Internet of things (IOT) platform for device configuration management and support |
US10761903B2 (en) | 2018-03-29 | 2020-09-01 | Servicenow, Inc. | Management instrumentation and discovery (MID) server support for executing automated flows within a cloud based system |
US10819560B2 (en) | 2018-03-29 | 2020-10-27 | Servicenow, Inc. | Alert management system and method of using alert context-based alert rules |
US10819581B2 (en) | 2018-04-05 | 2020-10-27 | Servicenow, Inc. | Performance analytics content gallery |
US11551105B2 (en) | 2018-04-20 | 2023-01-10 | Servicenow, Inc. | Knowledge management using machine learning model trained on incident-knowledge relationship fingerprints |
US10558671B2 (en) | 2018-05-01 | 2020-02-11 | Servicenow, Inc. | Modified representational state transfer (REST) application programming interface (API) including a customized GraphQL framework |
US10943201B2 (en) | 2018-05-02 | 2021-03-09 | Servicenow, Inc. | Digital fingerprint analysis |
US10783060B2 (en) | 2018-05-02 | 2020-09-22 | Servicenow, Inc. | Post-upgrade debugging in a remote network management platform |
US10719359B2 (en) | 2018-05-02 | 2020-07-21 | Servicenow, Inc. | Periodic task execution in an automated context |
US11086610B2 (en) | 2018-05-04 | 2021-08-10 | Servicenow, Inc. | Instance upgrade techniques |
US11086950B2 (en) | 2018-05-04 | 2021-08-10 | Servicenow, Inc. | System and method for task generation to address article feedback |
US11373124B2 (en) | 2018-05-04 | 2022-06-28 | Servicenow, Inc. | System and method for a control based project scheduling mode |
US11036751B2 (en) | 2018-05-07 | 2021-06-15 | Servicenow, Inc. | Advanced insights explorer |
US20190340562A1 (en) * | 2018-05-07 | 2019-11-07 | Servicenow, Inc. | Systems and method for project management portal |
US10936980B2 (en) | 2018-05-07 | 2021-03-02 | Servicenow, Inc. | Graphical user interface for enterprise project portfolio management utilizing normalized project attributes mapped to a common framework |
US10944654B2 (en) | 2018-06-06 | 2021-03-09 | Servicenow, Inc. | Discovery and mapping of containerized software applications |
US10826682B2 (en) | 2018-07-03 | 2020-11-03 | Servicenow, Inc. | Multi-instance architecture supporting trusted blockchain-based network |
US10817809B2 (en) | 2018-07-27 | 2020-10-27 | Servicenow, Inc. | Systems and methods for customizable route optimization |
US11140046B2 (en) | 2018-08-08 | 2021-10-05 | Servicenow, Inc. | Offline updates for native mobile applications |
US11663515B2 (en) | 2018-08-09 | 2023-05-30 | Servicenow, Inc. | Machine learning classification with model quality prediction |
US11288250B2 (en) | 2018-08-09 | 2022-03-29 | Servicenow, Inc. | Partial discovery of cloud-based resources |
US10826942B2 (en) | 2018-08-10 | 2020-11-03 | Servicenow, Inc. | Creating security incident records using a remote network management platform |
US10929790B2 (en) | 2018-08-29 | 2021-02-23 | Servicenow, Inc. | Dynamic agent management for multiple queues |
US11061949B2 (en) | 2018-09-05 | 2021-07-13 | Servicenow, Inc. | User interface for contextual search |
US10992544B2 (en) | 2018-09-07 | 2021-04-27 | Servicenow, Inc. | Identification and display of configuration item information |
US11182377B2 (en) | 2018-09-07 | 2021-11-23 | Servicenow, Inc. | System and graphical user interface for record lifecycle improvement |
US10810262B2 (en) | 2018-09-17 | 2020-10-20 | Servicenow, Inc. | System and method for dashboard selection |
US20200090052A1 (en) | 2018-09-17 | 2020-03-19 | Servicenow, Inc. | Decision tables and enterprise rules for object linking within an application platform as a service environment |
US10970048B2 (en) | 2018-09-17 | 2021-04-06 | Servicenow, Inc. | System and method for workflow application programming interfaces (APIS) |
US11089053B2 (en) | 2018-09-17 | 2021-08-10 | Servicenow, Inc. | Phishing attempt search interface |
US11182746B2 (en) | 2018-09-17 | 2021-11-23 | Servicenow, Inc. | Systems and methods for integrating third-party services with a client instance |
US10831589B2 (en) | 2018-09-17 | 2020-11-10 | Servicenow, Inc. | Service portal diagnosis system providing issue resolution steps |
US11423069B2 (en) | 2018-09-19 | 2022-08-23 | Servicenow, Inc. | Data structures for efficient storage and updating of paragraph vectors |
US11574235B2 (en) | 2018-09-19 | 2023-02-07 | Servicenow, Inc. | Machine learning worker node architecture |
US11238230B2 (en) | 2018-09-19 | 2022-02-01 | Servicenow, Inc. | Persistent word vector input to multiple machine learning models |
US10459962B1 (en) | 2018-09-19 | 2019-10-29 | Servicenow, Inc. | Selectively generating word vector and paragraph vector representations of fields for machine learning |
US11249992B2 (en) | 2018-09-21 | 2022-02-15 | Servicenow, Inc. | Parsing of user queries in a remote network management platform using extended context-free grammar rules |
US11429650B2 (en) | 2018-09-21 | 2022-08-30 | Servicenow, Inc. | Parsing of user queries in a remote network management platform using linguistic matching |
US11061890B2 (en) | 2018-10-04 | 2021-07-13 | Servicenow, Inc. | Automated identification of hardware and software components relevant to incident reports |
US11063946B2 (en) | 2018-10-24 | 2021-07-13 | Servicenow, Inc. | Feedback framework |
US10613899B1 (en) | 2018-11-09 | 2020-04-07 | Servicenow, Inc. | Lock scheduling using machine learning |
US11625655B2 (en) | 2018-11-14 | 2023-04-11 | Servicenow, Inc. | Workflows with rule-based assignments |
US11240271B2 (en) | 2018-11-14 | 2022-02-01 | Servicenow, Inc. | Distributed detection of security threats in a remote network management platform |
US11120049B2 (en) | 2018-11-19 | 2021-09-14 | Servicenow, Inc. | Concurrent data imports |
US10715402B2 (en) | 2018-11-27 | 2020-07-14 | Servicenow, Inc. | Systems and methods for enhanced monitoring of a distributed computing system |
US11513823B2 (en) | 2018-12-18 | 2022-11-29 | Servicenow, Inc. | Chat interface for resource management |
US10846111B2 (en) | 2018-12-18 | 2020-11-24 | Servicenow, Inc. | Customer service management |
US11307832B2 (en) | 2018-12-27 | 2022-04-19 | Servicenow, Inc. | System and method for interfacing incident and continuous integration systems |
US11068140B2 (en) | 2019-01-04 | 2021-07-20 | Servicenow, Inc. | Intelligent overflow menu |
US11137258B2 (en) | 2019-01-07 | 2021-10-05 | Servicenow, Inc. | Systems and methods for comprehensive routing |
US11363030B2 (en) | 2019-01-08 | 2022-06-14 | Servicenow, Inc. | Systems and methods for categorized hierarchical view and modification of user accessibility to information technology item |
US11108647B2 (en) | 2019-01-14 | 2021-08-31 | Servicenow, Inc. | Service mapping based on discovered keywords |
US11392563B2 (en) | 2019-01-15 | 2022-07-19 | Servicenow, Inc. | Efficient compression of workflow state representations |
US11070435B2 (en) | 2019-01-16 | 2021-07-20 | Servicenow, Inc. | Service model re-computation based on configuration item change type |
US11410101B2 (en) | 2019-01-16 | 2022-08-09 | Servicenow, Inc. | Efficient analysis of user-related data for determining usage of enterprise resource systems |
US11537936B2 (en) | 2019-01-17 | 2022-12-27 | Servicenow, Inc. | Data set generation for testing of machine learning pipelines |
US10931774B2 (en) | 2019-01-17 | 2021-02-23 | Servicenow, Inc. | Discovery and service mapping of application programming interface proxies |
US10805189B2 (en) | 2019-01-22 | 2020-10-13 | Servicenow, Inc. | Systems and method for shared visualization library |
US11233747B2 (en) | 2019-01-23 | 2022-01-25 | Servicenow, Inc. | Systems and methods for acquiring server resources at schedule time |
US10911320B2 (en) | 2019-01-23 | 2021-02-02 | Servicenow, Inc. | Guided interface for configuring key performance indicators |
US11163791B2 (en) | 2019-01-23 | 2021-11-02 | Servicenow, Inc. | Transformation configuration in instance data replication with bi-directional replication support |
US11308429B2 (en) | 2019-01-23 | 2022-04-19 | Servicenow, Inc. | Enterprise data mining systems |
US11500874B2 (en) | 2019-01-23 | 2022-11-15 | Servicenow, Inc. | Systems and methods for linking metric data to resources |
US11106525B2 (en) | 2019-02-04 | 2021-08-31 | Servicenow, Inc. | Systems and methods for classifying and predicting the cause of information technology incidents using machine learning |
US11409844B2 (en) | 2019-02-11 | 2022-08-09 | Servicenow, Inc. | Systems and methods for license management in a domain-separated architecture |
US11520863B2 (en) | 2019-02-27 | 2022-12-06 | Servicenow, Inc. | Systems and methods for importing software license metric data into a configuration management database (CMDB) |
US10819587B2 (en) | 2019-03-04 | 2020-10-27 | Servicenow, Inc. | Methods and systems for analysis of process performance |
US11593461B2 (en) | 2019-03-11 | 2023-02-28 | Servicenow, Inc. | Systems and methods for third-party library management |
US10949070B2 (en) | 2019-03-13 | 2021-03-16 | Servicenow, Inc. | Customizable mobile application for event management |
US11461288B2 (en) | 2019-03-14 | 2022-10-04 | Servicenow, Inc. | Systems and methods for database management system (DBMS) discovery |
US11043204B2 (en) | 2019-03-18 | 2021-06-22 | Servicenow, Inc. | Adaptable audio notifications |
US11379560B2 (en) | 2019-03-18 | 2022-07-05 | ServiceNow Inc. | Systems and methods for license analysis |
US11222290B2 (en) | 2019-03-18 | 2022-01-11 | Servicenow, Inc. | Intelligent capability extraction and assignment |
US10452360B1 (en) | 2019-03-19 | 2019-10-22 | Servicenow, Inc. | Workflow support for dynamic action input |
US11138530B2 (en) | 2019-03-19 | 2021-10-05 | Servicenow, Inc. | Action determination for case management |
US11442899B2 (en) | 2019-03-19 | 2022-09-13 | Servicenow, Inc. | Systems and methods for improved application programing interface (API) retry handling |
US10678418B1 (en) | 2019-03-19 | 2020-06-09 | Servicenow, Inc. | Graphical user interfaces for defining complex data objects |
US10521195B1 (en) | 2019-03-19 | 2019-12-31 | Servicenow, Inc. | Guided definition of an application programming interface action for a workflow |
US11223581B2 (en) | 2019-03-19 | 2022-01-11 | Servicenow, Inc. | Virtual agent portal integration of two frameworks |
US10929107B2 (en) | 2019-03-19 | 2021-02-23 | Servicenow, Inc. | Workflow support for dynamic action output |
US11790176B2 (en) | 2019-03-19 | 2023-10-17 | Servicenow, Inc. | Systems and methods for a virtual agent in a cloud computing environment |
US10599786B1 (en) | 2019-03-19 | 2020-03-24 | Servicenow, Inc. | Dynamic translation |
US11423910B2 (en) | 2019-03-19 | 2022-08-23 | Servicenow, Inc. | Systems and method for third party natural language understanding service integration |
US11100075B2 (en) * | 2019-03-19 | 2021-08-24 | Servicenow, Inc. | Graphical user interfaces for incorporating complex data objects into a workflow |
US11151325B2 (en) | 2019-03-22 | 2021-10-19 | Servicenow, Inc. | Determining semantic similarity of texts based on sub-sections thereof |
US11115471B2 (en) | 2019-03-28 | 2021-09-07 | Servicenow, Inc. | Identifying and mitigating configuration item flapping |
US11258865B2 (en) | 2019-03-28 | 2022-02-22 | Servicenow, Inc. | Automated integration with cloud-based services |
US11080490B2 (en) | 2019-03-28 | 2021-08-03 | Servicenow, Inc. | Pre-training of virtual chat interfaces |
US10739983B1 (en) | 2019-04-10 | 2020-08-11 | Servicenow, Inc. | Configuration and management of swimlanes in a graphical user interface |
US10924344B2 (en) | 2019-04-11 | 2021-02-16 | Servicenow, Inc. | Discovery and mapping of cloud-based resource modifications |
US11263201B2 (en) | 2019-04-12 | 2022-03-01 | Servicenow, Inc. | Interface for supporting integration with cloud-based service providers |
US11226978B2 (en) | 2019-04-23 | 2022-01-18 | Servicenow, Inc. | Systems and methods for dynamic creation of schemas |
US11112929B2 (en) | 2019-05-02 | 2021-09-07 | Servicenow, Inc. | Personalized graphical user interfaces for enterprise-related actions |
US11403370B2 (en) | 2019-05-02 | 2022-08-02 | Servicenow, Inc. | Automatically detecting misuse of licensed software |
US11204903B2 (en) | 2019-05-02 | 2021-12-21 | Servicenow, Inc. | Determination and reconciliation of software used by a managed network |
US11157273B2 (en) | 2019-05-02 | 2021-10-26 | Servicenow, Inc. | Scaled agile framework program board |
US10764124B1 (en) | 2019-05-02 | 2020-09-01 | Servicenow, Inc. | Intelligent export and import of service representations |
US10747757B1 (en) | 2019-05-02 | 2020-08-18 | Servicenow, Inc. | Graphical query builder for multi-modal search |
US10686647B1 (en) | 2019-05-02 | 2020-06-16 | Servicenow, Inc. | Descriptor architecture for a remote network management platform |
US11520622B2 (en) | 2019-05-03 | 2022-12-06 | Servicenow, Inc. | Active queue management in a multi-node computing environment |
US11431824B2 (en) | 2019-05-03 | 2022-08-30 | Servicenow, Inc. | Server-side control over navigation mode in web application |
US11651032B2 (en) | 2019-05-03 | 2023-05-16 | Servicenow, Inc. | Determining semantic content of textual clusters |
US11586659B2 (en) | 2019-05-03 | 2023-02-21 | Servicenow, Inc. | Clustering and dynamic re-clustering of similar textual documents |
US11481474B2 (en) | 2019-05-03 | 2022-10-25 | Servicenow, Inc. | Discovery and allocation of entitlements to virtualized applications |
US11080241B2 (en) | 2019-05-03 | 2021-08-03 | Servicenow, Inc. | Document collaboration |
US10997002B2 (en) | 2019-05-03 | 2021-05-04 | Servicenow, Inc. | Quick actions |
US11082289B2 (en) | 2019-05-03 | 2021-08-03 | Servicenow, Inc. | Alert intelligence integration |
US11133992B2 (en) | 2019-05-03 | 2021-09-28 | Servicenow, Inc. | Detection and notification of anomalies in shared computer networks |
US11374970B2 (en) | 2019-05-07 | 2022-06-28 | Servicenow, Inc. | Phishing attempt categorization/aggregation interface |
US11044184B2 (en) | 2019-05-28 | 2021-06-22 | Servicenow, Inc. | Data packet loss detection |
US11032381B2 (en) | 2019-06-19 | 2021-06-08 | Servicenow, Inc. | Discovery and storage of resource tags |
US10698595B1 (en) | 2019-06-28 | 2020-06-30 | Servicenow, Inc. | Support for swimlanes in a mobile graphical user interface |
US11205052B2 (en) | 2019-07-02 | 2021-12-21 | Servicenow, Inc. | Deriving multiple meaning representations for an utterance in a natural language understanding (NLU) framework |
US11410061B2 (en) | 2019-07-02 | 2022-08-09 | Servicenow, Inc. | Dynamic anomaly reporting |
US11487945B2 (en) | 2019-07-02 | 2022-11-01 | Servicenow, Inc. | Predictive similarity scoring subsystem in a natural language understanding (NLU) framework |
US11115432B2 (en) | 2019-07-08 | 2021-09-07 | Servicenow, Inc. | Multi-application recommendation engine for a remote network management platform |
US11016979B2 (en) | 2019-08-05 | 2021-05-25 | Servicenow, Inc. | Systems and method for domain separation of service catalog |
US11232410B2 (en) | 2019-08-07 | 2022-01-25 | Servicenow, Inc. | On-call scheduling and enhanced contact preference management |
US11256391B2 (en) | 2019-08-12 | 2022-02-22 | Servicenow, Inc. | Mobile user interface for displaying heterogeneous items interleaved by common data type |
US11520621B2 (en) | 2019-08-26 | 2022-12-06 | Servicenow, Inc. | Computational instance batching and automation orchestration based on resource usage and availability |
US11423155B2 (en) | 2019-08-28 | 2022-08-23 | Servicenow, Inc. | Software vulnerability detection in managed networks |
US11205047B2 (en) | 2019-09-05 | 2021-12-21 | Servicenow, Inc. | Hierarchical search for improved search relevance |
US11379562B2 (en) | 2019-09-09 | 2022-07-05 | Servicenow, Inc. | Remote software usage monitoring and entitlement analysis |
US11290357B2 (en) | 2019-09-10 | 2022-03-29 | Servicenow, Inc. | Automated document summaries using highlighting |
US10938657B1 (en) | 2019-09-13 | 2021-03-02 | Servicenow, Inc. | Enhancing discovery patterns with shell command exit status |
US11507442B2 (en) | 2019-09-17 | 2022-11-22 | Servicenow, Inc. | Method and system for determining maturity level of a cloud computing service |
US11140042B2 (en) | 2019-09-18 | 2021-10-05 | Servicenow, Inc. | Dictionary-based service mapping |
US11157241B2 (en) | 2019-09-18 | 2021-10-26 | Servicenow, Inc. | Codeless specification of software as a service integrations |
US11507644B2 (en) | 2019-10-02 | 2022-11-22 | Servicenow, Inc. | Discovery and classification of software application suites |
US11086879B2 (en) | 2019-10-02 | 2021-08-10 | Servicenow, Inc. | Pipelineable and parallelizable streaming parsers for querying structured data-interchange information |
US11461673B2 (en) | 2019-10-07 | 2022-10-04 | Servicenow, Inc. | Shared machine learning model for application discovery |
US11449496B2 (en) | 2019-10-25 | 2022-09-20 | Servicenow, Inc. | Enhanced natural language processing with semantic shortcuts |
US11122145B2 (en) | 2019-10-31 | 2021-09-14 | Servicenow, Inc. | Time series data analysis |
US11468238B2 (en) | 2019-11-06 | 2022-10-11 | ServiceNow Inc. | Data processing systems and methods |
US11481417B2 (en) | 2019-11-06 | 2022-10-25 | Servicenow, Inc. | Generation and utilization of vector indexes for data processing systems and methods |
US11429631B2 (en) | 2019-11-06 | 2022-08-30 | Servicenow, Inc. | Memory-efficient programmatic transformation of structured data |
US11531683B2 (en) | 2019-11-06 | 2022-12-20 | Servicenow, Inc. | Unified application programming interface for transformation of structured data |
US11455357B2 (en) | 2019-11-06 | 2022-09-27 | Servicenow, Inc. | Data processing systems and methods |
US11188530B2 (en) | 2019-11-25 | 2021-11-30 | Servicenow, Inc. | Metadata-based translation of natural language queries into database queries |
US11099903B2 (en) | 2019-12-05 | 2021-08-24 | Servicenow, Inc. | System and method for determining and tracking cloud capacity metrics |
US11652790B2 (en) | 2019-12-06 | 2023-05-16 | Servicenow, Inc. | Quarantine for cloud-based services |
US11423124B2 (en) | 2019-12-20 | 2022-08-23 | Servicenow, Inc. | Systems and methods for asset management |
US11258860B2 (en) | 2019-12-24 | 2022-02-22 | Servicenow, Inc. | System and method for bot detection and classification |
US11507692B2 (en) | 2019-12-31 | 2022-11-22 | Servicenow, Inc. | System and method for improved anonymized data repositories |
US11188553B2 (en) | 2019-12-31 | 2021-11-30 | Servicenow, Inc. | System and method for importation of configuration item (CI) data into a configuration management database (CMDB) |
US11275790B2 (en) | 2019-12-31 | 2022-03-15 | Servicenow, Inc. | Enhanced phrase scoring for textual search |
US11418395B2 (en) | 2020-01-08 | 2022-08-16 | Servicenow, Inc. | Systems and methods for an enhanced framework for a distributed computing system |
US11140223B2 (en) | 2020-01-14 | 2021-10-05 | Servicenow, Inc. | Systems and methods for synchronizing data between hub and spoke environments |
US11487411B2 (en) | 2020-02-20 | 2022-11-01 | Servicenow, Inc. | Context-driven group pill in a user interface |
US11385916B2 (en) | 2020-03-16 | 2022-07-12 | Servicenow, Inc. | Dynamic translation of graphical user interfaces |
US11068130B1 (en) | 2020-03-16 | 2021-07-20 | Servicenow, Inc. | Automatic restructuring of graphical user interface components based on user interaction |
US11580312B2 (en) | 2020-03-16 | 2023-02-14 | Servicenow, Inc. | Machine translation of chat sessions |
US11288608B2 (en) | 2020-04-14 | 2022-03-29 | Servicenow, Inc. | Systems and method for a project management portal |
US11301267B2 (en) | 2020-05-22 | 2022-04-12 | Servicenow, Inc. | Automated task management techniques |
US11636104B2 (en) | 2020-07-28 | 2023-04-25 | Servicenow, Inc. | Analytics center having a natural language query (NLQ) interface |
US11190623B1 (en) | 2020-08-26 | 2021-11-30 | Servicenow, Inc. | System and method for a data interchange hub |
US11784962B2 (en) | 2020-09-01 | 2023-10-10 | Servicenow, Inc. | Systems and methods for collaborative chat with non-native chat platforms |
US11474845B2 (en) | 2020-09-09 | 2022-10-18 | Servicenow, Inc. | System and method for versioned script management |
US11296926B1 (en) | 2021-01-07 | 2022-04-05 | Servicenow, Inc. | Systems and methods for ranked visualization of events |
US11599645B2 (en) | 2021-01-07 | 2023-03-07 | Servicenow, Inc. | Systems and methods for predicting cybersecurity vulnerabilities |
US11838374B2 (en) | 2021-02-12 | 2023-12-05 | Servicenow, Inc. | Remote network management infrastructure for cloud-based deployments |
US11374813B1 (en) * | 2021-04-23 | 2022-06-28 | Verizon Patent And Licensing Inc. | Software defined network device exposure to third parties |
US11768831B2 (en) | 2021-05-10 | 2023-09-26 | Servicenow, Inc. | Systems and methods for translating natural language queries into a constrained domain-specific language |
US11522943B1 (en) | 2022-02-02 | 2022-12-06 | Servicenow, Inc. | System and method for deferring data retrieval |
US11777815B1 (en) | 2022-03-02 | 2023-10-03 | Servicenow, Inc. | Techniques for dynamically configuring service availability |
US11949561B2 (en) | 2022-07-19 | 2024-04-02 | Servicenow, Inc. | Automated preventative controls in digital workflow |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050022156A1 (en) * | 2003-07-22 | 2005-01-27 | Joerg Schwan | Management of changes to objects |
US6996601B1 (en) * | 2001-07-26 | 2006-02-07 | Sprint Communications Company L.P. | Process for managing change within an enterprise |
US7051092B2 (en) * | 1999-12-30 | 2006-05-23 | International Business Machines Corporation | Request scheduler for automated software configuration |
US7254831B2 (en) * | 2002-12-04 | 2007-08-07 | Microsoft Corporation | Sharing a sign-in among software applications having secured features |
US7735086B2 (en) * | 2004-02-27 | 2010-06-08 | International Business Machines Corporation | Methods and arrangements for planning and scheduling change management requests in computing systems |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0541875A1 (en) * | 1991-11-15 | 1993-05-19 | International Business Machines Corporation | Method for facilitating the configuration of programs |
US20020082895A1 (en) * | 2000-12-22 | 2002-06-27 | Budka Phyllis R. | Method, apparatus and article for project management |
US7337124B2 (en) * | 2001-08-29 | 2008-02-26 | International Business Machines Corporation | Method and system for a quality software management process |
US20060179431A1 (en) * | 2003-03-19 | 2006-08-10 | Unisys Corporation | Rules-based deployment of computing components |
EP1612692A1 (en) * | 2003-04-10 | 2006-01-04 | Matsushita Electric Industrial Co., Ltd. | Password change system |
JP3889726B2 (en) * | 2003-06-27 | 2007-03-07 | 株式会社東芝 | Scheduling method and information processing system |
US7484212B2 (en) * | 2004-02-27 | 2009-01-27 | International Business Machines Corporation | Methods and arrangements for automated change plan construction and impact analysis |
US7689990B2 (en) * | 2005-03-25 | 2010-03-30 | International Business Machines Corporation | Method, system and program for managing executable tasks |
US8863137B2 (en) * | 2005-09-23 | 2014-10-14 | International Business Machines Corporation | Systems and methods for automated provisioning of managed computing resources |
US8887133B2 (en) | 2006-04-28 | 2014-11-11 | Bmc Software, Inc. | Bi-directional communication between change management tool and implementation tools |
-
2007
- 2007-04-27 US US11/741,709 patent/US8887133B2/en active Active
-
2014
- 2014-11-06 US US14/535,030 patent/US9152413B2/en active Active
-
2015
- 2015-10-01 US US14/872,869 patent/US11132192B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7051092B2 (en) * | 1999-12-30 | 2006-05-23 | International Business Machines Corporation | Request scheduler for automated software configuration |
US6996601B1 (en) * | 2001-07-26 | 2006-02-07 | Sprint Communications Company L.P. | Process for managing change within an enterprise |
US7254831B2 (en) * | 2002-12-04 | 2007-08-07 | Microsoft Corporation | Sharing a sign-in among software applications having secured features |
US20050022156A1 (en) * | 2003-07-22 | 2005-01-27 | Joerg Schwan | Management of changes to objects |
US7735086B2 (en) * | 2004-02-27 | 2010-06-08 | International Business Machines Corporation | Methods and arrangements for planning and scheduling change management requests in computing systems |
Cited By (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7756828B2 (en) * | 2006-02-28 | 2010-07-13 | Microsoft Corporation | Configuration management database state model |
US20070203952A1 (en) * | 2006-02-28 | 2007-08-30 | Microsoft Corporation | Configuration management database state model |
US8146083B2 (en) * | 2006-06-22 | 2012-03-27 | International Business Machines Corporation | Method and apparatus to modify a task within a set of tasks |
US20070300224A1 (en) * | 2006-06-22 | 2007-12-27 | Vijay Kumar Aggarwal | Method and apparatus to modify a task within a set of tasks |
US20080195453A1 (en) * | 2007-02-14 | 2008-08-14 | Simon Smith | Organisational Representational System |
US20090034016A1 (en) * | 2007-08-01 | 2009-02-05 | Silverbrook Research Pty Ltd | Method of Conferring Interactivity on Previously Printed Graphic Images |
US10970130B2 (en) * | 2008-06-02 | 2021-04-06 | Microsoft Technology Licensing, Llc | Composable and cancelable dataflow continuation passing |
US20200159595A1 (en) * | 2008-06-02 | 2020-05-21 | Microsoft Technology Licensing, Llc | Composable and cancelable dataflow continuation passing |
US20110099158A1 (en) * | 2009-10-28 | 2011-04-28 | Computer Associates Think, Inc. | System and method for automatically detecting, reporting, and tracking conflicts in a change management system |
US8219541B2 (en) * | 2009-10-28 | 2012-07-10 | Ca, Inc. | System and method for automatically detecting, reporting, and tracking conflicts in a change management system |
US8984483B2 (en) * | 2009-11-10 | 2015-03-17 | Zte Corporation | Control method and system for remote configuration |
US20120221689A1 (en) * | 2009-11-10 | 2012-08-30 | Yan Qian | Control method and system for remote configuration |
US20110191383A1 (en) * | 2010-02-01 | 2011-08-04 | Oracle International Corporation | Orchestration of business processes using templates |
US8402064B2 (en) | 2010-02-01 | 2013-03-19 | Oracle International Corporation | Orchestration of business processes using templates |
US20110218925A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Change management framework in distributed order orchestration system |
US20110218924A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Distributed order orchestration system for adjusting long running order management fulfillment processes with delta attributes |
US9904898B2 (en) | 2010-03-05 | 2018-02-27 | Oracle International Corporation | Distributed order orchestration system with rules engine |
US20110218842A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Distributed order orchestration system with rules engine |
US20110218927A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Compensation patterns for adjusting long running order management fulfillment processes in an distributed order orchestration system |
US20110219218A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Distributed order orchestration system with rollback checkpoints for adjusting long running order management fulfillment processes |
US10061464B2 (en) | 2010-03-05 | 2018-08-28 | Oracle International Corporation | Distributed order orchestration system with rollback checkpoints for adjusting long running order management fulfillment processes |
US20110218923A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Task layer service patterns for adjusting long running order management fulfillment processes for a distributed order orchestration system |
US20110218922A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Cost of change for adjusting long running order management fulfillment processes for a distributed order orchestration sytem |
US20110218926A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Saving order process state for adjusting long running order management fulfillment processes in a distributed order orchestration system |
US8793262B2 (en) | 2010-03-05 | 2014-07-29 | Oracle International Corporation | Correlating and mapping original orders with new orders for adjusting long running order management fulfillment processes |
US10789562B2 (en) | 2010-03-05 | 2020-09-29 | Oracle International Corporation | Compensation patterns for adjusting long running order management fulfillment processes in an distributed order orchestration system |
US20110218813A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Correlating and mapping original orders with new orders for adjusting long running order management fulfillment processes |
US20110218921A1 (en) * | 2010-03-05 | 2011-09-08 | Oracle International Corporation | Notify/inquire fulfillment systems before processing change requests for adjusting long running order management fulfillment processes in a distributed order orchestration system |
US10395205B2 (en) | 2010-03-05 | 2019-08-27 | Oracle International Corporation | Cost of change for adjusting long running order management fulfillment processes for a distributed order orchestration system |
US9269075B2 (en) | 2010-03-05 | 2016-02-23 | Oracle International Corporation | Distributed order orchestration system for adjusting long running order management fulfillment processes with delta attributes |
US9658901B2 (en) | 2010-11-12 | 2017-05-23 | Oracle International Corporation | Event-based orchestration in distributed order orchestration system |
US20120297331A1 (en) * | 2011-05-19 | 2012-11-22 | Sumathi Chutkay | Systems and methods for intelligent decision support |
US20130185701A1 (en) * | 2012-01-18 | 2013-07-18 | Sap Ag | Centralized, object-level change tracking |
US8832653B2 (en) * | 2012-01-18 | 2014-09-09 | Sap Ag | Centralized, object-level change tracking |
US10552769B2 (en) | 2012-01-27 | 2020-02-04 | Oracle International Corporation | Status management framework in a distributed order orchestration system |
US8762322B2 (en) | 2012-05-22 | 2014-06-24 | Oracle International Corporation | Distributed order orchestration system with extensible flex field support |
US9672560B2 (en) | 2012-06-28 | 2017-06-06 | Oracle International Corporation | Distributed order orchestration system that transforms sales products to fulfillment products |
US10191733B2 (en) * | 2013-06-25 | 2019-01-29 | Sap Se | Software change process orchestration in a runtime environment |
US20140380265A1 (en) * | 2013-06-25 | 2014-12-25 | Sap Ag | Software change process orchestration |
US9977654B2 (en) * | 2014-06-20 | 2018-05-22 | Asset, S.r.L. | Method of developing an application for execution in a workflow management system and apparatus to assist with generation of an application for execution in a workflow management system |
US20150370540A1 (en) * | 2014-06-20 | 2015-12-24 | Asset S.R.L. | Method of developing an application for execution in a workflow management system and apparatus to assist with generation of an application for execution in a workflow management system |
US20190053020A1 (en) * | 2016-07-25 | 2019-02-14 | Symbol Technologies, Llc | Systems and methods of deploying location tracking tags |
US10805769B2 (en) * | 2016-07-25 | 2020-10-13 | Symbol Technologies, Llc | Systems and methods of deploying location tracking tags |
CN110020765A (en) * | 2018-11-05 | 2019-07-16 | 阿里巴巴集团控股有限公司 | A kind of switching method and apparatus of operation flow |
Also Published As
Publication number | Publication date |
---|---|
US8887133B2 (en) | 2014-11-11 |
US9152413B2 (en) | 2015-10-06 |
US20160019059A1 (en) | 2016-01-21 |
US20150067643A1 (en) | 2015-03-05 |
US11132192B2 (en) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11132192B2 (en) | Bi-directional communication between change management tool and implementation tools | |
US9137106B2 (en) | Systems and methods for private cloud computing | |
US7251787B2 (en) | Method and apparatus for an integrated process modeller | |
US9912666B2 (en) | Access management for controlling access to computer resources | |
US20050060662A1 (en) | Process for creating service action data structures | |
US20080215358A1 (en) | Method, system, and storage medium for implementing business process modules | |
CN108351771B (en) | Maintaining control over restricted data during deployment to a cloud computing environment | |
US9298713B2 (en) | Executor for software configuration automation | |
US20150066572A1 (en) | Identity and access management | |
US20050043979A1 (en) | Process for executing approval workflows and fulfillment workflows | |
CN108351807B (en) | Event management to maintain control of restricted data in a cloud computing environment | |
US20090150887A1 (en) | Process Aware Change Management | |
US8655757B1 (en) | System and method for assigning a unique asset identity | |
JP2006313545A (en) | Method, system, and computer program for managing automatic resource provisioning by workload scheduler | |
US20050044099A1 (en) | Process for creating an information services catalog | |
Lindquist et al. | IBM service management architecture | |
US11841838B1 (en) | Data schema compacting operation when performing a data schema mapping operation | |
AU2013203291B2 (en) | Systems and methods for private cloud computing | |
US20240073091A1 (en) | Metadata-aware templating engine for assigning internet protocol address space in an organization | |
US10235678B1 (en) | System and method for managing distributed offerings | |
US8725610B1 (en) | System and method for managing privacy for offerings | |
US10657586B1 (en) | System and method for dynamic offering deployment | |
CN117350699A (en) | Automatic connection method and device for operation and maintenance flow platform and automation platform | |
Sabharwal et al. | Workload Automation Using HWA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: BMC SOFTWARE, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BEHNIA, KIA;MUELLER, DOUGLAS;REEL/FRAME:019563/0150;SIGNING DATES FROM 20070601 TO 20070701 Owner name: BMC SOFTWARE, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BEHNIA, KIA;MUELLER, DOUGLAS;SIGNING DATES FROM 20070601 TO 20070701;REEL/FRAME:019563/0150 |
|
AS | Assignment |
Owner name: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT, NORTH CAROLINA Free format text: SECURITY AGREEMENT;ASSIGNORS:BMC SOFTWARE, INC.;BLADELOGIC, INC.;REEL/FRAME:031204/0225 Effective date: 20130910 Owner name: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLAT Free format text: SECURITY AGREEMENT;ASSIGNORS:BMC SOFTWARE, INC.;BLADELOGIC, INC.;REEL/FRAME:031204/0225 Effective date: 20130910 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551) Year of fee payment: 4 |
|
AS | Assignment |
Owner name: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNORS:BMC SOFTWARE, INC.;BLADELOGIC, INC.;REEL/FRAME:047185/0744 Effective date: 20181002 Owner name: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLA Free format text: SECURITY INTEREST;ASSIGNORS:BMC SOFTWARE, INC.;BLADELOGIC, INC.;REEL/FRAME:047185/0744 Effective date: 20181002 |
|
AS | Assignment |
Owner name: BLADELOGIC, INC., TEXAS Free format text: RELEASE OF PATENTS;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:047198/0468 Effective date: 20181002 Owner name: BMC SOFTWARE, INC., TEXAS Free format text: RELEASE OF PATENTS;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:047198/0468 Effective date: 20181002 Owner name: BMC ACQUISITION L.L.C., TEXAS Free format text: RELEASE OF PATENTS;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:047198/0468 Effective date: 20181002 |
|
AS | Assignment |
Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT, TEXAS Free format text: SECURITY INTEREST;ASSIGNORS:BMC SOFTWARE, INC.;BLADELOGIC, INC.;REEL/FRAME:052844/0646 Effective date: 20200601 Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT, TEXAS Free format text: SECURITY INTEREST;ASSIGNORS:BMC SOFTWARE, INC.;BLADELOGIC, INC.;REEL/FRAME:052854/0139 Effective date: 20200601 |
|
AS | Assignment |
Owner name: ALTER DOMUS (US) LLC, ILLINOIS Free format text: GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS;ASSIGNORS:BMC SOFTWARE, INC.;BLADELOGIC, INC.;REEL/FRAME:057683/0582 Effective date: 20210930 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |
|
AS | Assignment |
Owner name: BLADELOGIC, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:ALTER DOMUS (US) LLC;REEL/FRAME:066567/0283 Effective date: 20240131 Owner name: BMC SOFTWARE, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:ALTER DOMUS (US) LLC;REEL/FRAME:066567/0283 Effective date: 20240131 |
|
AS | Assignment |
Owner name: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT, NEW YORK Free format text: OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT;REEL/FRAME:066729/0889 Effective date: 20240229 |