The present invention relates to graphical user interfaces, and more specifically, to a graphical user interface for visualizing the severity of time intervals and events.
In general, graphical user interfaces (GUIs) are commonly used to graphically depict information to users in a way that is easily and quickly understandable by the user. Currently, a number of graphical user interface solutions are available that display timelines for the purpose of identifying when events have occurred or are scheduled to occur. These timelines are commonly used in GUIs for exploring historical events and for applications such as editing audio and video.
In many applications, a user may be interested in information regarding periods of time in addition to information regarding specific events. In some instances, a user may want to associate an importance level with a period of time in addition a specific event. For example, a user may want to indicate that a specific period of time before or after an event as important or critical.
While currently available GUIs are suitable for their intended purposes, existing GUIs do not address the need to express information regarding time periods in addition to events.
According to an exemplary embodiment, a method for displaying a timeline includes receiving, by a processor, a plurality of events and a plurality of time intervals, wherein each of the plurality of events and each of the plurality of time intervals include an associated importance level and determining one or more time periods that correspond to each of the plurality of time intervals. The method also includes displaying the time periods, wherein a color of a background of each time period is based upon the time interval that the time period corresponds to and indicative of the associated importance level of the time interval. The method further includes displaying an icon for each of the plurality of events, wherein the icon is indicative of the associated importance level of the event and wherein each icon is disposed in the time period that corresponds to a date of the event.
According to another exemplary embodiment, a computer program product for displaying a timeline is provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving, by a CPU, a plurality of events and a plurality of time intervals, wherein each of the plurality of events and each of the plurality of time intervals include an associated importance level and determining one or more time periods that correspond to each of the plurality of time intervals. The method also includes displaying the time periods, wherein a color of a background of each time period is based upon the time interval that the time period corresponds to and indicative of the associated importance level of the time interval. The method further includes displaying an icon for each of the plurality of events, wherein the icon is indicative of the associated importance level of the event and wherein each icon is disposed in the time period that corresponds to a date of the event.
According to a further exemplary embodiment, a system for displaying a timeline is provided; the system includes a processor unit configured to perform a method. The method includes receiving, by a CPU, a plurality of events and a plurality of time intervals, wherein each of the plurality of events and each of the plurality of time intervals include an associated importance level and determining one or more time periods that correspond to each of the plurality of time intervals. The method also includes displaying the time periods, wherein a color of a background of each time period is based upon the time interval that the time period corresponds to and indicative of the associated importance level of the time interval. The method further includes displaying an icon for each of the plurality of events, wherein the icon is indicative of the associated importance level of the event and wherein each icon is disposed in the time period that corresponds to a date of the event.
Additional features and advantages are realized through the techniques of the present invention. Other embodiments and aspects of the invention are described in detail herein and are considered a part of the claimed invention. For a better understanding of the invention with the advantages and the features, refer to the description and to the drawings.
The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The forgoing and other features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
Referring to
Thus, as configured in
Examples of operating systems that may be supported by the system 100 include Windows 95, Windows 98, Windows NT 4.0, Windows XP, Windows 2000, Windows CE, Windows Vista, Macintosh, Java, LINUX, and UNIX, or any other suitable operating system. The system 100 also includes a network interface 116 for communicating over a network. The network can be a local-area network (LAN), a metro-area network (MAN), or wide-area network (WAN), such as the Internet or World Wide Web. Users of the system 100 can connect to the network through any suitable network interface 116 connection, such as standard telephone lines, digital subscriber line, LAN or WAN links (e.g., T1, T3), broadband connections (Frame Relay, ATM), and wireless connections (e.g., 802.11a, 802.11b, 802.11g).
As disclosed herein, the system 100 includes machine readable instructions stored on machine readable media (for example, the hard disk 104) for capture and interactive display of information shown on the screen 115 of a user. As discussed herein, the instructions are referred to as “software” 120. The software 120 may be produced using software development tools as are known in the art. Also discussed herein, the software 120 may also referred to as a “command line testing tool” 120, an “a testing interface” 120 or by other similar terms. The software 120 may include various tools and features for providing user interaction capabilities as are known in the art.
Referring now to
In an exemplary embodiment, the timeline 210 depicted in the GUI 200 may be divided into monthly time periods 204, which are combined to form time intervals 206. Although the time periods 204 depicted are shown as months, it will be understood by those of ordinary skill in the art that the time period 204 may be any suitable time period 204 including, but not limited to, days, weeks, months, years or the like. The severity or importance of each time interval 206 can be indicated by the background color of the time periods 204 that correspond to each time interval 206. For example, a red background color may be used to indicate a critically important time period, an orange background color may be used to indicate a time period with major importance and a yellow background color may be used to indicate a time period with minor importance. In addition, the timeline 210 includes several events 202 that are each represented by an icon, the events 202 are located in the time period 204 during which the event occurred or is scheduled to occur. In exemplary embodiments, the icon used for each event 202 can be selected to be indicative of the severity or importance of the event. For example, a red icon may be used to indicate a critical event, an orange icon may be used to indicate an event with major importance and a yellow icon may be used to indicate an event with minor importance.
Referring now to
Referring now to
In exemplary embodiments, the a GUI 400 for illustrating a timeline 410 can be configured to automatically update the importance level associated with an event 402 and a time interval 406 based on changes in the current time period 414. For example, an event 402 may be configured to have a minor importance if the event is more than 90 days from the current time period 414, a major importance if the event is less than 90 days from the current time period 414 and more than 30 days from the current time period 414, or a critical importance if the event date is less than 5 days from the current time period 414. Likewise, a background color of the time periods 404 in each time interval 406 can be automatically changed based on changes in the current time period 414.
Referring now to
A timeline for visualizing the severity of time periods and events may be used in connection with various applications. In one example, the timeline for visualizing the severity of time periods and events can be used in connection with managing one or more software licenses or software maintenance agreements. For example, a typical software maintenance agreement or license may include various time intervals and events that could be displayed in the timeline. In one example, an event may include a termination date of the license or a date upon with a software vendor will no longer support a particular version of the software and the time interval may include a specific period of time either before or after the event that is of interest to the user. If the event is an date that a vendor will no longer be supporting a piece of software, various time intervals before this event may be desired by the user and may include increasing severity as the event approaches. If the event is the expiration date of a license, various time intervals either before or after the expiration date may be of interest to the user such as a renewal, notice or grace period that are provided for in the license agreement.
In another example, the timeline for visualizing the severity of time periods and events can be used in connection with project management or planning For example, in project management applications there are a variety of events and time intervals that each has an associated importance level, or severities, which can be illustrated by the timeline such that a user is able to immediately view and understand the timeline.
Referring now to
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one more other features, integers, steps, operations, element components, and/or groups thereof.
The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
The flow diagrams depicted herein are just one example. There may be many variations to this diagram or the steps (or operations) described therein without departing from the spirit of the invention. For instance, the steps may be performed in a differing order or steps may be added, deleted or modified. All of these variations are considered a part of the claimed invention.
While the preferred embodiment to the invention had been described, it will be understood that those skilled in the art, both now and in the future, may make various improvements and enhancements which fall within the scope of the claims which follow. These claims should be construed to maintain the proper protection for the invention first described.