Many organizations have various hardware and software systems to manage various aspects of the organization's operations. Larger and more extensive organizations tend to have larger and more extensive hardware and software systems. Such systems may need to be upgraded or repaired from time to time. The change to the system (e.g., loading new software, upgrading servers, etc.) takes time to complete, and the change process itself may interfere with the normal operations of the system and the personnel using the system.
For a detailed description of various examples, reference will now be made to the accompanying drawings in which;
An information technology (“IT”) change” is a change to hardware and/or software. The IT change, for example, may be to replace or upgrade a hardware or software component. By way of an additional example, an IT change may be to add a hardware or software component to an existing system. An “IT ticket” is a record that represents a particular IT event. If the IT event is to implement an IT change, the ticket may be referred to as an “IT change ticket.” The present disclosure may at times refer to an IT ticket but in at least some embodiments, the IT ticket is an IT change ticket.
An IT change ticket specifies the particular change needed to the system as well as a time period associated with the ticket. The time period indicates the amount of time that is anticipated to be required to implement the IT change indicated by the ticket. The time period may be 30 minutes, 3 hours, 3 days, or any other time period.
Once an IT change ticket is created and it is known how much time the corresponding IT change will require, the issue becomes how to schedule the IT change. Some changes may impact multiple systems and groups of personnel, and each such system and personnel group may have its own preferences for when changes to the hardware and software systems they need can be made so as not to impact their productivity. For example, an organization's accounting department may prefer that the systems that the accounting department needs not be taken off-line for an IT change during the last few days of each month or at the end of each quarter. Other departments may have different preferences for when the systems on which they rely should remain operational and not be taken off-line for an IT change. Thus, a particular IT change may require various hardware and/or software systems to be taken off-line during performance of the IT change and such systems may impact multiple aspects of the organization, each with its own schedule.
A “blackout period” is a period of time during which an IT change should not be made. Individual subdivisions (e.g., departments) of an organization and individual hardware and/or software systems may have their own schedule of blackout periods. The scheduled blackout periods may be specified on any granularity of time (e.g., by minute, hour, day, etc.) and may be specified as far into the future as desired (e.g., one year). An entity is a subdivision of an organization, an individual, a hardware component, or a software component for which certain days and times are better or worse for an IT change to be performed that impacts that entity. In some implementations, positive and negative type time period instances may be specified for a particular entity. A positive type time period instance defines a period of time during which an IT change can be made without detrimentally impacting the corresponding entity. Thus, a positive type time period instance is acceptable for assignment of the IT change ticket. A negative type time period instance defines a period of time during which an IT change should not be made to the systems impacted by the change. That is, a negative type time period instance is not acceptable for assignment of the IT change ticket. Each entity may have its own calendar of positive and negative time period instances. The positive and negative time period instances may overlap, or not, between different instances.
Once an IT change has been approved and an IT change ticket has been created, the IT change ticket must be scheduled for the IT change to be performed. That is, a determination is made as to when the IT ticket change specified by the change ticket is to performed. In accordance with various implementations, each IT change ticket is scheduled taking into account the positive and negative type time period instances of the various entities that may be affected by the particular IT change. Various scheduling examples are illustrated herein that may be particularly efficient (at least more efficient than other techniques). Efficiency in determining how to schedule an IT change is particularly helpful if the tool determining the suitable time to schedule the change is implemented as a web-based system. At least in some embodiments, the tool described herein may be implemented as a web-based tool.
The non-transitory, computer readable storage device 130 may be implemented as volatile memory (e.g., random access memory), non-volatile memory (e.g., hard drive, flash memory, etc.), or combinations thereof. The output device 122 may be any type of user output device such as a display and the input device 124 may be any type of user-input device such as any one or more of a keyboard, mouse, trackpad, etc. The output device 122 and input device 124 may be connected directly to the processing resource 120 or may be part of a separate computer coupled to the processing resource 120 via a network. In some implementations, the processing resource 120 may implement a web-based service and the output device 122 and input device 124 may access the web-based service over the Internet.
The size of each time period instance may be any suitable time period (e.g., 30 minutes, 1 hour, 3 days, etc.), The IT change ticket 150 to be scheduled spans two such time periods. This means that the system 100 is to discover one or more consecutive positive type period instances that are long enough to permit the IT change identified in the IT change ticket 150 to be performed.
In accordance with various examples, the system 100 determines how to schedule the IT change reflected in the IT change ticket 150 in a step-wise approach. Each step corresponds to a particular search window. The length of each search window may be larger than the time period of the IT ticket itself, In the example of
Search window 1 in the example of
In the example of
In search window 3 (
At 172, the method includes determining a search window size based on a time period associated with an IT ticket. In some examples, the size of the determined search window is larger than the time period associated with an IT ticket to be scheduled. In one example, the search window is double the time needed by the IT change specified by an IT change ticket. At 174, the method further includes selecting a search window of the determined search window size. Selecting the search window includes defining its starting and ending times. Operations 172 and 174 may be performed by the search window selection engine 102.
At 176, the method includes retrieving time period instances that occur in the selected search window. As explained above, the retrieved time period instances may be of the positive type (acceptable for assignment of the IT ticket) or of the negative type (not acceptable for assignment of the IT ticket). This operation may be performed by time period instance merge engine 104. The retrieved time period instances are for the entities that would be impacted by the IT change ticket. The ticket may specify those entities and the time period instance merge engine 104 may then retrieve the relevant time period instances from storage device 125.
At 178, the method includes merging the overlapping positive type time period instances and, at 180, merging the overlapping negative type time period instances. These operations are also performed by the time period instance merge engine 104. The act of merging two time period instances may include storing only the storing and/or using the starting time of the earliest instance and the ending time of the most distant (in time) instance and ignoring the intermediate starting and ending times.
At 182, the method of
Operations 172-180 are the same as shown in
If no negative type time period (merged or individual) overlaps a positive type time period instance (merged or individual), then at 194, the method includes determining whether any merged or individual positive type time period instances in the search window is greater than or equal to the time period associated with the IT ticket. If such a positive type time period exists, then at 198, the method includes assigning the IT ticket in the current selected search window. However, if a positive type time period (merged or individual) of such sufficient length (at least equal to the time period associated with the IT ticket) is not present in the search window, then at 196, the method includes selecting the next search window (e.g., a search window which overlaps the current search window), and the process loops back to operation 176. Operations 194 and 198 may be performed by the IT ticket assignment engine 106 and operation 196 may be performed by the search window selection engine 102.
Returning to decision operation 192, if a merged or individual negative type time period instance does overlap a merged or individual positive type time period instance, then at 200, the method includes splitting the overlapped positive type period instance so that only contiguous positive type period instances are considered for assignment of the IT ticket. Control then flows to operation 194.
The above discussion is meant to be illustrative of the principles and various embodiments of the present invention. Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modifications.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US14/32012 | 3/27/2014 | WO | 00 |