US10930035B2 - Request resolution shaper in a networked system architecture - Google Patents
Request resolution shaper in a networked system architecture Download PDFInfo
- Publication number
- US10930035B2 US10930035B2 US16/417,257 US201916417257A US10930035B2 US 10930035 B2 US10930035 B2 US 10930035B2 US 201916417257 A US201916417257 A US 201916417257A US 10930035 B2 US10930035 B2 US 10930035B2
- Authority
- US
- United States
- Prior art keywords
- predictive
- indicia
- request
- event
- timeline
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 21
- 238000001514 detection method Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 9
- 238000013507 mapping Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 241000238876 Acari Species 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000000926 separation method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 235000015110 jellies Nutrition 0.000 description 1
- 239000008274 jelly Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004091 panning Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
Definitions
- the present disclosure relates in general to a request resolution shaper in a networked system architecture, and in particular to techniques and devices for understanding and resolving problems that arise or requests that are presented in a computer networked system or cloud-based architecture.
- Presenting requests or resolving problems in a network computer system can be quite complex at times and involve conveying voluminous amounts of information in a finite area of a computer display screen.
- an apparatus for generating a graphical display region for display of a plurality of pixels of a display device for a timeline display, comprising a processor, a network interface comprising a communications port connected to a network, a memory accessible by the processor and comprising a timeline display module that comprises instructions executable by the processor, wherein the timeline display module comprises instructions that generate a timeline axis for display in the graphical display region, wherein the timeline axis spans a predefined axis length within the display region, receive, at the network interface requester event data for a plurality of requester events from a requester device relating to a request and storing the requester event data, including a time of occurrence for each requester event, in the memory, and fulfiller event data for a plurality of fulfiller events from a fulfiller device and storing the fulfiller event data, including a time of occurrence for each fulfiller event, in the memory, calculate, with the processor a time scale for the timeline axis such that request
- a method for generating a graphical display region for display of a plurality of pixels of a display device, comprising generating a timeline axis for display in the graphical display region, wherein the timeline axis spans a predefined axis length within the display region, receiving, at a network interface of a server computer requester event data for a plurality of requester events from a requester device relating to a request and storing the requester event data, including a time of occurrence for each requester event, in a memory, and fulfiller event data for a plurality of fulfiller events from a fulfiller device and storing the fulfiller event data, including a time of occurrence for each fulfiller event, in the memory, calculating, with a processor a time scale for the timeline axis such that requester events and fulfiller events are displayable on the timeline axis at a position along the timeline axis proportional to their respective time of occurrence, and a respective axial position for requester indicia representing
- a non-transitory computer-readable storage medium comprising executable instructions that, when executed by a processor, facilitate performance of operations for reducing a security risk in a networked computer system architecture, according to the method described above.
- FIG. 1 is a block diagram of a networked distributed or cloud computing system used by an implementation of this disclosure.
- FIG. 2A is a block diagram of an implementation of an internal configuration of a computing device, such as a computing device of the computing system as shown in FIG. 1 .
- FIG. 2B is a block diagram showing an implementation of a system used for the timeline display.
- FIG. 3 is an implementation of a timeline diagram mapping a request and resolution.
- FIG. 4A is an implementation of a timeline diagram shown on a display device mapping an open request.
- FIG. 4B is an implementation of a timeline diagram shown on a display device mapping a closed request with a popover window on a tick mark.
- FIG. 4C is an implementation of a timeline diagram shown on a display device mapping a closed request with a popover window on a state indicator.
- FIG. 5 is a flowchart according to an implementation of a timeline diagram mapping routine.
- resolving technical problems or providing requests can be complex and difficult.
- the fault that caused a request may be with any of the computers involved in the system or the network infrastructure tying the computers together. Resolving a request may require a broad understanding of these computers and/or network infrastructure which may require multiple individuals to resolve.
- Providing graphical updates on a computer display device to assist in rapid diagnosing and present responsive and comprehensive status updates to requests and problems in networked computer systems in a concise manner has been a goal of system response teams.
- a request progresses through multiple communication channels (such as email, phone, chat, web, social media, etc.) between a requestor (one making a request) and a fulfiller (one ultimately responsible for fulfilling the request), keeping track of all the communication over time gets complex.
- a requestor one making a request
- a fulfiller one ultimately responsible for fulfilling the request
- Implementations of the present disclosure provide a resolution-based system and method that achieves this goal in an efficient and effective manner.
- the system predicts the completion of a request and key metrics (e.g. service level agreements (SLAs), downtime, costs) that are or may be breached.
- SLAs service level agreements
- downtime costs
- the request resolution shaper involves a method and device for producing a graphic visualization on a display device that represents a snapshot of a problem/request progression, current request state in terms of key metrics like service level agreement (SLA) status (e.g., whether an SLA is breached or is projected to be breached), and how close request completion is.
- SLA service level agreement
- a “request” can be a request to resolve a problem or a request for hardware, software, or any type of product or service.
- the request resolution shaper may be provided as a part of an integrated platform to represent various activities related to the request on a timeline.
- This timeline gives a chronological view of the request progression along with the activities and conversations that happened or are happening to accomplish it. It provides a way to compactly present information so that users are able to quickly understand and decide if an intervention or an escalation is required. States on the timeline can also convey a quality of interaction between the requestor and fulfiller.
- FIG. 1 is a block diagram of a distributed (e.g., client-server, networked, or cloud) computing system 100 .
- Cloud computing system 100 can have any number of customers, including customer 110 .
- Each customer 110 may have clients, such as clients 112 .
- Each of clients 112 can be in the form of a computing system comprising multiple computing devices, or in the form of a single computing device, for example, a mobile phone, a tablet computer, a laptop computer, a notebook computer, a desktop computer, and the like.
- Customer 110 and clients 112 are examples only, and a cloud computing system may have a different number of customers or clients or may have a different configuration of customers or clients. For example, there may be hundreds or thousands of customers and each customer may have any number of clients.
- Cloud computing system 100 can include any number of datacenters, including datacenter 120 .
- Each datacenter 120 may have servers, such as servers 122 .
- Each datacenter 120 may represent a facility in a different geographic location where servers are located.
- Each of servers 122 can be in the form of a computing system including multiple computing devices, or in the form of a single computing device, for example, a desktop computer, a server computer and the like.
- the datacenter 120 and servers 122 are examples only, and a cloud computing system may have a different number of datacenters and servers or may have a different configuration of datacenters and servers. For example, there may be tens of data centers and each data center may have hundreds or any number of servers.
- Clients 112 and servers 122 may be configured to connect to network 130 .
- the clients for a particular customer may connect to network 130 via a common connection point 116 or different connection points (e.g., a wireless connection point 118 and a wired connection point 119 ). Any combination of common or different connections points may be present, and any combination of wired and wireless connection points may be present as well.
- Network 130 can be, for example, the Internet.
- Network 130 can also be or include a local area network (LAN), wide area network (WAN), virtual private network (VPN), or any other means of transferring data between any of clients 112 and servers 122 .
- Network 130 , datacenter 120 and/or blocks not shown may include network hardware such as routers, switches, load balancers and/or other network devices.
- cloud computing system 100 devices other than the clients and servers shown may be included in system 100 .
- one or more additional servers may operate as a cloud infrastructure control, from which servers and/or clients of the cloud infrastructure are monitored, controlled and/or configured.
- some or all of the techniques described herein may operate on said cloud infrastructure control servers.
- some or all of the techniques described herein may operate on servers such as servers 122 .
- FIG. 2A is a block diagram of an example internal configuration of a computing device 200 , such as a client 112 or server device 122 of the computing system 100 as shown in FIG. 1 , including an infrastructure control server, of a computing system.
- clients 112 or servers 122 may take the form of a computing system including multiple computing units, or in the form of a single computing unit, for example, a mobile phone, a tablet computer, a laptop computer, a notebook computer, a desktop computer, a server computer and the like.
- the computing device 200 can comprise a number of components, as illustrated in FIG. 2A .
- CPU (or processor) 202 can be a central processing unit, such as a microprocessor, and can include single or multiple processors, each having single or multiple processing cores.
- CPU 202 can include another type of device, or multiple devices, capable of manipulating or processing information now-existing or hereafter developed. When multiple processing devices are present, they may be interconnected in any manner, including hardwired or networked, including wirelessly networked. Thus, the operations of CPU 202 can be distributed across multiple machines that can be coupled directly or across a local area or other network
- the CPU 202 can be a general-purpose processor or a special-purpose processor.
- RAM 204 can be any suitable non-permanent storage device that is used as memory.
- RAM 204 can include executable instructions and data for immediate access by CPU 202 .
- RAM 204 typically includes one or more DRAM modules such as DDR SDRAM.
- RAM 204 can include another type of device, or multiple devices, capable of storing data for processing by CPU 202 now-existing or hereafter developed.
- CPU 202 can access and manipulate data in RAM 204 via bus 212 .
- the CPU 202 may utilize a cache 220 as a form of localized fast memory for operating on data and instructions.
- Storage 206 can be in the form of read only memory (ROM), a disk drive, a solid-state drive, flash memory, Phase-Change Memory (PCM), or any form of non-volatile memory designed to maintain data for some duration of time, and preferably in the event of a power loss.
- a disk device as defined herein, can be an actual disk drive or other forms of storage devices designed to be accessed in a manner similar to an actual disk drive (e.g., flash cards and solid-state disk drives, and the like).
- Storage 206 can comprise executable instructions 206 A and application files/data 206 B along with other data.
- the executable instructions 206 A can include, for example, an operating system and one or more application programs for loading in whole or part into RAM 204 (with RAM-based executable instructions 204 A and application files/data 204 B) and to be executed by CPU 202 .
- the executable instructions 206 A may be organized into programmable modules or algorithms, functional programs, codes, and code segments designed to perform various functions described herein.
- the operating system can be, for example, a Microsoft Windows®, Mac OS X®, or Linux®, or operating system, or can be an operating system for a small device, such as a smart phone or tablet device, or a large device, such as a mainframe computer.
- the application program can include, for example, a web browser, web server and/or database server.
- Application files 206 B can, for example, include user files, database catalogs and configuration information.
- storage 206 comprises instructions to perform the discovery techniques described herein.
- Storage 206 may comprise one or multiple devices and may utilize one or more types of storage, such as solid state or magnetic.
- the computing device 200 can also include one or more input/output devices, such as a network communication unit 208 and interface 230 that may have a wired communication component or a wireless communications component 290 , which can be coupled to CPU 202 via bus 212 .
- the network communication unit 208 can utilized any of a variety of standardized network protocols, such as Ethernet, TCP/IP, to name a few of many protocols, to effect communications between devices.
- the interface 230 can include one or more transceiver(s) that utilize the Ethernet, power line communication (PLC), WiFi, infrared, GPRS/GSM, CDMA, etc.
- a user interface can be broken down into the hardware user interface portion and the software user interface portion.
- a hardware user interface e.g., display 210
- the hardware user interface can be coupled to the processor 202 via the bus 212 .
- Other output devices that permit a user to program or otherwise use the client or server can be provided in addition to or as an alternative to display 210 .
- the output device is or comprises a hardware display, this display can be implemented in various ways, including by a liquid crystal display (LCD) or a cathode-ray tube (CRT) or light emitting diode (LED) display, such as an OLED display.
- LCD liquid crystal display
- CRT cathode-ray tube
- LED light emitting diode
- the software graphical user interface constitutes programs and data that reflect information ultimately destined for display on a hardware device.
- the data can contain rendering instructions for bounded graphical display regions, such as windows, or pixel information representative of controls, such as buttons and drop-down menus.
- the rendering instructions can, for example, be in the form of HTML, SGML, JavaScript, Jelly, AngularJS, or other text or binary instructions for generating a graphical user interface on a display. that can be used to generate pixel information.
- a structured data output of one device can be provided to an input of the hardware display so that the elements provided on the hardware display screen represent the underlying structure of the output data.
- servers may omit display 210 .
- RAM 204 or storage 206 can be distributed across multiple machines such as network-based memory or memory in multiple machines performing the operations of clients or servers.
- bus 212 can be composed of multiple buses, that may be connected to each other through various bridges, controllers, and/or adapters.
- Computing devices 200 may contain any number of sensors and detectors that monitor the device 200 itself or the environment around the device 200 , or it may contain a location identification unit 260 , such as a GPS or other type of location device.
- the computing device 200 may also contain a power source 270 , such as a battery, so that the unit can operate in a self-contained manner. These may communicate with the CPU/processor 202 via the bus 212 .
- FIG. 2B is a block diagram showing an example system used for the timeline display.
- a client 112 or requester illustrated as a computer, but could also be an individual using a telephone, etc. to make requests, and a server 122 (i.e., fulfiller) both communicate with each other 286 via email, phone, chat, web, social media, or other communications channel. Any viable communication channel or mechanism may be utilized.
- a communications event logger 284 has access to the communications 286 and the sent events 280 , 282 associated with a requester-initiated request into an event database 291 , which may reside in the storage area 206 .
- the communication event logger may reside on the system enabling the integrations of the various channels to automatically capture the events of interest. There could also be manual logging of events by the fulfiller to capture the channels of communications that do not happen through the provided integrations.
- the computer 200 accesses these events 280 , 282 , and, based on the event data, sends display region updates to a display 210 to produce a timeline 300 .
- FIG. 3 is an example timeline diagram mapping a request and resolution that may be presented on a display 210 of the user interface of the computing device 200 described above.
- the timeline 300 comprises an actual horizontal line (timeline axis) 305 representing a time flow.
- the timeline axis may actually be in any orientation, but for the sake of simplicity, will be described as being horizontal.
- One of ordinary skill in the art will understand how to apply the teachings herein for different orientations of the timeline axis 305 .
- the timeline 300 is divided axially between requester event indicia or indications 310 below the line 305 that relate to a requester or customer 360 , and fulfiller event indicia or indications above the line 305 that relate to a fulfiller or agent 370 .
- these event indicia can be in the form of vertical ticks 330 . 1 above the timeline axis 305 that represent the activities initiated by a fulfiller 370 , and vertical ticks 330 . 2 below the timeline axis 305 that represent those activities initiated by a requestor (above- 330 . 1 and below-line 330 . 2 ticks may be referred to collectively or individually by way of example be referred to as 330 ).
- the ticks are preferably of a minimal pixel width that can still be readily seen on the display.
- a time summary 365 for the customer 36 and a time summary 375 for the agent 370 are provided.
- a legend 350 may also be provided for the timeline.
- a request can be initiated by a requester 360 through various communication activities that include, but are not limited to, a phone call, a comment, an email, or a web page interaction. Any communication mechanism may be used to initiate the request.
- Various status markers may be utilized on the timeline. For example, referring to FIG. 4A , which is an implementation of a timeline diagram mapping an open request, a first state indicator 380 . 1 can illustrate an initiation status in a state of new. A second state indicator 380 . 2 can indicate a status of open, a third state indicator 380 . 3 can indicate a status of “in work”.
- FIG. 4B is a similar timeline 300 to that shown in FIG.
- a user can hover a pointer over a tick mark 330 , or (see FIG. 4C ) over a state indicator 380 to display a popover window or other display mechanism that provides additional informational details related to the underlying tick mark 330 or state indicator 380 .
- the tick mark 330 or state indicator 380 could also be a selectable hyperlink to further information, or, text within the display mechanism 385 could contain a hyperlink to further information.
- the popover window can contain hyperlinks to information about Joe User, the customer, the related email, or other relevant information.
- the status markers or state indicators 380 represent various stages described above (open, work-in-progress, close, etc.). However, these are just examples of possible stages for a generic incoming request, and they are customizable based on the particular use-case and the type of the request (e.g., Incident, Problem, Change, Case, etc.). For a generic incoming request, the following statuses are provided with example and non-limiting descriptions: 1) open—the request has been received and accepted by a fulfiller; 2) work in progress—the fulfiller is actively working on the request in this stage; 3) close—after the solution provided by fulfiller satisfies the requestor, the request can be marked as close.
- the state indicators 380 of a request's progression on the timeline are shown, which may or may not relate specifically to the requester 360 or the fulfiller 370 . These markers or images are shown as circles, but they can be any form of graphical image or icon capable of conveying the state, status, or stage information relevant to the request and its progress. Furthermore, additional and/or more specialized states can be customized as well.
- timeline axis 305 color may be used to represent various key performance indicators (KPIs) or metrics being breached and how close they are to being breached. For example, if an SLA is breached, the timeline axis 305 could change from BLACK to RED from the point of the breach to the end of resolution. Similarly, color could be used for any of the tick marks 330 , status indicators 380 , or other display mechanisms 385 for indicating other attributes.
- KPIs key performance indicators
- the data illustrated on the timeline 300 can be any metric data that represent various KPIs that can be derived as the request progresses. For example, as illustrated above, this data can be a summary of time spent on request by fulfiller on top to time spent by requestor on bottom. Metric data may be shown on the right-hand side of timeline, but can also be displayed at any location or graphical region on the display device.
- FIG. 5 is a flowchart according to an implementation of a timeline diagram mapping routine used to create the display discussed in detail above.
- the requester initiates the request 502 in a manner described above, and then subsequently, requester event data is received 505 and fulfiller event data is received 510 .
- the timeline may be displayed on a display device.
- the routine then calculates the timeline axis scale 515 , based on various factors discussed below. Once the appropriate timeline axis scale has been determined, the relative positions for indicia representing both requester and fulfiller event data are calculated 520 .
- the requester event indicia is then generated according to the calculated position on one side of the timeline 525 , and the fulfiller event indicia is generated according to the calculated position on the other side of the timeline 530 . State of the request indicia is also generated on the timeline 535 .
- the timeline can be presented such that it fills substantially all of the display's graphical region in a particular direction, such as the width.
- the term “substantially” means that an allowance can be made for a border region or the like for aesthetic purposes.
- the display region can relate to the size of a window on a display device. By way of example, if the display's graphical region (not counting border regions that may be used for aesthetic purposes) is one thousand pixels, and the current timeline is ten days long, then the timeline is displayed in a manner such that each day is one hundred pixels. This scaling can be updated with each change in timeline length, such that the entire timeline can always be seen.
- timeline scaling prevents displayed indicia collisions, i.e., display indicia overlapping with one another for a particular type of indicia (i.e., event indicia do not overlap other event indicia, and state indicia do not overlap other state indicia—as shown in the FIGS., it is acceptable if the tick marks 330 and the state indicators 380 overlap). If a particular time scale would result in either of these overlapping other like indicia, the time scale is adjusted so that these indicia do not overlap. The scale can be calculated based on the width of the respective indicia on the display in pixels, and the time separation between the indicia.
- the scaling can be performed so that no two events are close enough together so that they cannot be easily individually selected, i.e., that there is a gap between them. For example, if it is determined that a five-pixel separation is the minimum separation for ease of selectability, and the closest two events are one minute apart, then the scaling would be performed so that two hundred minutes of the timeline are displayed in some selected region (which could be the region in which two closely-spaced events occur). Additionally, any mechanism for zooming and panning the timeline by an arbitrary amount may be provided using user interface elements such as a mouse wheel spin or a click-drag operation with a mouse.
- two ten-pixel wide state markers 380 in order to maintain a five-pixel predefined minimum separation, must have their centers spaced fifteen pixels apart. If the two states are fifteen minutes apart, then a scale of one pixel per minute is calculated and that portion of the timeline is redrawn.
- the ticks/event lines on the display may be grouped together as thicker lines, which can visually indicate to the user that there could be multiple of these events happening simultaneously or in close temporal proximity of one another.
- One way to provide further information on such grouped events may be for the user to hover over these grouped events and then the tooltip may display multiple communication details one below the other.
- the system can calculate and provide a prediction of the completion of the request.
- This prediction can be based on situations where the individual elements that make up a resolution to the request can be determined or predicted, and times for completion of these elements can be established, such as by predefined standards or historical averages.
- Another situation may be where a prediction (or schedule) is based on Service Level Agreement (SLA) thresholds or rules which are calculated based on predefined rules in the system (e.g., priority, requestor premium status (such as a VIP requestor)).
- SLA Service Level Agreement
- Such SLA rules are typically setup based on contractual obligations to the requestor.
- fulfilling a request is known to typically require Task A, Task B, and Task C, and each task takes one day to complete (e.g., known from historical averages)
- the system could predict an overall completion time for fulfilling the request as being three days.
- the system could also take a degree of variance for a task into account and incorporate that into the calculations as well as the display itself (e.g., the variance being represented by the diameter of a circle on the timeline.
- an indication such as color, could be used to show a variance between a predicted time and an actual time, highlighting where the actual time is exceeding a predicted time (e.g., by coloring in red).
- an SLA requires a fulfilment/resolution time of nine hours. If there are three tasks, as in the example above, and they are equally apportioned, then the prediction mechanism allocates three hours for each task. However, the tasks do not have to be equally apportioned and calculations can be made that adjust the times, but preserves the relative ratios between the tasks. In this way, the desired end result is known and the intermediate tasks are calculated so that the necessary times for performing them can be determined and displayed. Variations between actual and calculated can be illustrated in a way described above.
- All or a portion of implementations of the invention described herein can be implemented using a general-purpose computer/processor with a computer program that, when executed, carries out any of the respective techniques, algorithms and/or instructions described herein.
- a special-purpose computer/processor can be utilized which can contain specialized hardware for carrying out any of the techniques, algorithms, or instructions described herein.
- the implementations of computing devices as described herein can be realized in hardware, software, or any combination thereof.
- the hardware can include, for example, computers, intellectual property (IP) cores, application-specific integrated circuits (ASICs), programmable logic arrays, optical processors, programmable logic controllers, microcode, microcontrollers, servers, microprocessors, digital signal processors or any other suitable circuit.
- IP intellectual property
- ASICs application-specific integrated circuits
- programmable logic arrays optical processors
- programmable logic controllers microcode, microcontrollers
- servers microprocessors, digital signal processors or any other suitable circuit.
- processors should be understood as encompassing any of the foregoing hardware, either singly or in combination.
- one or more computing devices can include an ASIC or programmable logic array such as a field-programmable gate array (FPGA) configured as a special-purpose processor to perform one or more of the operations or operations described or claimed herein.
- FPGA field-programmable gate array
- An example FPGA can include a collection of logic blocks and random access memory (RAM) blocks that can be individually configured and/or configurably interconnected in order to cause the FPGA to perform certain functions. Certain FPGA's may contain other general or special-purpose blocks as well.
- An example FPGA can be programmed based on a hardware definition language (HDL) design, such as VHSIC Hardware Description Language or Verilog.
- HDL hardware definition language
- the embodiments herein may be described in terms of functional block components and various processing steps. Such functional blocks may be realized by any number of hardware and/or software components that perform the specified functions.
- the described embodiments may employ various integrated circuit components (e.g., memory elements, processing elements, logic elements, look-up tables, and the like) which may carry out a variety of functions under the control of one or more microprocessors or other control devices.
- the elements of the described embodiments are implemented using software programming or software elements the invention may be implemented with any programming or scripting language such as C, C++, Java, assembler, or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements.
- Functional implementations may be implemented in algorithms that execute on one or more processors.
- the embodiments of the invention could employ any number of conventional techniques for electronics configuration, signal processing and/or control, data processing and the like.
- the words “mechanism” and “element” are used broadly and are not limited to mechanical or physical embodiments, but can include software routines in conjunction with processors, etc.
- Implementations or portions of implementations of the above disclosure can take the form of a computer program product accessible from, for example, a computer-usable or computer-readable medium.
- a computer-usable or computer-readable medium can be any device that can, for example, tangibly contain, store, communicate, or transport a program or data structure for use by or in connection with any processor.
- the medium can be, for example, an electronic, magnetic, optical, electromagnetic, or a semiconductor device. Other suitable mediums are also available.
- Such computer-usable or computer-readable media can be referred to as non-transitory memory or media, and may include RAM or other volatile memory or storage devices that may change over time.
- a memory of an apparatus described herein, unless otherwise specified, does not have to be physically contained by the apparatus, but is one that can be accessed remotely by the apparatus, and does not have to be contiguous with other memory that might be physically contained by the apparatus.
- example is used herein to mean serving as an example, instance, or illustration. Any implementation or design described herein as “example” is not necessarily to be construed as preferred or advantageous over other implementations or designs. Rather, use of the word “example” is intended to present concepts in a concrete fashion.
- the term “or” is intended to mean an inclusive “or” rather than an exclusive “or”. That is, unless specified otherwise, or clear from context, “X includes A or B” is intended to mean any of the natural inclusive permutations. In other words, if X includes A; X includes B; or X includes both A and B, then “X includes A or B” is satisfied under any of the foregoing instances.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Human Computer Interaction (AREA)
- Educational Administration (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
An apparatus and related method are provided for generating a graphical display region for display of a plurality of pixels of a display device, comprising generating a timeline axis for display in the graphical display region, receiving requester event data for a plurality of requester events from a requester device relating to a request and storing the requester event data, including a time of occurrence for each requester event, and fulfiller event data for fulfiller events from a fulfiller device and storing the fulfiller event data, calculating a time scale for the timeline axis such that requester events and fulfiller events are displayable at a position along the timeline axis proportional to their respective time of occurrence, and a respective axial position for requester indicia representing the requester events and fulfiller indicia representing the fulfiller events at a position along the timeline axis proportional to their respective time of occurrence.
Description
This application is a continuation of U.S. application Ser. No. 15/597,935, filed on May 17, 2017, which is a continuation of U.S. application Ser. No. 15/086,728, filed on Mar. 31, 2016, the contents of which are herein expressly incorporated by reference for all purposes.
The present disclosure relates in general to a request resolution shaper in a networked system architecture, and in particular to techniques and devices for understanding and resolving problems that arise or requests that are presented in a computer networked system or cloud-based architecture.
Presenting requests or resolving problems in a network computer system can be quite complex at times and involve conveying voluminous amounts of information in a finite area of a computer display screen.
According to an implementation of the invention, an apparatus is provided for generating a graphical display region for display of a plurality of pixels of a display device for a timeline display, comprising a processor, a network interface comprising a communications port connected to a network, a memory accessible by the processor and comprising a timeline display module that comprises instructions executable by the processor, wherein the timeline display module comprises instructions that generate a timeline axis for display in the graphical display region, wherein the timeline axis spans a predefined axis length within the display region, receive, at the network interface requester event data for a plurality of requester events from a requester device relating to a request and storing the requester event data, including a time of occurrence for each requester event, in the memory, and fulfiller event data for a plurality of fulfiller events from a fulfiller device and storing the fulfiller event data, including a time of occurrence for each fulfiller event, in the memory, calculate, with the processor a time scale for the timeline axis such that requester events and fulfiller events are displayable on the timeline axis at a position along the timeline axis proportional to their respective time of occurrence, and a respective axial position for requester indicia representing the requester events and fulfiller indicia representing the fulfiller events at a position along the timeline axis proportional to their respective time of occurrence, generate, on a requester side of the timeline axis in the display region, the requester indicia, generate, on a fulfiller side of the timeline axis in the display region, the fulfiller indicia, such that a position of the requester indicia is visually distinguishable from a position of the fulfiller indicia in a direction perpendicular to the timeline axis, and generate, on the timeline axis in the display region, state indicia of the request.
According to another implementation, a method is provided for generating a graphical display region for display of a plurality of pixels of a display device, comprising generating a timeline axis for display in the graphical display region, wherein the timeline axis spans a predefined axis length within the display region, receiving, at a network interface of a server computer requester event data for a plurality of requester events from a requester device relating to a request and storing the requester event data, including a time of occurrence for each requester event, in a memory, and fulfiller event data for a plurality of fulfiller events from a fulfiller device and storing the fulfiller event data, including a time of occurrence for each fulfiller event, in the memory, calculating, with a processor a time scale for the timeline axis such that requester events and fulfiller events are displayable on the timeline axis at a position along the timeline axis proportional to their respective time of occurrence, and a respective axial position for requester indicia representing the requester events and fulfiller indicia representing the fulfiller events at a position along the timeline axis proportional to their respective time of occurrence, generating, on a requester side of the timeline axis in the display region, the requester indicia, generating, on a fulfiller side of the timeline axis in the display region, the fulfiller indicia, such that a position of the requester indicia is visually distinguishable from a position of the fulfiller indicia in a direction perpendicular to the timeline axis, and generating, on the timeline axis in the display region, state indicia of the request.
According to a further implementation, a non-transitory computer-readable storage medium is provided, comprising executable instructions that, when executed by a processor, facilitate performance of operations for reducing a security risk in a networked computer system architecture, according to the method described above.
The description herein makes reference to the accompanying drawings wherein like reference numerals refer to like parts throughout the several views.
In complex network computer systems, such as cloud-based architectures or client-server models, resolving technical problems or providing requests can be complex and difficult. For example, the fault that caused a request may be with any of the computers involved in the system or the network infrastructure tying the computers together. Resolving a request may require a broad understanding of these computers and/or network infrastructure which may require multiple individuals to resolve.
Furthermore, providing large volumes of information within the limits of a graphical display without the display becoming cluttered and confusing can be challenging, and prior efforts to do so in the computer system problem resolution space have not been optimal.
Providing graphical updates on a computer display device to assist in rapid diagnosing and present responsive and comprehensive status updates to requests and problems in networked computer systems in a concise manner has been a goal of system response teams. As a request progresses through multiple communication channels (such as email, phone, chat, web, social media, etc.) between a requestor (one making a request) and a fulfiller (one ultimately responsible for fulfilling the request), keeping track of all the communication over time gets complex. There is a need for simplified and concise visual representation on a display device for faster and more accurate decision-making.
Implementations of the present disclosure provide a resolution-based system and method that achieves this goal in an efficient and effective manner. The system predicts the completion of a request and key metrics (e.g. service level agreements (SLAs), downtime, costs) that are or may be breached.
Specifically, the request resolution shaper involves a method and device for producing a graphic visualization on a display device that represents a snapshot of a problem/request progression, current request state in terms of key metrics like service level agreement (SLA) status (e.g., whether an SLA is breached or is projected to be breached), and how close request completion is. For purposes of discussion below, a “request” can be a request to resolve a problem or a request for hardware, software, or any type of product or service.
The request resolution shaper may be provided as a part of an integrated platform to represent various activities related to the request on a timeline. This timeline gives a chronological view of the request progression along with the activities and conversations that happened or are happening to accomplish it. It provides a way to compactly present information so that users are able to quickly understand and decide if an intervention or an escalation is required. States on the timeline can also convey a quality of interaction between the requestor and fulfiller.
These implementations of the invention are discussed in more detail below, after a discussion of a general structure of a computer network and cloud computing, as well as a general structure of a computer within this network, on which the implementations may be run.
Other implementations of the cloud computing system 100 are also possible. For example, devices other than the clients and servers shown may be included in system 100. In an implementation, one or more additional servers may operate as a cloud infrastructure control, from which servers and/or clients of the cloud infrastructure are monitored, controlled and/or configured. For example, some or all of the techniques described herein may operate on said cloud infrastructure control servers. Alternatively, or in addition, some or all of the techniques described herein may operate on servers such as servers 122.
The computing device 200 can comprise a number of components, as illustrated in FIG. 2A . CPU (or processor) 202 can be a central processing unit, such as a microprocessor, and can include single or multiple processors, each having single or multiple processing cores. Alternatively, CPU 202 can include another type of device, or multiple devices, capable of manipulating or processing information now-existing or hereafter developed. When multiple processing devices are present, they may be interconnected in any manner, including hardwired or networked, including wirelessly networked. Thus, the operations of CPU 202 can be distributed across multiple machines that can be coupled directly or across a local area or other network The CPU 202 can be a general-purpose processor or a special-purpose processor.
Random Access Memory (RAM 204) can be any suitable non-permanent storage device that is used as memory. RAM 204 can include executable instructions and data for immediate access by CPU 202. RAM 204 typically includes one or more DRAM modules such as DDR SDRAM. Alternatively, RAM 204 can include another type of device, or multiple devices, capable of storing data for processing by CPU 202 now-existing or hereafter developed. CPU 202 can access and manipulate data in RAM 204 via bus 212. The CPU 202 may utilize a cache 220 as a form of localized fast memory for operating on data and instructions.
The computing device 200 can also include one or more input/output devices, such as a network communication unit 208 and interface 230 that may have a wired communication component or a wireless communications component 290, which can be coupled to CPU 202 via bus 212. The network communication unit 208 can utilized any of a variety of standardized network protocols, such as Ethernet, TCP/IP, to name a few of many protocols, to effect communications between devices. The interface 230 can include one or more transceiver(s) that utilize the Ethernet, power line communication (PLC), WiFi, infrared, GPRS/GSM, CDMA, etc.
A user interface can be broken down into the hardware user interface portion and the software user interface portion. A hardware user interface (e.g., display 210) can include a display, positional input device (such as a mouse, touchpad, touchscreen, or the like), keyboard, or other forms of user input and output devices and hardware. The hardware user interface can be coupled to the processor 202 via the bus 212. Other output devices that permit a user to program or otherwise use the client or server can be provided in addition to or as an alternative to display 210. When the output device is or comprises a hardware display, this display can be implemented in various ways, including by a liquid crystal display (LCD) or a cathode-ray tube (CRT) or light emitting diode (LED) display, such as an OLED display.
The software graphical user interface constitutes programs and data that reflect information ultimately destined for display on a hardware device. For example, the data can contain rendering instructions for bounded graphical display regions, such as windows, or pixel information representative of controls, such as buttons and drop-down menus. The rendering instructions can, for example, be in the form of HTML, SGML, JavaScript, Jelly, AngularJS, or other text or binary instructions for generating a graphical user interface on a display. that can be used to generate pixel information. A structured data output of one device can be provided to an input of the hardware display so that the elements provided on the hardware display screen represent the underlying structure of the output data.
Other implementations of the internal configuration or architecture of clients and servers 200 are also possible. For example, servers may omit display 210. RAM 204 or storage 206 can be distributed across multiple machines such as network-based memory or memory in multiple machines performing the operations of clients or servers. Although depicted here as a single bus, bus 212 can be composed of multiple buses, that may be connected to each other through various bridges, controllers, and/or adapters. Computing devices 200 may contain any number of sensors and detectors that monitor the device 200 itself or the environment around the device 200, or it may contain a location identification unit 260, such as a GPS or other type of location device. The computing device 200 may also contain a power source 270, such as a battery, so that the unit can operate in a self-contained manner. These may communicate with the CPU/processor 202 via the bus 212.
As noted above, various implementations of the invention may be run on the computing devices 200 described above and within the context of a networked computing system 100. FIG. 2B is a block diagram showing an example system used for the timeline display. A client 112 or requester, illustrated as a computer, but could also be an individual using a telephone, etc. to make requests, and a server 122 (i.e., fulfiller) both communicate with each other 286 via email, phone, chat, web, social media, or other communications channel. Any viable communication channel or mechanism may be utilized. A communications event logger 284 has access to the communications 286 and the sent events 280, 282 associated with a requester-initiated request into an event database 291, which may reside in the storage area 206. The communication event logger may reside on the system enabling the integrations of the various channels to automatically capture the events of interest. There could also be manual logging of events by the fulfiller to capture the channels of communications that do not happen through the provided integrations. The computer 200 accesses these events 280, 282, and, based on the event data, sends display region updates to a display 210 to produce a timeline 300.
A request can be initiated by a requester 360 through various communication activities that include, but are not limited to, a phone call, a comment, an email, or a web page interaction. Any communication mechanism may be used to initiate the request. Various status markers (state indicia) may be utilized on the timeline. For example, referring to FIG. 4A , which is an implementation of a timeline diagram mapping an open request, a first state indicator 380.1 can illustrate an initiation status in a state of new. A second state indicator 380.2 can indicate a status of open, a third state indicator 380.3 can indicate a status of “in work”. FIG. 4B is a similar timeline 300 to that shown in FIG. 4A , except that it is a closed item and has a fourth state indicator 380.4 as a closed status indicator (the state indicia 380.1-4 can be collectively or individually by way of example referred to herein as 380). As is illustrated in FIGS. 4A and 4B , a user can hover a pointer over a tick mark 330, or (see FIG. 4C ) over a state indicator 380 to display a popover window or other display mechanism that provides additional informational details related to the underlying tick mark 330 or state indicator 380. The tick mark 330 or state indicator 380 could also be a selectable hyperlink to further information, or, text within the display mechanism 385 could contain a hyperlink to further information. In an implementation, the popover window can contain hyperlinks to information about Joe User, the customer, the related email, or other relevant information.
The status markers or state indicators 380 represent various stages described above (open, work-in-progress, close, etc.). However, these are just examples of possible stages for a generic incoming request, and they are customizable based on the particular use-case and the type of the request (e.g., Incident, Problem, Change, Case, etc.). For a generic incoming request, the following statuses are provided with example and non-limiting descriptions: 1) open—the request has been received and accepted by a fulfiller; 2) work in progress—the fulfiller is actively working on the request in this stage; 3) close—after the solution provided by fulfiller satisfies the requestor, the request can be marked as close. The state indicators 380 of a request's progression on the timeline are shown, which may or may not relate specifically to the requester 360 or the fulfiller 370. These markers or images are shown as circles, but they can be any form of graphical image or icon capable of conveying the state, status, or stage information relevant to the request and its progress. Furthermore, additional and/or more specialized states can be customized as well.
In an implementation, although not illustrated in the FIGs., timeline axis 305 color may be used to represent various key performance indicators (KPIs) or metrics being breached and how close they are to being breached. For example, if an SLA is breached, the timeline axis 305 could change from BLACK to RED from the point of the breach to the end of resolution. Similarly, color could be used for any of the tick marks 330, status indicators 380, or other display mechanisms 385 for indicating other attributes.
The data illustrated on the timeline 300 can be any metric data that represent various KPIs that can be derived as the request progresses. For example, as illustrated above, this data can be a summary of time spent on request by fulfiller on top to time spent by requestor on bottom. Metric data may be shown on the right-hand side of timeline, but can also be displayed at any location or graphical region on the display device.
One implementation provides the concept of timeline scaling. This can be provided in a number of different ways. First, the timeline can be presented such that it fills substantially all of the display's graphical region in a particular direction, such as the width. The term “substantially” means that an allowance can be made for a border region or the like for aesthetic purposes. The display region can relate to the size of a window on a display device. By way of example, if the display's graphical region (not counting border regions that may be used for aesthetic purposes) is one thousand pixels, and the current timeline is ten days long, then the timeline is displayed in a manner such that each day is one hundred pixels. This scaling can be updated with each change in timeline length, such that the entire timeline can always be seen.
Another way of timeline scaling prevents displayed indicia collisions, i.e., display indicia overlapping with one another for a particular type of indicia (i.e., event indicia do not overlap other event indicia, and state indicia do not overlap other state indicia—as shown in the FIGS., it is acceptable if the tick marks 330 and the state indicators 380 overlap). If a particular time scale would result in either of these overlapping other like indicia, the time scale is adjusted so that these indicia do not overlap. The scale can be calculated based on the width of the respective indicia on the display in pixels, and the time separation between the indicia.
In addition to preventing overlapping, the scaling can be performed so that no two events are close enough together so that they cannot be easily individually selected, i.e., that there is a gap between them. For example, if it is determined that a five-pixel separation is the minimum separation for ease of selectability, and the closest two events are one minute apart, then the scaling would be performed so that two hundred minutes of the timeline are displayed in some selected region (which could be the region in which two closely-spaced events occur). Additionally, any mechanism for zooming and panning the timeline by an arbitrary amount may be provided using user interface elements such as a mouse wheel spin or a click-drag operation with a mouse. For example, two ten-pixel wide state markers 380, in order to maintain a five-pixel predefined minimum separation, must have their centers spaced fifteen pixels apart. If the two states are fifteen minutes apart, then a scale of one pixel per minute is calculated and that portion of the timeline is redrawn. When two events occur close enough in time (e.g., based on a threshold for a given scale)—including concurrent/simultaneous events—the ticks/event lines on the display may be grouped together as thicker lines, which can visually indicate to the user that there could be multiple of these events happening simultaneously or in close temporal proximity of one another. One way to provide further information on such grouped events may be for the user to hover over these grouped events and then the tooltip may display multiple communication details one below the other.
In another implementation, the system can calculate and provide a prediction of the completion of the request. This prediction can be based on situations where the individual elements that make up a resolution to the request can be determined or predicted, and times for completion of these elements can be established, such as by predefined standards or historical averages. Another situation may be where a prediction (or schedule) is based on Service Level Agreement (SLA) thresholds or rules which are calculated based on predefined rules in the system (e.g., priority, requestor premium status (such as a VIP requestor)). Such SLA rules are typically setup based on contractual obligations to the requestor.) Thus, in one example, if fulfilling a request is known to typically require Task A, Task B, and Task C, and each task takes one day to complete (e.g., known from historical averages), then the system could predict an overall completion time for fulfilling the request as being three days. The system could also take a degree of variance for a task into account and incorporate that into the calculations as well as the display itself (e.g., the variance being represented by the diameter of a circle on the timeline. Furthermore, once a prediction is made, an indication, such as color, could be used to show a variance between a predicted time and an actual time, highlighting where the actual time is exceeding a predicted time (e.g., by coloring in red).
However, instead of standards or historical averages, some other basis, such as contractual obligations, could be utilized for making the predictions. For example, for a particular request, an SLA requires a fulfilment/resolution time of nine hours. If there are three tasks, as in the example above, and they are equally apportioned, then the prediction mechanism allocates three hours for each task. However, the tasks do not have to be equally apportioned and calculations can be made that adjust the times, but preserves the relative ratios between the tasks. In this way, the desired end result is known and the intermediate tasks are calculated so that the necessary times for performing them can be determined and displayed. Variations between actual and calculated can be illustrated in a way described above.
All or a portion of implementations of the invention described herein can be implemented using a general-purpose computer/processor with a computer program that, when executed, carries out any of the respective techniques, algorithms and/or instructions described herein. In addition, or alternatively, for example, a special-purpose computer/processor can be utilized which can contain specialized hardware for carrying out any of the techniques, algorithms, or instructions described herein.
The implementations of computing devices as described herein (and the algorithms, methods, instructions, etc., stored thereon and/or executed thereby) can be realized in hardware, software, or any combination thereof. The hardware can include, for example, computers, intellectual property (IP) cores, application-specific integrated circuits (ASICs), programmable logic arrays, optical processors, programmable logic controllers, microcode, microcontrollers, servers, microprocessors, digital signal processors or any other suitable circuit. In the claims, the term “processor” should be understood as encompassing any of the foregoing hardware, either singly or in combination.
For example, one or more computing devices can include an ASIC or programmable logic array such as a field-programmable gate array (FPGA) configured as a special-purpose processor to perform one or more of the operations or operations described or claimed herein. An example FPGA can include a collection of logic blocks and random access memory (RAM) blocks that can be individually configured and/or configurably interconnected in order to cause the FPGA to perform certain functions. Certain FPGA's may contain other general or special-purpose blocks as well. An example FPGA can be programmed based on a hardware definition language (HDL) design, such as VHSIC Hardware Description Language or Verilog.
The embodiments herein may be described in terms of functional block components and various processing steps. Such functional blocks may be realized by any number of hardware and/or software components that perform the specified functions. For example, the described embodiments may employ various integrated circuit components (e.g., memory elements, processing elements, logic elements, look-up tables, and the like) which may carry out a variety of functions under the control of one or more microprocessors or other control devices. Similarly, where the elements of the described embodiments are implemented using software programming or software elements the invention may be implemented with any programming or scripting language such as C, C++, Java, assembler, or the like, with the various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements. Functional implementations may be implemented in algorithms that execute on one or more processors. Furthermore, the embodiments of the invention could employ any number of conventional techniques for electronics configuration, signal processing and/or control, data processing and the like. The words “mechanism” and “element” are used broadly and are not limited to mechanical or physical embodiments, but can include software routines in conjunction with processors, etc.
Implementations or portions of implementations of the above disclosure can take the form of a computer program product accessible from, for example, a computer-usable or computer-readable medium. A computer-usable or computer-readable medium can be any device that can, for example, tangibly contain, store, communicate, or transport a program or data structure for use by or in connection with any processor. The medium can be, for example, an electronic, magnetic, optical, electromagnetic, or a semiconductor device. Other suitable mediums are also available. Such computer-usable or computer-readable media can be referred to as non-transitory memory or media, and may include RAM or other volatile memory or storage devices that may change over time. A memory of an apparatus described herein, unless otherwise specified, does not have to be physically contained by the apparatus, but is one that can be accessed remotely by the apparatus, and does not have to be contiguous with other memory that might be physically contained by the apparatus.
The word “example” is used herein to mean serving as an example, instance, or illustration. Any implementation or design described herein as “example” is not necessarily to be construed as preferred or advantageous over other implementations or designs. Rather, use of the word “example” is intended to present concepts in a concrete fashion. As used in this application, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or”. That is, unless specified otherwise, or clear from context, “X includes A or B” is intended to mean any of the natural inclusive permutations. In other words, if X includes A; X includes B; or X includes both A and B, then “X includes A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form. Moreover, use of the term “an implementation” or “one implementation” throughout is not intended to mean the same embodiment or implementation unless described as such.
The particular implementations shown and described herein are illustrative examples of the invention and are not intended to otherwise limit the scope of the invention in any way. For the sake of brevity, conventional electronics, control systems, software development and other functional implementations of the systems (and components of the individual operating components of the systems) may not be described in detail. Furthermore, the connecting lines, or connectors shown in the various figures presented are intended to represent exemplary functional relationships and/or physical or logical couplings between the various elements. Many alternative or additional functional relationships, physical connections or logical connections may be present in a practical device. Moreover, no item or component is essential to the practice of the invention unless the element is specifically described as “essential” or “critical”.
The use of “including,” “including,” or “having” and variations thereof herein is meant to encompass the items listed thereafter and equivalents thereof as well as additional items. Unless specified or limited otherwise, the terms “mounted,” “connected,” ‘supported,” and “coupled” and variations thereof are used broadly and encompass both direct and indirect mountings, connections, supports, and couplings. Further, “connected” and “coupled” are not restricted to physical or mechanical connections or couplings.
The use of the terms “a” and “an” and “the” and similar referents in the context of describing the invention (especially in the context of the following claims) should be construed to cover both the singular and the plural. Furthermore, recitation of ranges of values herein are merely intended to serve as a shorthand method of referring individually to each separate value falling within the range, unless otherwise indicated herein, and each separate value is incorporated into the specification as if it were individually recited herein. Finally, the steps of all methods described herein are performable in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context. The use of any and all examples, or exemplary language (e.g., “such as”) provided herein, is intended merely to better illuminate the invention and does not pose a limitation on the scope of the invention unless otherwise claimed.
All references, including publications, patent applications, and patents, cited herein are hereby incorporated by reference to the same extent as if each reference were individually and specifically indicated as incorporated by reference and were set forth in its entirety herein.
The above-described embodiments have been described in order to allow easy understanding of the present invention and do not limit the present invention. To the contrary, the invention is intended to cover various modifications and equivalent arrangements included within the scope of the appended claims, which scope is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structure as is permitted under the law.
Claims (20)
1. A system, comprising:
one or more processors; and
memory storing instructions that, when executed by the one or more processors, are configured to cause the one or more processors to:
receive event data for an event relating to a request;
cause a timeline to be displayed on an electronic display;
cause indicia of the event data to be displayed on the timeline based at least in part on a time of occurrence of event;
determine a predictive event that is expected to occur but has not yet occurred based at least in part on predictive criteria, wherein the predictive criteria is based at least in part on historical data or predefined rules; and
cause predictive indicia indicative of the predictive event to be displayed on the timeline by displaying a color for the predictive indicia indicating a relationship between a time of predicted occurrence of a predictive event of the predictive events and a time of actual occurrence of the predictive event.
2. The system of claim 1 , wherein the historical data comprises historical averages of periods of time used to complete fulfillment of the request.
3. The system of claim 1 , wherein the predefined rules comprise predefined standards that indicate a standard length of time to complete fulfillment of the request.
4. The system of claim 1 , wherein the predefined rules comprise a length of time indicated in a service level agreement.
5. The system of claim 1 , wherein the predefined rules cause the prediction of the predictive event to be based at least in part on a role of a requestor.
6. The system of claim 5 , wherein the role of the requestor comprises a premium status of the requestor.
7. The system of claim 1 , wherein the predefined rules cause the prediction of the predictive event to be based at least in part on a priority for the request.
8. The system of claim 1 , wherein the determination of the predictive event is based at least in part on a variance in the historical data for completion of fulfillment for the request.
9. The system of claim 8 , wherein a size of the predictive indicia is based at least in part on the variance.
10. The system of claim 9 , wherein the predictive indicia comprises a circle, and the size of the predictive indicia comprises a diameter of the circle.
11. Tangible, non-transitory, and computer-readable medium having instructions stored thereon that, when executed by one or more processors, are configured to cause the one or more processors to:
receive a request;
cause a timeline to be displayed on an electronic display based at least in part on a time scale;
cause indicia of components of a fulfillment of the request to be displayed on the timeline based at least in part on times of occurrence of the components, wherein the fulfillment comprises a plurality of sub-tasks, and wherein at least two of the plurality of sub-tasks have different predicted durations;
determine predictive events that are expected to occur but have not yet occurred based at least in part on predictive criteria, wherein the predictive criteria is based at least in part on predefined rules related to the fulfillment of the request; and
cause predictive indicia indicative of the predictive events to be displayed on the timelin; wherein the predictive indicia comprises a plurality of sub-indicia corresponding to the plurality of sub-tasks.
12. The tangible, non-transitory, and computer-readable medium of claim 11 , wherein causing predictive indicia to be displayed comprises displaying a color for the predictive indicia indicating a relationship between a time of predicted occurrence of a predictive event of the predictive events and a time of actual occurrence of the predictive event.
13. The tangible, non-transitory, and computer-readable medium of claim 11 , wherein the instructions are configured to cause an adjustment of the predicted durations of the at least two of the plurality of sub-tasks, wherein the adjustment of the predicted durations comprises maintain a ratio for the predicted durations between the at least two of the plurality of sub-tasks.
14. The tangible, non-transitory, and computer-readable medium of claim 11 , wherein determining the predictive events comprises determining a predicted time of overall completion of the fulfillment based at least in part on predictive events using variances of historical completions of the plurality of sub-tasks.
15. A method, comprising:
receiving a request;
displaying, on an electronic display, indicia of a request on a timeline based at least in part on a time of occurrence of steps for fulfillment of the request, wherein the fulfillment comprises a plurality of sub-tasks, and wherein an overall predicted duration for the fulfillment is divided equally between the plurality of sub-tasks;
determining predictive completions of the steps that are expected to occur but have not yet occurred based at least in part on predictive criteria, wherein the predictive criteria is based at least in part on historical data related to fulfilling similar requests; and
displaying, on the electronic display, predictive indicia indicative of the predictive completions, wherein the predictive indicia comprises a plurality of sub-indicia corresponding to the plurality of sub-tasks.
16. The method of claim 15 , comprising:
detecting that a pointer is hovering over the indicia of the request; and
responsive to the detection that the pointer is hovering over the indicia of the request, displaying additional information relevant to the request.
17. The method of claim 15 , comprising determining a time scale for the timeline along which the components of the fulfillment of the request are displayed on the electronic display.
18. The method of claim 15 , wherein displaying, on the electronic display, predictive indicia comprises displaying a color for the predictive indicia indicating a relationship between a time of predicted occurrence of a predictive event of the predictive events and a time of actual occurrence of the predictive event.
19. The method of claim 15 , wherein the historical data comprises historical averages of periods of time used to complete the fulfillment of the request.
20. The method of claim 15 , wherein the predictive indicia comprises a circle, and the size of the predictive indicia comprises a diameter of the circle.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/417,257 US10930035B2 (en) | 2016-03-31 | 2019-05-20 | Request resolution shaper in a networked system architecture |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/086,728 US9659391B1 (en) | 2016-03-31 | 2016-03-31 | Request resolution shaper in a networked system architecture |
US15/597,935 US10319124B2 (en) | 2016-03-31 | 2017-05-17 | Request resolution shaper in a networked system architecture |
US16/417,257 US10930035B2 (en) | 2016-03-31 | 2019-05-20 | Request resolution shaper in a networked system architecture |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/597,935 Continuation US10319124B2 (en) | 2016-03-31 | 2017-05-17 | Request resolution shaper in a networked system architecture |
Publications (2)
Publication Number | Publication Date |
---|---|
US20190340795A1 US20190340795A1 (en) | 2019-11-07 |
US10930035B2 true US10930035B2 (en) | 2021-02-23 |
Family
ID=58548909
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/086,728 Active US9659391B1 (en) | 2016-03-31 | 2016-03-31 | Request resolution shaper in a networked system architecture |
US15/597,935 Active 2036-07-14 US10319124B2 (en) | 2016-03-31 | 2017-05-17 | Request resolution shaper in a networked system architecture |
US16/417,257 Active US10930035B2 (en) | 2016-03-31 | 2019-05-20 | Request resolution shaper in a networked system architecture |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/086,728 Active US9659391B1 (en) | 2016-03-31 | 2016-03-31 | Request resolution shaper in a networked system architecture |
US15/597,935 Active 2036-07-14 US10319124B2 (en) | 2016-03-31 | 2017-05-17 | Request resolution shaper in a networked system architecture |
Country Status (5)
Country | Link |
---|---|
US (3) | US9659391B1 (en) |
EP (1) | EP3437037A1 (en) |
AU (1) | AU2017239670A1 (en) |
CA (1) | CA3019359C (en) |
WO (1) | WO2017173109A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230395208A1 (en) * | 2022-06-06 | 2023-12-07 | Commure, Inc. | Federated data platform integrating multiple healthcare data sources including fhir and non-fhir sources |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10068365B2 (en) * | 2016-07-29 | 2018-09-04 | Entit Software Llc | Spiral visualization generator |
US10454787B2 (en) * | 2017-05-04 | 2019-10-22 | Servicenow, Inc. | Timeline zoom and service level agreement validation |
US20190102841A1 (en) * | 2017-10-04 | 2019-04-04 | Servicenow, Inc. | Mapping engine configurations with task managed workflows and grid user interfaces |
US10852908B2 (en) | 2017-10-27 | 2020-12-01 | Oracle International Corporation | Method and system for controlling a display screen based upon a prediction of compliance of a service request with a service level agreement (SLA) |
EP3575949A1 (en) * | 2018-05-28 | 2019-12-04 | OCE Holding B.V. | System and method for communication between a consumer entity and a print job fulfiller entity |
EP3748562A1 (en) * | 2019-05-08 | 2020-12-09 | EXFO Solutions SAS | Timeline visualization & investigation systems and methods for time lasting events |
US11296926B1 (en) * | 2021-01-07 | 2022-04-05 | Servicenow, Inc. | Systems and methods for ranked visualization of events |
US11954771B2 (en) * | 2021-02-19 | 2024-04-09 | Kinaxis Inc. | Systems and methods for timeline visualization |
Citations (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6609122B1 (en) | 2000-08-01 | 2003-08-19 | Bmc Software, Inc. | Navigation of view relationships in database system |
US20050246119A1 (en) | 2004-04-16 | 2005-11-03 | Koodali Anurag T | Event occurrence graph |
US7028301B2 (en) | 2000-12-08 | 2006-04-11 | Bmc Software, Inc. | System and method for automatic workload characterization |
US7062683B2 (en) | 2003-04-22 | 2006-06-13 | Bmc Software, Inc. | Two-phase root cause analysis |
US20060229931A1 (en) | 2005-04-07 | 2006-10-12 | Ariel Fligler | Device, system, and method of data monitoring, collection and analysis |
US7131037B1 (en) | 2002-06-05 | 2006-10-31 | Proactivenet, Inc. | Method and system to correlate a specific alarm to one or more events to identify a possible cause of the alarm |
US7170864B2 (en) | 2001-03-08 | 2007-01-30 | Bmc Software, Inc. | System and method for WAP server management using a single console |
US20070132779A1 (en) * | 2004-05-04 | 2007-06-14 | Stephen Gilbert | Graphic element with multiple visualizations in a process environment |
US20070268310A1 (en) | 2006-05-18 | 2007-11-22 | Dolph Blaine H | Method and Apparatus for Consolidating Overlapping Map Markers |
US7350209B2 (en) | 2001-06-29 | 2008-03-25 | Bmc Software | System and method for application performance management |
US20090232739A1 (en) | 2007-01-08 | 2009-09-17 | Shuk Han Cheng | Method of in Vivo Screening for cardiac Toxic Agents Using Teleost |
US7610512B2 (en) | 2006-01-06 | 2009-10-27 | Hewlett-Packard Development Company, L.P. | System and method for automated and assisted resolution of it incidents |
US7617073B2 (en) | 2002-03-01 | 2009-11-10 | Bmc Software, Inc. | System and method for assessing and indicating the health of components |
US7689628B2 (en) | 2005-05-19 | 2010-03-30 | Atul Garg | Monitoring several distributed resource elements as a resource pool |
US7783744B2 (en) | 2003-06-03 | 2010-08-24 | Bmc Software, Inc. | Facilitating root cause analysis for abnormal behavior of systems in a networked environment |
US20100268568A1 (en) | 2009-04-21 | 2010-10-21 | International Business Machines Corporation | Workflow model for coordinating the recovery of it outages based on integrated recovery plans |
US7930396B2 (en) | 2000-07-10 | 2011-04-19 | Bmc Software, Inc. | System and method of enterprise systems and business impact management |
US7945860B2 (en) | 2003-05-14 | 2011-05-17 | Hewlett-Packard Development Company, L.P. | Systems and methods for managing conversations between information technology resources |
US7966398B2 (en) | 2001-03-30 | 2011-06-21 | Bmc Software, Inc. | Synthetic transaction monitor with replay capability |
US8051164B2 (en) | 2007-12-14 | 2011-11-01 | Bmc Software, Inc. | Impact propagation in a directed acyclic graph having restricted views |
US8224683B2 (en) | 2003-07-08 | 2012-07-17 | Hewlett-Packard Development Company, L.P. | Information technology service request level of service monitor |
US8266096B2 (en) | 2008-10-24 | 2012-09-11 | Bmc Software, Inc. | Vendor portfolio management in support of vendor relationship management analysis, planning and evaluation |
US20130124605A1 (en) | 2011-11-14 | 2013-05-16 | Microsoft Corporation | Aggregating and presenting tasks |
US8457928B2 (en) | 2010-03-26 | 2013-06-04 | Bmc Software, Inc. | Automatic determination of dynamic threshold for accurate detection of abnormalities |
US8478569B2 (en) | 2010-03-26 | 2013-07-02 | Bmc Software, Inc. | Auto adjustment of baseline on configuration change |
US8674992B2 (en) | 2010-06-24 | 2014-03-18 | Bmc Software, Inc. | Spotlight graphs |
US8689241B2 (en) | 2011-09-30 | 2014-04-01 | Bmc Software, Inc. | Dynamic evocations for computer event management |
US20140108078A1 (en) * | 2011-12-12 | 2014-04-17 | Moose Loop Holdings, LLC | Task scheduling and rescheduling |
US8743121B2 (en) | 2009-12-23 | 2014-06-03 | Bmc Software, Inc. | Smart impact views |
US20140229391A1 (en) | 2013-02-08 | 2014-08-14 | XTime, Inc. | Predictive service timeline |
US8832652B2 (en) | 2010-03-26 | 2014-09-09 | Bmc Software, Inc. | Method for customizing software applications |
US20140324797A1 (en) | 2011-09-21 | 2014-10-30 | Facebook, Inc. | Displaying Social Networking System User Information Via a Historical Newsfeed |
US8887133B2 (en) | 2006-04-28 | 2014-11-11 | Bmc Software, Inc. | Bi-directional communication between change management tool and implementation tools |
US20150046856A1 (en) | 2013-08-06 | 2015-02-12 | SmartSheet.com, Inc. | Interactive Charts For Collaborative Project Management |
US20150178690A1 (en) * | 2012-08-02 | 2015-06-25 | Darrell Reginald May | Methods and apparatus for managing hierarchical calender events |
US20150229981A1 (en) | 2012-11-30 | 2015-08-13 | Sony Corporation | Apparatus and method for television |
US20150308927A1 (en) * | 2014-04-24 | 2015-10-29 | Hitachi, Ltd. | Railway vehicle damage estimation |
US20150347987A1 (en) * | 2014-05-30 | 2015-12-03 | Zainul Abedin Ali | Integrated Daily Digital Planner |
US20150370877A1 (en) | 2014-05-21 | 2015-12-24 | International Business Machines Corporation | Automated analysis and visualization of complex data |
US20150379011A1 (en) | 2014-06-27 | 2015-12-31 | Samsung Electronics Co., Ltd. | Method and apparatus for generating a visual representation of object timelines in a multimedia user interface |
US20160005006A1 (en) * | 2014-07-07 | 2016-01-07 | Verizon Patent And Licensing Inc. | Communication services resources evaluation and scheduling |
US9239857B2 (en) | 2004-12-21 | 2016-01-19 | Bmc Software, Inc. | System and method for building business service model |
US9535737B2 (en) | 2015-01-30 | 2017-01-03 | Bladelogic, Inc. | Dynamic virtual port provisioning |
US9645833B2 (en) | 2012-12-31 | 2017-05-09 | Bmc Software, Inc. | Additive independent object modification |
US20170160917A1 (en) | 2014-08-26 | 2017-06-08 | Océ-Technologies B.V. | User interface for media processing apparatus |
US9792387B2 (en) | 2001-08-31 | 2017-10-17 | Bmc Software, Inc. | Service desk data transfer interface |
US10320633B1 (en) * | 2014-11-20 | 2019-06-11 | BloomReach Inc. | Insights for web service providers |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5890130A (en) * | 1994-02-04 | 1999-03-30 | International Business Machines Corporation | Workflow modelling system |
-
2016
- 2016-03-31 US US15/086,728 patent/US9659391B1/en active Active
-
2017
- 2017-03-30 AU AU2017239670A patent/AU2017239670A1/en not_active Abandoned
- 2017-03-30 EP EP17717980.1A patent/EP3437037A1/en not_active Ceased
- 2017-03-30 CA CA3019359A patent/CA3019359C/en active Active
- 2017-03-30 WO PCT/US2017/025073 patent/WO2017173109A1/en active Application Filing
- 2017-05-17 US US15/597,935 patent/US10319124B2/en active Active
-
2019
- 2019-05-20 US US16/417,257 patent/US10930035B2/en active Active
Patent Citations (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7930396B2 (en) | 2000-07-10 | 2011-04-19 | Bmc Software, Inc. | System and method of enterprise systems and business impact management |
US6609122B1 (en) | 2000-08-01 | 2003-08-19 | Bmc Software, Inc. | Navigation of view relationships in database system |
US7028301B2 (en) | 2000-12-08 | 2006-04-11 | Bmc Software, Inc. | System and method for automatic workload characterization |
US7170864B2 (en) | 2001-03-08 | 2007-01-30 | Bmc Software, Inc. | System and method for WAP server management using a single console |
US7966398B2 (en) | 2001-03-30 | 2011-06-21 | Bmc Software, Inc. | Synthetic transaction monitor with replay capability |
US7350209B2 (en) | 2001-06-29 | 2008-03-25 | Bmc Software | System and method for application performance management |
US9792387B2 (en) | 2001-08-31 | 2017-10-17 | Bmc Software, Inc. | Service desk data transfer interface |
US7617073B2 (en) | 2002-03-01 | 2009-11-10 | Bmc Software, Inc. | System and method for assessing and indicating the health of components |
US7131037B1 (en) | 2002-06-05 | 2006-10-31 | Proactivenet, Inc. | Method and system to correlate a specific alarm to one or more events to identify a possible cause of the alarm |
US7062683B2 (en) | 2003-04-22 | 2006-06-13 | Bmc Software, Inc. | Two-phase root cause analysis |
US7945860B2 (en) | 2003-05-14 | 2011-05-17 | Hewlett-Packard Development Company, L.P. | Systems and methods for managing conversations between information technology resources |
US7783744B2 (en) | 2003-06-03 | 2010-08-24 | Bmc Software, Inc. | Facilitating root cause analysis for abnormal behavior of systems in a networked environment |
US8224683B2 (en) | 2003-07-08 | 2012-07-17 | Hewlett-Packard Development Company, L.P. | Information technology service request level of service monitor |
US20050246119A1 (en) | 2004-04-16 | 2005-11-03 | Koodali Anurag T | Event occurrence graph |
US20070132779A1 (en) * | 2004-05-04 | 2007-06-14 | Stephen Gilbert | Graphic element with multiple visualizations in a process environment |
US9239857B2 (en) | 2004-12-21 | 2016-01-19 | Bmc Software, Inc. | System and method for building business service model |
US20060229931A1 (en) | 2005-04-07 | 2006-10-12 | Ariel Fligler | Device, system, and method of data monitoring, collection and analysis |
US7689628B2 (en) | 2005-05-19 | 2010-03-30 | Atul Garg | Monitoring several distributed resource elements as a resource pool |
US7610512B2 (en) | 2006-01-06 | 2009-10-27 | Hewlett-Packard Development Company, L.P. | System and method for automated and assisted resolution of it incidents |
US7890802B2 (en) | 2006-01-06 | 2011-02-15 | Hewlett-Packard Development Company, L.P. | System and method for automated and assisted resolution of IT incidents |
US8887133B2 (en) | 2006-04-28 | 2014-11-11 | Bmc Software, Inc. | Bi-directional communication between change management tool and implementation tools |
US20070268310A1 (en) | 2006-05-18 | 2007-11-22 | Dolph Blaine H | Method and Apparatus for Consolidating Overlapping Map Markers |
US20090232739A1 (en) | 2007-01-08 | 2009-09-17 | Shuk Han Cheng | Method of in Vivo Screening for cardiac Toxic Agents Using Teleost |
US8051164B2 (en) | 2007-12-14 | 2011-11-01 | Bmc Software, Inc. | Impact propagation in a directed acyclic graph having restricted views |
US8266096B2 (en) | 2008-10-24 | 2012-09-11 | Bmc Software, Inc. | Vendor portfolio management in support of vendor relationship management analysis, planning and evaluation |
US20100268568A1 (en) | 2009-04-21 | 2010-10-21 | International Business Machines Corporation | Workflow model for coordinating the recovery of it outages based on integrated recovery plans |
US8743121B2 (en) | 2009-12-23 | 2014-06-03 | Bmc Software, Inc. | Smart impact views |
US8457928B2 (en) | 2010-03-26 | 2013-06-04 | Bmc Software, Inc. | Automatic determination of dynamic threshold for accurate detection of abnormalities |
US8832652B2 (en) | 2010-03-26 | 2014-09-09 | Bmc Software, Inc. | Method for customizing software applications |
US9363252B2 (en) | 2010-03-26 | 2016-06-07 | Bmc Software, Inc. | Method for customizing software applications |
US8478569B2 (en) | 2010-03-26 | 2013-07-02 | Bmc Software, Inc. | Auto adjustment of baseline on configuration change |
US8674992B2 (en) | 2010-06-24 | 2014-03-18 | Bmc Software, Inc. | Spotlight graphs |
US20140324797A1 (en) | 2011-09-21 | 2014-10-30 | Facebook, Inc. | Displaying Social Networking System User Information Via a Historical Newsfeed |
US8689241B2 (en) | 2011-09-30 | 2014-04-01 | Bmc Software, Inc. | Dynamic evocations for computer event management |
US20130124605A1 (en) | 2011-11-14 | 2013-05-16 | Microsoft Corporation | Aggregating and presenting tasks |
US20140108078A1 (en) * | 2011-12-12 | 2014-04-17 | Moose Loop Holdings, LLC | Task scheduling and rescheduling |
US20150178690A1 (en) * | 2012-08-02 | 2015-06-25 | Darrell Reginald May | Methods and apparatus for managing hierarchical calender events |
US20150229981A1 (en) | 2012-11-30 | 2015-08-13 | Sony Corporation | Apparatus and method for television |
US9645833B2 (en) | 2012-12-31 | 2017-05-09 | Bmc Software, Inc. | Additive independent object modification |
US20140229391A1 (en) | 2013-02-08 | 2014-08-14 | XTime, Inc. | Predictive service timeline |
US20150046856A1 (en) | 2013-08-06 | 2015-02-12 | SmartSheet.com, Inc. | Interactive Charts For Collaborative Project Management |
US20150308927A1 (en) * | 2014-04-24 | 2015-10-29 | Hitachi, Ltd. | Railway vehicle damage estimation |
US20150370877A1 (en) | 2014-05-21 | 2015-12-24 | International Business Machines Corporation | Automated analysis and visualization of complex data |
US20150347987A1 (en) * | 2014-05-30 | 2015-12-03 | Zainul Abedin Ali | Integrated Daily Digital Planner |
US20150379011A1 (en) | 2014-06-27 | 2015-12-31 | Samsung Electronics Co., Ltd. | Method and apparatus for generating a visual representation of object timelines in a multimedia user interface |
US20160005006A1 (en) * | 2014-07-07 | 2016-01-07 | Verizon Patent And Licensing Inc. | Communication services resources evaluation and scheduling |
US20170160917A1 (en) | 2014-08-26 | 2017-06-08 | Océ-Technologies B.V. | User interface for media processing apparatus |
US10320633B1 (en) * | 2014-11-20 | 2019-06-11 | BloomReach Inc. | Insights for web service providers |
US9535737B2 (en) | 2015-01-30 | 2017-01-03 | Bladelogic, Inc. | Dynamic virtual port provisioning |
Non-Patent Citations (2)
Title |
---|
European Examination Report for European Patent Application No. 17717980.1 dated Aug. 5, 2020; 5 pgs. |
KVR Audio Forum, "What do you think of sonar X2", downloaded Jan. 13, 2016, http://www.kvraudio.com/forum/viewtopic.php?p=5492838, 13 pp. |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230395208A1 (en) * | 2022-06-06 | 2023-12-07 | Commure, Inc. | Federated data platform integrating multiple healthcare data sources including fhir and non-fhir sources |
Also Published As
Publication number | Publication date |
---|---|
US10319124B2 (en) | 2019-06-11 |
US20170287180A1 (en) | 2017-10-05 |
CA3019359A1 (en) | 2017-10-05 |
AU2017239670A1 (en) | 2018-10-18 |
US9659391B1 (en) | 2017-05-23 |
US20190340795A1 (en) | 2019-11-07 |
CA3019359C (en) | 2023-03-14 |
WO2017173109A1 (en) | 2017-10-05 |
EP3437037A1 (en) | 2019-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10930035B2 (en) | Request resolution shaper in a networked system architecture | |
US10748097B2 (en) | Permitted assignment user interface | |
US10769826B2 (en) | Visual task board visualization | |
US10353549B2 (en) | Predictive watch face interface | |
US12062017B2 (en) | Visualization of chat task record, linking messaging, and record keeping | |
US11693655B2 (en) | Method, apparatus, and system for outputting a development unit performance insight interface component comprising a visual emphasis element in response to an insight interface component request | |
US10476983B2 (en) | Systems monitoring in case of lost network connection in SaaS model | |
CN109242300A (en) | A kind of methods of exhibiting, device and the computer equipment of operational indicator value | |
US9582161B2 (en) | Configurable animated scatter plots | |
US10819604B2 (en) | Change to availability mapping | |
US20150134382A1 (en) | Interactive visualization of workloads | |
US20170264709A1 (en) | Media intelligence suite | |
US9699527B2 (en) | System and method for processing telematics data | |
US10181103B2 (en) | Routing preferred traffic within a reservation system | |
US8868712B2 (en) | Effective visualization of an information technology environment through social scoring | |
US20240289708A1 (en) | Monitoring and alerting system and method | |
CN113344652B (en) | Information presentation method, device, electronic equipment and medium | |
US20230112691A1 (en) | Onboarding System with Graphical User Interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
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); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |