This application relates generally to the field of load balancing. More specifically, the disclosure provided herein relates to the field of dynamic workforce reallocation.
Telecommunications networks may provide a number of services, such as plain old telephone service (“POTS”), digital subscriber line (“DSL”), and cable. A telecommunications network may be divided into a plurality of geographic areas known as turfs. Maintenance of the telecommunications network generally involves a proper reallocation of technicians across the turfs such that work orders can be timely filled. For example, when one turf experiences a high volume of work orders, it may be desirable to reallocate available technicians from another, preferably nearby, turf with a low volume of work orders to help with the high volume. The reallocation of technicians may be based on a number of factors, such as the location, skills, schedule, and availability of the technicians, as well as the priority of the work orders and the amount of time to complete the work orders.
A load balance supervisor (“LBS”) may be assigned to coordinate the reallocation of technicians within a plurality of turfs. The LBS may utilize any suitable information to coordinate the reallocation of technicians. The LBS conventionally relies on turf maps and raw data on technicians and work orders to manually generate useful data. The process of manually generating such useful data may be time-consuming and labor intensive. Further, if the LBS is unfamiliar with the turfs (e.g., the LBS is assigned to a recent disaster area), the LBS may be unable to generate the useful data.
Embodiments of the disclosure presented herein include methods, systems, and computer-readable media for providing a ratio of tasks per technician. According to one aspect, a method for providing a ratio of tasks per technician is provided. According to the method, a number of tasks associated with a given geography is determined. A number of technicians dispatched to the given geography is determined. The ratio of tasks per technician is determined based on the number of tasks and the number of technicians. The ratio of tasks per technician is displayed.
According to another aspect, a system for providing a ratio of tasks per technician is provided. The system includes a memory and a processor functionally coupled to the memory. The memory stores a program containing code for providing a ratio of tasks per technician. The processor is responsive to computer-executable instructions contained in the program and operative to determine a number of tasks associated with a given geography, determine a number of technicians dispatched to the given geography, determine the ratio of tasks per technician based on the number of tasks and the number of technicians, and determine the ratio of tasks per technician.
According to yet another aspect, a computer-readable medium having instructions stored thereon for execution by a processor to perform a method for providing a ratio of tasks per technician is provided. According to the method, a number of tasks associated with a given geography is determined. A number of technicians dispatched to the given geography is determined. The ratio of tasks per technician is determined based on the number of tasks and the number of technicians. The ratio of tasks per technician is displayed.
Other systems, methods, and/or computer program products according to embodiments will be or become apparent to one with skill in the art upon review of the following drawings and detailed description. It is intended that all such additional systems, methods, and/or computer program products be included within this description, be within the scope of the present invention, and be protected by the accompanying claims.
The following detailed description is directed to methods, systems, and computer-readable media for determining a plurality of turfs from where to reallocate a workforce to a given turf. In the following detailed description, references are made to the accompanying drawings that form a part hereof, and which are shown by way of illustration specific embodiments or examples.
As used herein, the terms “work order,” “job,” and “task” are used interchangeably. Although not so limited, embodiments described herein primarily refer to a “work order” as the maintenance and repair of a telecommunications network by a technician. However, it will be apparent to one of ordinary skill in the art that, in further embodiments, a “work order” may include any suitable service that involves the allocation and reallocation of personnel to perform the service.
Embodiments described herein provide a Next Generation Load Balance (“NGLB”) tool for work force reallocation. According to exemplary embodiments, the NGLB tool has a graphical user interface (“GUI”), such as a GUI 400 of
According to further embodiments, the NGLB tool includes a tasks per tech module, such as a tasks per tech module 216 of
Referring now to the drawings, it is to be understood that like numerals represent like elements through the several figures, and that not all components and/or steps described and illustrated with reference to the figures are required for all embodiments.
For the sake of simplicity and without limitation, only two turfs 104a and 104b and three buckets 108a, 108b, and 108c are illustrated in
The LBS 106 utilizes a computer 110 to aid in reallocating the plurality of technicians 102 across the turfs 104. The computer 110 includes a reallocation module 112, which enables the computer 110 to display a graphical user interface (“GUI”), such as the GUI 400 of
In one embodiment, the reallocation module 112 generates at least a portion of the GUI 400 based on data stored in a data storage unit 114. The data storage unit 114 may store any suitable data related to the technicians 102, such as the location, skills, schedule, and availability of the technicians 102. The data storage unit 114 may be a database. In one embodiment, the data storage unit 114 is an Integrated Dispatch System (“IDS”). The IDS is described in greater detail in U.S. Patent Application Publication No. 2004/0111311, entitled “Turfs and Skills for Multiple Technicians,” to Ingman et al.; U.S. Patent Application Publication No. 2004/0111312, entitled “Validating Turfs for Work Orders,” to Ingman et al.; U.S. Patent Application Publication No. 2004/0111313, entitled “Methods and Systems for Assigning Multiple Tasks,” to Ingman et al.; and U.S. Patent Application Publication No. 2004/0111634, entitled “Security Permissions for an Integrated Dispatch System,” to Ingman et al.
Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that embodiments may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. The embodiments may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
The processing unit 202 may be a standard central processor that performs arithmetic and logical operations, a more specific purpose programmable logic controller (“PLC”), a programmable gate array, or other type of processor known to those skilled in the art and suitable for controlling the operation of the server computer. Processing units are well-known in the art, and therefore not described in further detail herein.
The memory 204 communicates with the processing unit 202 via the system bus 212. In one embodiment, the memory 204 is operatively connected to a memory controller (not shown) that enables communication with the processing unit 202 via the system bus 212. According to exemplary embodiments, the memory 204 includes the reallocation module 112. In one embodiment, the reallocation module 112 is embodied in computer-readable media containing instructions that, when executed by the processing unit 202, generates a GUI, such as the GUI 400 of
As illustrated in
As described above, the ratio of tasks per technician may provide an indication of workforce load associated with the given number of turfs. For example, a higher ratio of tasks per technician for the Alpha turf 104a may indicate that the Alpha turf 104a has a higher workforce load (e.g., an excess of jobs relative to the number of technicians 102 associated with the Alpha turf 104a), while a lower ratio of tasks per technician for the Beta turf 104b may indicate that the Beta turf 104b has a lower workforce load (e.g., a shortage of jobs relative to the number of technicians 102 associated with the Beta turf 104b). In this case where the Alpha turf 104a has a higher workforce load than the Beta turf 104b, the LBS 106 may decide to reallocate the technicians 102 from the Beta turf 104b to the Alpha turf 104a, thereby reducing or eliminating the difference between the workforce loads associated with the Alpha turf 104a and the Beta turf 104b.
In one embodiment, the tasks per tech module 216 provides the ratio of tasks per technician via a GUI, such as the GUI 400 of
By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, RAM, ROM, Erasable Programmable ROM (“EPROM”), Electrically Erasable Programmable ROM (“EEPROM”), flash memory or other solid state memory technology, CD-ROM, digital versatile disks (“DVD”), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer 110.
The user interface devices 206 may include one or more devices with which a user accesses the computer 110. The user interface devices 206 may include, but are not limited to, computers, servers, personal digital assistants, cellular phones, or any suitable computing devices. In one embodiment, the computer 110 functions as a web server located remotely from the LBS 106 by executing a web server application, such as BEA WEBLOGIC SERVER from BEA SYSTEMS. By enabling the computer 110 to function as a web server, the LBS 106 may access the GUI 400 generated by the computer 110 over a network, such as the network 214, using, for example, a local web browser interface on a PC or other computing device.
According to exemplary embodiments, the I/O devices 208 enable a user to interface with the reallocation module 112. In one embodiment, the I/O devices 208 are operatively connected to an I/O controller (not shown) that enables communication with the processing unit 202 via the system bus 212. The I/O devices 208 may include one or more input devices, such as, but not limited to, a keyboard, a mouse, and an electronic stylus. Further, the I/O devices 208 may include one or more output devices, such as, but not limited to, a display screen and a printer.
The network devices 210 enable the computer 110 to communicate with other networks or remote systems via the network 214. Examples of the network devices 210 may include, but are not limited to, a modem, a radio frequency (“RF”) or infrared (“IR”) transceiver, a telephonic interface, a bridge, a router, or a network card. The network 214 may include a wireless network such as, but not limited to, a Wireless Local Area Network (“WLAN”) such as a WI-FI network, a Wireless Wide Area Network (“WWAN”), a Wireless Personal Area Network (“WPAN”) such as BLUETOOTH, a Wireless Metropolitan Area Network (“WMAN”) such a WiMAX network, or a cellular network. Alternatively, the network 214 may be a wired network such as, but not limited to, a Wide Area Network (“WAN”) such as the Internet, a Local Area Network (“LAN”) such as the Ethernet, a wired Personal Area Network (“PAN”), or a wired Metropolitan Area Network (“MAN”).
The load balance PC 304 includes a display 306 and a mouse 308, according to one embodiment. In further embodiments, the load balance PC 304 may include any suitable input/output devices 208. It will be apparent to one having ordinary skill in the art that the load balance PC 304 may be substituted with any suitable computing device, such as a personal digital assistant or a cellular phone. The display 306 may be configured to display the GUI 400 and the ratio of tasks per tech provided by the tasks per tech module 216.
In exemplary embodiments, the load balance PC 304 includes a web browser 310, such as INTERNET EXPLORER from MICROSOFT CORPORATION, for accessing the GUI 400 and for facilitating communications between the LBS 106 and the computer 110. Using the web browser 310, the LBS 106 may access the GUI 400 by inputting a Uniform Resource Locator (“URL”) into the web browser 310. The load balance PC 304 may communicate with the computer 110 via Hypertext Transfer Protocol (“HTTP”). As previously described, the computer 110 may function as a web server. In one embodiment, access to the GUI 400 by the load balance PC 304 may be restricted by a login screen requiring, for example, a login identification and a password. In further embodiments, communications between the load balance PC 304 and the computer 110 may be encrypted by any suitable encryption mechanism.
In exemplary embodiments, the computer 110 may communicate with the data storage unit 114 via a Java Database Connectivity (“JDBC”) application program interface (“API”). In one embodiment, the computer 110 retrieves data from the data storage unit 114 at regular intervals, such as every two to five minutes. In further embodiments, the computer 110 retrieves data from the data storage unit 114 when requested by the LBS 106. In other embodiments, the reallocation module 112 may be stored on the load balance PC 304 such that the GUI 400 is accessed from the load balance PC 304 and such that the load balance PC communicates with and retrieves data from the data storage unit 114.
According to exemplary embodiments, the GUI 400 includes a plurality of turfs 402, such as the Medley turf 404. The GUI 400 may further include a plurality of buckets: the POTS bucket 406, the DSL bucket 408, the Cable bucket 410, the Specials bucket 412, and the Non-Demand (“ND”) bucket 414. According to exemplary embodiments, each of the buckets 406, 408, 410, 412, 414 includes four columns: an Hours column 416, a Tickets column 418, a Dispatched Technicians (hereinafter referred to as Dispatches) column 420, and a Future Tickets (hereinafter referred to as Futures) column 422. Each of a plurality of cells 424 and 432 may be associated with a column, a bucket, and a turf. For example, the cell 424 is associated with the Hours column 416, the POTS bucket 406, and the Medley turf 404.
Each of the plurality of turfs 402, such as the Medley turf 404, may refer to any suitable geographic area. For example, the Medley turf 404 refers to the city of Medley, Fla. As illustrated in
According to exemplary embodiments, the POTS bucket 406 contains information related to POTS related work orders. The DSL bucket 408 contains information related to DSL related work orders. The Cable bucket 410 contains information related cable related work orders. The Specials bucket 412 contains information related to special circuit related work orders, such as Digital Signal 1 (“DS1”) and Digital Signal 3 (“DS3”). The ND bucket 414 is a catch-all bucket containing information related to work orders not categorized in the POTS bucket 406, the DSL bucket 408, the Cable bucket 410, or the Specials bucket 412.
The Hours column 416 indicates the number of hours of pending and assigned work orders in each of the plurality of turfs 402. As used herein, an assigned work order is defined as a work order that is assigned to a technician, such as the technician 102, and a pending work order is defined as a work order that is not assigned to a technician 102 and is to be completed within the current business day. The Tickets column 418 indicates the number of tickets (i.e., work orders) corresponding to the number of hours shown in the Hours column 416 of one of the buckets 406, 408, 410, 412, 414. The Dispatches column 420 indicates the number of technicians 102 dispatched. The Futures column 422 indicates the number of future jobs to be completed by the technicians 102.
According to exemplary embodiments, the GUI 400 includes the tasks per tech row 430. The tasks per tech row 430 may include a plurality of cells, such as the cell 432, each of which indicates an aggregate ratio of tasks per tech associated with a given bucket, such as, the buckets 406, 408, 410, 412, 414, and the turfs 402 in the AG, such as the central Dade AG 426. For example, the cell 432 indicates that the aggregate ratio of tasks per technician associated with the plurality of turfs 402 in the POTS bucket 406 in the central Dade AG 426 is 0.09. In one embodiment, the aggregate ratio displayed in the cell 432 is determined by adding a number of tickets of each turf 402 under the Tickets column 418 to generate a total number of tickets for the POTS bucket 406. The total number of tickets may be divided by a total number of technicians 102 under each turf, such as the turfs 402, in the POTS bucket 406 to generate the aggregate ratio of tasks per technician. As noted above, the dispatches column 420 associated with each of the buckets 406, 408, 410, 412, 414 indicates the number of the technicians 102 under each of the turfs 402.
The GUI 400 may further include a Regional Maintenance Center (“RMC”) column 428, which indicates the RMC number designated to a particular turf. Each RMC number may be associated with one or more turfs 402. For example, RMC number “248” at 434a, 434b, 434c are associated with an airport turf 436a, a Miami airport turf 436b, and an east Miami airport turf 436c, respectively. In one embodiment, each RMC number listed under the RMC column 428 may be accessible by an input device, such as the mouse 308. For example, a RMC number may be accessed by hovering a mouse cursor over the RMC number or by clicking the RMC number using the mouse 308. In response to accessing the RMC number, GUI 400 may display a window, such as the drop-down window 500, according to one embodiment. The drop-down window 500 may include information related to each of the buckets 406, 408, 410, 412, 414, such as hours, tickets, and dispatches. In one embodiment, the drop-down window 500 further includes a ratio of tasks per technician associated a selected RMC number and one or more buckets, such as the buckets 406, 408, 410, 412, 414.
As used herein, the Hours portion 506 indicates the number of hours of pending and assigned work orders associated with each of the turfs 402 in the POTS bucket 406 at 504 of the RMC “122” at 502. The Tickets portion 508 indicates the number of tickets corresponding to the number of hours shown in the Hours portion 506. The Dispatches portion 510 indicates the number of technicians 102 dispatched in the POTS bucket 406 at 504 of the RMC “122” at 502. The Tasks Per Tech portion 512 indicates a ratio of tasks per technician associated with the POTS bucket 406 at 504 of the RMC “122” at 502. As illustrated in
The tasks per tech module 216 determines (at 604) a number of technicians, such as the technicians 102, currently dispatched to the given geography. Separate numbers of technicians 102 may be determined for each bucket, such as the buckets 406, 408, 410, 412, 414, in the given geography. For example, a first number of technicians 102 may correspond to those technicians 102 dispatched to the first bucket of the given geography, and a second number of technicians 102 may correspond to those technicians 102 dispatched to the second bucket of the given geography.
The tasks per tech module 216 determines (at 606) the ratio of tasks per technician by dividing the number of tasks by the number of technicians 102. Separate ratios of tasks per technician may be determined for each bucket, such as the buckets 406, 408, 410, 412, 414, of the given geography. For example, a first ratio of tasks per technician may be determined by dividing the first number of tasks by the first number of technicians 102, and a second ratio of tasks per technician may be determined by dividing the second number of tasks by the second number of technicians 102.
The tasks per tech module 216 displays (at 608) the ratio of tasks per technician. In one embodiment, the ratio of tasks per technician is displayed in a cell, such as the cell 432, of a GUI, such as the GUI 400. In one embodiment, separate ratios of tasks per technician associated with separate buckets, such as the buckets 406, 408, 410, 412, 414, of the given geography may be displayed in separate cells of the GUI 400. For example, a first cell may display the first ratio of tasks per technician, and a second cell may display the second ratio of tasks per technician. In one embodiment, each RMC number, such as the RMC number “248” at 434a, 434b, 434c, in the RMC column 428 may be accessed by an input device, such as the mouse 308, to retrieve an aggregate ratio of tasks associated with the selected RMC number. Each RMC number may correspond to one or more turfs 402.
Although the subject matter presented herein has been described in conjunction with one or more particular embodiments and implementations, it is to be understood that the embodiments defined in the appended claims are not necessarily limited to the specific structure, configuration, or functionality described herein. Rather, the specific structure, configuration, and functionality are disclosed as example forms of implementing the claims.
The subject matter described above is provided by way of illustration only and should not be construed as limiting. Various modifications and changes may be made to the subject matter described herein without following the example embodiments and applications illustrated and described, and without departing from the true spirit and scope of the embodiments, which is set forth in the following claims.
The present application is related to commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR DETERMINING A PLURALITY OF TURFS FROM WHERE TO REALLOCATE A WORKFORCE TO A GIVEN TURF,” with attorney docket number 070003; commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR GENERATING A REPORT INDICATING JOB AVAILABILITY,” with attorney docket number 070004; commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR PROVIDING AN INDICATION OF A SCHEDULE CONFLICT,” with attorney docket number 070005; commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR PROVIDING AN INDICATION OF HIGHTIME,” with attorney docket number 070006; commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR PROVIDING FUTURE JOB INFORMATION,” with attorney docket number 070007; commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR PROVIDING NOTIFICATION OF A LAST JOB DISPATCH,” with attorney docket number 070008; commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR PROVIDING COMMITMENTS INFORMATION RELATIVE TO A TURF,” with attorney docket number 070009; commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR PROVIDING CONTACT INFORMATION AT TURF LEVEL,” with attorney docket number 070010; and commonly assigned U.S. patent application Ser. No. ______, filed concurrently herewith, titled “METHODS, SYSTEMS, AND COMPUTER-READABLE MEDIA FOR PROVIDING WORKFORCE TO LOAD INFORMATION,” with attorney docket number 060482; each of which is hereby incorporated herein by reference.