PROJECT MANAGEMENT WITH TASK TEMPLIFICATION AND CONCENTRATION, AND AUTOMATED PROVIDER IDENTIFICATION AND SCHEDULING

Computer-implemented methods are disclosed to enhance implementation of a project where materials and services need to be provided at multiple locations and/or at multiple times. Using computer systems and communication networks, similar tasks to be iteratively performed are concentrated or collected in a task group. Electronic request transmissions are sent to providers identified to provide the materials and services, electronic responses to the requests are elicited from the providers, and the responses are automatically reviewed to determine that providers will provide the materials as needed. Criteria may be specified and used to automatically rank suitability of the one or more providers that may be used, and one or more objectives may be specified to automatically generate a schedule including the providers to be used.

DETAILED DESCRIPTION

The systems and methods of the present disclosure improve the efficiency of project management and provide particular advantages in those phases of project management involving the identification and selection of providers to perform activities involved in implementation of a project; using electronic transmission requests and responses to facilitate automated review of provider's performance of tasks; automatic ranking of providers according to one or more identified criteria to generate a ranked list of providers; and automatic generation of a schedule for identified providers to satisfy one of more objectives.

By way of overview of embodiments of the disclosure,FIG. 1is a block diagram contrasting a conventional process100for implementing a project, in which one or more project managers oversee all aspects of a project, with an embodiment of a process for templification and concentration of tasks120according to the present disclosure.

In the conventional process100, each of the one or more project managers110may be charged with all of the responsibilities for implementing the project in each of the locations for which each is responsible. For the sake of example, each of the responsibilities is divided into four different categories. First, each of the project managers110may be responsible for planning and operation112, which may include identifying each of the steps needed to implement the project and what materials and services, will be used in implementing the project. Second, each of the project managers110also may be responsible for resource management114, in which the project managers will identify and select providers of materials and services to implement the project. Third, each of the project managers110may be responsible for solution architecture and field supervision116, which may include scheduling the shipment of materials and attendance of service providers, confirming the availability of the providers (and identifying alternate providers as needed), confirming the preparedness of the materials and service providers, confirming initiation of the implementation, confirming completion of each implementation phase, payment of providers, etc. Fourth, each of the project managers110also may be responsible for help desk, support, and escalation118, which may include liaising with the client and the various service providers to answer questions and address problems as they arise, such as when needed materials are not delivered, service providers do not appear as scheduled, etc.

As further described with reference to the embodiment of a process for templification and concentration of tasks120, each of the groups of categories of responsibilities112,114,116, and118may itself include a wide range of tasks, resulting in each of the project managers110being equally responsible for a number of similar tasks. As a result, the conventional process100may be very time- and labor-intensive for the project managers110. For example, as part of addressing the category of responsibilities under resource management114, each of the project managers110may spend a great deal of their time in communicating with providers, such as by contacting material and service providers to engage them for the project, confirm availability, confirm arrival and completion, and other steps. Each of the project managers110may spend a great deal of time accounting for changes, such as by identifying and selecting alternative providers when a previously-identified provider is not available or fails to perform as agreed. Similarly, each of the project managers110may spend a great deal of time summarizing what aspects of the project are ready to be implemented, are being implemented, and have been implemented, in order to prepare reports status for the client.

Regrettably, investing so much of the time of the project managers110may not be a good use of a valuable resource. Many project managers are highly educated, well-trained, and have appropriate experience to plan and generally oversee a project. Thus, having these managers engaging in repetitive tasks, such as contacting providers, may not be a good use of a valuable resource.

Similarly, a large project may involve multiple project managers110performing tasks that are duplicative in nature to that performed by other project managers for different locations. For example, two or more different project managers may spend time in identifying providers that are available to supply a particular material, in addition to discharging their other responsibilities. It may be wasteful for multiple project managers to educate themselves regarding a particular material and regarding suitable providers in that area, instead of vesting responsibility for discharging similar tasks in one project manager or, at least, a subset of project managers.

According to an embodiment of the process for templification and concentration of tasks120, some duplication of effort and consumption of valuable resources may be avoided. In the process120, for example, a single, skilled project manager130may serve as an overall lead for an entire project. Reporting to the project manager130may be a plurality of team leaders150,160,170, and180. Each of the team leaders150,160,170, and180may be responsible for particular tasks or sets of tasks (with additional personnel, not shown inFIG. 1, being assigned specific responsibilities in fulfilling the tasks or set of tasks assigned to the team).

For example, team lead 1150may be tasked generally with responsibility for planning and operation152. Team lead 1150thus may be tasked with project planning154, team management156in terms of managing the internal team of the team leaders150,160,170, and180, and customer relationship management158in terms of liaising with the client in reporting on the status of the project. Team lead 2160may be responsible for separate tasks in the area of resource management162. Team lead 2160thus may be responsible for labor and workforce planning164in identifying appropriate service providers, equipment and material planning166in terms of identifying materials needed and what providers may be relied upon to deliver the same, and scheduling and logistics confirmation168in terms of scheduling the providers and confirming the provision of materials and services. Team lead 3170may be tasked with separate other responsibilities for solution architecture and field supervision172, including responsibility for solution design and implementation174, consultation and pilot implementation176, and onsite training and field supervision178. Finally, team lead 4180may be tasked with the separate tasks of help desk, support, and escalation182. Team lead 4180thus may be tasked with 24/7 basic tier support184as well as online training and coaching186. Team lead 4180also may be tasked with responsibility for providing a remote session liaison188.

Thus, as described with reference to the embodiment of the process for templification and concentration of tasks120, the project manager or managers130may delegate to team leaders150,160,170, and180the responsibility for each of a category of responsibilities,152,162,172, and182, respectively. Thus, the project manager or managers130are free to concentrate on high level tasks in terms of planning, escalated concerns, etc. Specific groups of tasks may be delegated to potentially less scarce or less costly personnel. These personnel can focus on particular tasks and particular groups of tasks. Moreover, these personnel will focus on particular tasks without duplicating the types of tasks performed by others. All of these effects may therefore improve the efficiency of project implementation.

FIGS. 2 and 3further contrast a conventional project management system and embodiments of a project management system according to the present disclosure.FIG. 2depicts a conventional project management system100in which a project is managed by a plurality of project managers according to a conventional process of project management. The description of a conventional process or project management is included to highlight differences in and advantages of project management as performed according to presently disclosed embodiments of project management, as further described below.

In the system200, a client201may have multiple projects to be implemented, including the Project I211, Project II212, Project III213, up to Project N214. Each of the projects211-114may involve performing multiple activities at multiple locations. For example, Project I211may involve performing activities at Locations A220through N280. Managing the project activities may include resource scheduling221, pre-visit activities222, on-site activities223, and completion activities224. A first project manager215may be assigned to manage the tasks221-224at Location A220and to manage similar tasks at Location B230.

The project also may involve performing similar activities at Location C240, Location D250, Location E260, Location F270, through Location N280. A second project manager216may be assigned to manage the tasks of resource scheduling241, pre-visit activities242, on-site activities243, and completion activities244, to be performed at Location C240and to perform similar tasks at Location D250and Location E260. The project also may involve performing similar activities at Location F270through Location N280. To manage performance of the activities, management of tasks271-274and281-284may be assigned to additional project managers217and218.

Assignment of project managers215-218may be based on the relative abilities of the project managers, anticipated complexities with managing tasks at particular locations, or other factors. Thus, while the first project manager215may be assigned with managing the project at two locations, Location A220and Location B230, the second project manager216may be assigned with managing the project at three locations, Locations C-E240-260. At the same time, third and fourth project managers217may be assigned to manage the project at Location F270, while an Nth project manager218may be assigned to manage the project at a single location, Location N280. Staffing implementation of the project at Locations A-N220-280thus may require a 3substantial number of trained project managers. Each of the project management tasks may be necessary and important to ensuring that the project is implemented on-time, within the budget, and without undue interruption in client business. Nonetheless, the involvement of such a substantial number of trained project managers may be costly to the client and may prove difficult for the project management organization to staff.

Reviewing the conventional project management methodology employed in the system200ofFIG. 1, one should note that each of the project managers215-218may perform a number of repetitive tasks. For example, in addition to performing the tasks of resource scheduling221, pre-visit activities222, on-site activities223, and completion activities224at Location A220, the first project manager215may perform highly similar tasks at Location B230. In addition to performing the tasks of resource scheduling241, pre-visit activities242, on-site activities243, and completion activities244at Location C240, the second project manager216may perform highly similar tasks at both Location D250and Location E260. Thus, each of the project managers215and216may be repeatedly performing similar tasks. Further, all of the project managers215-118may be performing tasks that are very similar or repetitive of what the other project managers are doing.

Although each of the individual tasks may be inherent in sound project management to ensure a smooth implementation, some of these tasks may not require the time and skill of a trained project manager, let alone require that such a project manager repeatedly perform similar tasks. For example, sending directions and the name of the individual to whom the provider should report may be delegated to a less skilled individual, automated, or partially automated to support a less skilled individual in performing such a task. Other events, such as placing a telephone call to a provider to confirm that the provider is ready and will appear at the assigned time and place, may be important, but also may be readily handled by an individual without the skills—or inherent costs—of having such a call placed by a trained project manager.

Such delegable tasks may be assigned to a task administrator. A task administrator may not have the education, experience, and resourcefulness to be able to plan and fully oversee project implementation. However, a task administrator may be trained in one or a few facets of tasks to be performed, such as contacting providers to confirm preparedness. Task administrators, who may not direct client contact or responsibilities, may be located at a remote facility, such as a call center, in a rural location or an overseas location, with relatively low overhead costs. Thus, some delegable tasks may be delegated to lower cost personnel to make project management less costly and, as explained further below, more effective.

Assigning one or more task administrators to perform delegable tasks may free the project manager to focus her attention on other matters. For example, with one or more task administrators handling routine confirmatory communications with providers, the project manager is free to handle exceptions, e.g., unanticipated problems with materials, providers, or client situations. Freeing the project manager to handle such exceptions may enable the project manager to quickly handle higher exposure activities, which may improve client satisfaction. At the same time, assigning expected tasks to task administrators ensures those expected tasks will be performed even when the project manager is immersed in crises that may consume all of her time.

Further, freeing the project manager from delegable tasks may enable the project manager to manage more implementations or more projects. Involving fewer project managers in implementing a project may reduce the costs of managing the project without sacrificing any of the tasks that are important to sound project management. Project management thus may become less expensive for clients, more profitable for the project management organization, or both.

FIG. 3depicts a system300in which a project is managed using task templification and concentration according to an implementation of the present disclosure. As in the system200ofFIG. 2, it is assumed that the client201has multiple projects211-214to be implemented and that implementation of Project I211involves the performance of the same number of tasks at the same number of locations. Thus, as described with reference toFIG. 2and shown inFIG. 3, resource scheduling221, pre-visit activities222, on-site activities223, and completion activities224are to be performed at Location A220, and similar tasks will have to be performed for Locations B-N230-280.

According to embodiments of the present disclosure, templification of a task includes memorializing steps used to perform a particular process so that a computing system or an administrator has an established procedure for performing the task. For example, where the task includes installation of a particular device, templification of the task may generally include the following steps: finding a suitable provider of the device; ordering and arranging shipment of the device to a particular location; ordering supporting hardware or other components needed to install the device; identifying a suitable installer who is available at a selected time to install the device; confirming proper installation and function of the device; and paying the providers of the materials and services used. Thus, if installation of a particular device is to be performed at thousands of locations, the task of arranging each installation can be managed according to the foregoing template. Further, as described below, related tasks represented by separate elements on the templates may be assigned to one person or group so that multiple people or groups do not have to develop expertise in executing a portion of the template. For example, verifying that the device works correctly after installation may be performed by one person, one group of people, or one computing system that can become facile at performing such testing and, thus, may perform the testing very efficiently across the numerous implementation locations. Thus, templification of project tasks may enable a project to be performed efficiently.

It should be appreciated that the exemplary template listed in the foregoing paragraphs only includes a few steps. It is possible that an implementation at a particular location may include dozens or hundreds of steps. Such an involved task requiring many steps presents all the more reason for templification of a task so as to have a standard procedure to be followed for each instance of an implementation and, when possible, to group similar tasks for multiple instances in a person, group, or system who can become expert at one or more tasks.

According to an illustrative embodiment of the disclosure, using a server system201and a staff of task administrators316-318, a single project manager315may be able to manage Project I211at each of Locations A220through N280. The server301, which may include a network of server devices, interfaces with a relational database302that incorporates all data related to the projects to be implemented, including standardized information that the project manager315may utilize across many types of projects. For example, the relational database302may include standards303observed by the project management enterprise, templates304used to outline each of the individual tasks to be performed in managing the project, and information regarding providers305that may be engaged to perform activities included in the project. For example, the standards303may include lists of client communications and provider communications to be performed, how completion of a particular implementation is to be validated to ensure completion and client satisfaction, etc. The templates304may include checklists that incorporate requirements imposed by the standards303as well as templates for e-mails and other standardized communications to be conducted with the client201and the providers. The information on providers305, which is described further with reference toFIGS. 10-13, includes information regarding the cost, location, experience, satisfaction ratings, and other information about providers that may be used to implement the projects at particular locations.

In addition to the standardized information that may be included in the relational database302, the relational database302also may include particular information related to Project I211and the client201. For example, information about client requirements306or plans for implementation of the project307collected or created by the project manager315may be added to the relational database302. The client requirements306may include particular conduct required of providers, particular types of reports the client201desires or demands, particular types of validation of completion desired, etc. The project plans307may include plans specified by the client201or created by the project manager315to detail how the project is to be implemented. The client requirements306and project plans307may be added to the standards303and templates304stored in the relational database302or may be separately stored in to augment the standards303and templates304. In addition, although not shown inFIG. 3, the client101may provide information about particular desired or undesired providers or criteria demanded or preferred by the client101that may be used to augment, filter, or rank providers included in the information on providers305.

The server301and the relational database302facilitate the templification and concentration of tasks in the task administrators316-318. Based on the standards303, templates304, information on providers305, client requirements306, and project plans307stored in the relational database302or in one or more other databases (not shown inFIG. 3), project templates311-314are generated for each of the locations. The project templates311-314include the tasks to be performed for each of the locations involved in the project, Project I211. The tasks included in the project templates311-314are similar to the tasks previously described with reference to the system200ofFIG. 2, such as resource scheduling221, pre-visit activities222, on-site activities223, and completion activities224.

By contrast to the tasks221-224, however, the tasks associated with each of the project templates311-314may include reference information to clearly associate them with respective implementations and locations. For example, the resource scheduling321included in the first project template311may be labeled as “Task A-1” to clearly associate the resource scheduling with the implementation at Location A120. It may be important to plainly associate the tasks in the project templates311-314to the respective locations where they are to be implemented because the tasks may be concentrated with other, similar tasks for a number of different locations and assigned to task administrators specializing in executing those particular tasks.

For example, the resource scheduling for Locations A-N321-324are all concentrated under a first task administrator316. The first task administrator316is not charged with responsibility for each of the series of tasks associated with a particular location as the project managers215-218of the system200ofFIG. 2were charged with the series of tasks associated with particular locations. Instead, the first task administrator316is charged with repeatedly performing the similar tasks of resource scheduling321-324across each of the implementations at Locations A-N220-280. The resource scheduling321-324is performed by the first task administrator316according to information provided from the server301and the relational database302. The project manager315, by contrast with the system200ofFIG. 2, may only become involved in the resource scheduling tasks321-224if an exception should arise, for example, if no providers with the desired credentials are available at the desired date and time to do the work.

Depending on the number and complexity of tasks, a task administrator may be trained for and assigned to administering more than one set of similar tasks. As shown inFIG. 3, for example, the first task administrator316may be tasked both with performing resource scheduling321-324for Locations A-N220-280and with managing pre-visit activities331-334for Locations A-N220-280. On the other hand, one or more task administrators may be assigned to administering a single set of tasks. For example, the second task administrator317may be tasked only with on-site activities341-344and the third task administrator318may be tasked only with completion activities351-354. Although not shown inFIG. 3, multiple task administrators may be assigned to administering a single set of tasks.

In sum, embodiments of the present disclosure leverage information technology to translate standards303, templates304, and information on providers305, coupled with client requirements306and project plans for the client307to generate project templates311-314that include tasks for each of the implementations of a project. For example, the project templates311for Location A220includes tasks for administering resource scheduling321, pre-visit activities331, on-site activities341, and completion activities351. Each of the tasks321,331,341, and351in the project template311for Location A220is similar to like tasks for other project templates, such as the tasks for administering resource scheduling322, pre-visit activities332, on-site activities342, and completion activities352in the project template312for Location B230. Thus, like tasks may be collected and assigned to a task administrator trained in administering a particular task instead of assigning a highly skilled project manager the task of performing each of the different tasks. For example, the first task administrator316may be assigned with the tasks of resource scheduling321-324across the project templates311-314for Location A220through Location N280, the second task administrator317may be assigned with the tasks of administering on-site activities341-344across the project templates311-314for Location A220through Location N280, etc. The project manager315then may be freed for exception management or other high level tasks. The positions of the task administrators316-318may be staffed with less costly personnel at remote, rural, or international locations at the call center319.

FIG. 4is a block diagram of a computer system400that may be utilized in implementing an embodiment of a process of templification and concentration of tasks according to the present disclosure. In a particular embodiment, it may be desirable to operate one or more servers/server farms401and451to provide processing bandwidth to support project implementation. Maintaining multiple servers/server farms401and451may also provide desirable redundancy or fault tolerance in the event of failure of one of the servers/server farms401and451. It may be desirable to maintain the servers/server farms401and451at separate locations to maintain operation of the overall system400in the event that a power failure or other unforeseen circumstance at one location should cause one of the servers/server farms401and451to fail.

Correspondingly, the computer system400may include multiple physical relational databases402and452. The databases402and452may store separate sets of data that are accessible to each of the servers/server farms401and451, or the databases402and452may be identical databases to support fault tolerant operations if one of the databases402and452should fail, become inaccessible, etc.

The servers/server farms401and451and databases402and452may communicate via a network425, which may include a public network, a private network, a virtual private network, and/or another network medium providing desirable communication bandwidth. The servers/server farms401and451and databases402and452may each be interconnected with the network425via communications channels410,420,460, and470, respectively. The network425and the channels410,420,460, and470may include one or more of wired communications links, wireless communications links (including radio frequency communications, optical communications, or microwave communications), or other suitable communications media.

With regard toFIG. 4, it is also noted that the databases402and452may include many types of information in addition to the types of information described with regard to the example ofFIG. 3. For example, the database402may include information on standards403, templates404, provider information405, client or customer information407, material lists408for various types of projects, map and travel data409for use in project planning and scheduling, and other types of information. The database452may also maintain information on standards453, templates454, provider information455, client or customer information457, material lists458, map and travel data459which may be different than the information stored in the database402or may be a duplicate copy of the information stored in the database452. As previously described with reference toFIG. 3and as further described below, the information stored in the databases402and452is used to leverage computer and communications systems to make implementation of a project more efficient by enabling the computer system400to perform or facilitate redundant or repetitive tasks, handle communications with providers, and to facilitate provider selection and scheduling.

FIG. 5illustrates a system500in which information and communications technology may be utilized to make more efficient use of task administrator resources, as well as project manager resources. As in the example of the system300ofFIG. 3, the server301coupled with a relational database302is accessed by the task administrators, such as the second task administrator317, via a workstation510coupled to the server301. In the example of the system300ofFIG. 3, the second task manager317was charged with administering the on-site activities341-343at Locations A220, B230, and C240, and potentially other locations. As shown inFIG. 5, completion of the on-site activities541-543may be vested in providers541-543at the different locations (who may have been engaged by one or more other task administrators as part of the resource scheduling tasks321-344, as described with reference toFIG. 3).

To facilitate management of the providers541-543, each of the providers may possess or may be provided with a portable communications device, such as “smart phones” or other handheld wireless devices551-553, that are used at the implementation locations. Through a network525, the server301may be able to communicate with the handheld wireless devices551-553. As a result, instead of the second task administrator317individually telephoning, paging, messaging, or otherwise contacting each of the providers541-543, for example, to confirm arrival at respective implementation locations, the server301may generate and send such messages based on the data stored in the relational database302. The relational database302may store contact information for each of the providers541-543, scheduled arrival information for each of the tasks341-343, and other pertinent information. Using this information, the server301may automatically generate communications to the providers541-543.

Similarly, the server301may monitor responses to the communications. The server301may track whether each of the providers541-543has responded in the affirmative, in the negative, or has failed to respond. Upon checking this information, if one of the providers541-543did not arrive on time or has failed to respond, the second task administrator317then may attempt to contact those providers to determine whether the provider is on site but has failed to respond to the message, is en route, or is experiencing difficulties such that the provider will be unable to perform assigned tasks. In the latter cases, a provider who is running substantially late or who may be unable to appear at all may become exceptions to the project plan. In the case of exceptions, the server301or the second task administrator317may contact or otherwise alert the project manager315, who may then try to correct or adapt for the exception.

Use of the handheld wireless devices551-553or other portable communications devices may serve additional purposes. For example, some smart phones or similar communications devices incorporate global positioning system (GPS) technology so that they may automatically report their present location at intervals or in response to a position query. Using this technology, the server301and, thus, the task administrators or project managers may be able to monitor geographical locations561-563of the providers541-543over a geographical area560or even measure their local positions571-573within a facility or other local site570. As a result, the system may estimate the estimated arrival time or further generate re-routing instructions to different events or tasks as needed necessary.

FIG. 6illustrates a plurality of communications600that may be transmitted between a task administrator615, and a provider640via one of the handheld wireless devices650. The communications600may include a plurality of electronic request transmissions sent to providers, such as the provider640. The electronic request transmissions may elicit a plurality of electronic responses that then are reviewed by the computer systems. The plurality of communications600includes examples of communications that may be sent between the server301and the provider640via the network525, between the task administrator615and the provider640, or between a project manager (not shown inFIG. 6) and the provider640. The plurality of communications600is exemplary in nature, and should not be taken as an exhaustive or limiting list of all the communications that may pass between the participants.

For example, as part of a resource scheduling task, such as the resource scheduling task321ofFIG. 3, an electronic request transmission in the form of an availability message601inquiring whether the recipient is available to staff a project on a particular day or on a particular day and at a particular time. The availability message601, like other communications600, may include text messages, e-mail, automated voice communications, or other forms of communication. The availability message601, like others of the plurality of electronic request transmissions or other communications600, may request a response. The response may be electronically sent by selection of a “yes” field621or a “no” field622, or by selection of some other button or response field. A response also may be requested by e-mail, text message, voice telephone communications, image or video transmissions (e.g., to provide completion of a task) or another form of communication.

The availability message601may be automatically generated and sent by the server301based on having identified a particular provider from the provider information stored in the relational database302(such as the provider information405or455stored in relational databases402or452, as described with reference toFIG. 4, and as further described below). Alternatively, the availability message601may be generated by an appropriate task administrator615using a workstation610coupled to the server301. The task administrator615may generate the availability message601from a shell message or template stored at or generated by the server301. Alternatively, the task administrator615may generate the availability message as a text message, an e-mail message, or place a telephone call to the provider640in response to a task template being generated by the server301based on information stored in the relational database302for the project.

A message forwarding necessary documentation602, such as instructions, site plans, specifications, or other information may be sent to the provider640. A materials confirmation message603may to inquire whether materials to be used in an implementation has been received or procured by the provider. The materials confirmation message603may request confirmation of receipt by selection of a “confirm” field623or by another type of response such as previously described with reference to the availability message601. An instructional message604providing directions as to how to reach the location where the provider640is to appear or instructions as to whom to contact upon arrival may be sent to the provider.

In advance of the on-site activities, a reminder605of the provider's commitment to appear may be sent to the provider. The reminder605may request confirmation that the provider640will appear at the appointed time and location by selecting a “confirm” field625or by another type of response. At or about the scheduled commencement of the on-site activities, an arrival confirmation message606may be sent to the provider640. The arrival confirmation message606also may request confirmation that the provider640has arrived at the appointed location by selecting a “confirm” field626or by another type of response.

Before or around the time when the on-site activities are scheduled to commence, a checklist message607may be sent. The checklist message607may include a number of milestone fields, such as fields627and628. The provider640may be asked to select corresponding milestone fields upon completion of an associated milestone activity or to initiate some other communication to signal reaching each milestone. For example, if the project involves installation of new telecommunications or point of sale equipment, the milestones may include disconnection of old equipment, installation of appropriate wiring or wiring harnesses, installation of new hardware, installation of software, testing, client acceptance, or other activities.

The plurality of communications600may include a code of conduct message608. The code of conduct message608, for example, may remind the provider640of specific customer requirements about how the on-site activities are to be conducted, rules that the provider640should observe while on site, or similar rules. The plurality of communications600also may include a deliverables message609that specifies information the provider640must supply to demonstrate completion of the on-site activities. The deliverables may be based on standard of the project management organization or may be based on requirements presented by the client. For example, the provider640may be required to take photographs of a number of aspects of the purportedly completed installation or to take photographs from a number of angles to permit remote verification that the installation is completed. The handheld wireless device650may include a camera, as so many smart phones or other handheld wireless devices do, to facilitate capture and collection of the photographs by the server301or the task administrator615. Once the deliverables have been created or collected, the provider640may select a “confirm” field629, transmit electronic deliverables, or send another type of response.

In response to the provider640checking off the milestones627and628in the checklist message607, in response to providing deliverables requested in the deliverables message609, or another event, the provider640may receive a completion confirmation message610. The confirmation message610may request that the provider640select a “confirm” field630or initiate some other type of communication to attest that the work is completed. In response to the provider640asserting that the work is completed, a customer verification message611may be sent that necessitates the provider640obtaining a customer signature631or other customer verification that the work is completed. Similarly, customer evaluation message612may be generated that includes response fields632and633that request that the customer representative rate the work, conduct, or other behavior of the provider640.

As the plurality of communications600may be automatically generated or facilitated by the server201, the responses sent by the provider640or a customer (not shown inFIG. 6) may be automatically tabulated by the server301. Alternatively, the responses may result in messages the task administrator615may manually process to determine whether any exceptions have occurred that may necessitate further actions by the task administrator615or the project manager (not shown inFIG. 6). The task administrator615may then update the relational database302or otherwise report to the project manager (not shown inFIG. 6) of the progress of tasks.

FIG. 7illustrates a system700depicting how the communications coordinated via the server301and the relational database302facilitate reporting, invoicing, and payments to enable the project manager315to focus on exception management (not shown inFIG. 7). As previously described with reference toFIG. 6, the server301is used to communicate with the providers640to coordinate and monitor the activities of the one or more providers640. The communications between the one or more providers740and the server301may constitute a plurality of activity reports741-743that are sent from the one or more providers740from each of the locations to the server201. Information received via the activity reports741-743may be stored in the relational database302and tabulated at the server301to generate one or more project status reports710.

The project status reports710may indicate the completion status of each of the activities to be performed for each of the implementations or locations involved in the project. In a particular embodiment, the information in the project status reports710may be automatically tabulated and presented by the server to the project manager315based on the activity reports741-743. Alternatively, the information may be collected or validated by task administrators (not shown inFIG. 7) and then collected at the server301for presentation to the project manager315.

The project manager315may use the project status reports710to identify exceptions where activities are not being completed, are not being completed on time, are not being accepted by client representatives, etc. Thus, the project status reports710may be used by the project manager315to identify those activities with which the project manager should consult with appropriate task administrators or providers to resolve problems. Also, the project status reports710may be used by the project manager315to provide updates to the client210on the status of the project. The project status reports710may be used to provide regular updates to the client210or may be used by the project manager315to respond to ad hoc queries from the client as to the status of the project generally or as to the status of the project at particular locations.

In addition, the data gathered at the server301may be used to automate or facilitate the generation of invoices720and payments730. For example, an agreement between the client210and the project management organization provides for milestone payments as particular activities are completed or as implementations at one or more locations have been completed. Based on activity reports741-743collected at the relational database302, the server301may identify when billing milestones have been reached and, in response, generate the appropriate invoices720for presentation to the client. Correspondingly, an agreement between the project management organization and the providers740may provide for payment to the providers740upon completion of particular activities or upon completion of all activities at particular locations. Thus, based on information in activity reports741-743collected at the relational database302, the server301may identify when payment is due to the providers740and generate the payments730as appropriate.

FIGS. 8 and 9illustrate alternative implementations of information resources to support methods of the present disclosure. As previously described with reference toFIGS. 3,6, and7, for example, coordination of providers to manage projects may be performed by one or more project managers315, task administrators316-318, and/or providers (not shown inFIG. 3) that are not part of the client210organization. Methods of the present disclosure may be performed by third parties to the client using, for example, a server301and relational database302that are maintained and operated by a project management organization. However, methods of the present disclosure may be applied for use within an enterprise or such methods may be implemented by parties using information resources provided by a third party as further described below. The information resources may be managed by computer-executable instructions stored on a non-transitory computer readable media accessible and executable by computing systems making up a portion of the information resources. The computer-executable instructions thus manifest methods of generating tasks and coordinating execution of those tasks in various environments.

For example, in a system800, an enterprise810may be a manufacturer, retailer, service provider or other organization that employs or retains one or more project managers815, task administrators817, and providers819to manage, administer, and service its own projects. Even for projects planned and performed solely within the enterprise810, the disclosed methods may be used to efficiently manage the project by reducing the number of project managers815involved in a particular project by relying on task administrators817. Information resources, such as a server811and a relational database812may be used to generate project templates based on enterprise standards, templates, and information about enterprise providers stored in the relational database812. The project managers815, task administrators817, and providers819may use fixed or portable workstations or devices820-822coordinated through the server811to facilitate task assignments and monitoring, all as previously described with reference toFIGS. 3-7. Alternatively, some combination of internal and external staffing of positions of project managers815, task administrators817, and providers819may be used under the coordination of the server811and812. In any case, computer-executable instructions accessible and executable by the server811within the enterprise810may generate tasks and coordinate execution of the tasks for the enterprise810.

In another system900illustrated inFIG. 9, some or all of one or more project managers965, task administrators967, and providers969may be separate contractors or entities that have joined together to implement a particular project. To support implementation of the project, the project managers, for example, the one or more project managers965may subscribe to or contract with an online service960that maintains a server961and a relational database962executing computer-executable instructions that embody the methods of the present disclosure. The online service960may provide information through public network964to the one or more project managers965about the task administrators967or providers969that lead the one or more project managers965to engage those parties in the implementation of the project. The online service960then may be employed by the one or more project managers965, task administrators967, and providers969using fixed or portable workstations or devices970-972to generate tasks, communicate about performance of tasks, generate reports, generate invoices and bills, and otherwise support the efforts of the one or project managers965-967.

Alternatively, an enterprise may retain the one or more project managers965, task administrators967, and providers969, but may desire to retain the online service960to coordinate the generation of tasks and monitor performance of the tasks. As in the example of the system900, the online service960may maintain the server961and the relational database962executing computer-executable instructions that embody the methods of the present disclosure to support implementation of the project.

In sum, the methods of the present disclosure may be implemented in a variety of ways. Just for example, the methods may be provided as part of a project management service contracted by an enterprise, as previously described with reference toFIGS. 3-9. The methods may be embodied in computer-executable instructions stored on a non-transitory tangible medium that may be acquired and used within an enterprise, as described with reference to the system800ofFIG. 8. Also, the methods may be embodied in computer-executable instructions stored on a non-transitory tangible medium operated by an online service, as described with reference to the system900ofFIG. 9.

A beneficial aspect of the previously described embodiments is the manner in which providers may be identified to perform particular aspects of projects. As described with reference toFIG. 3, the relational database302may maintain information regarding providers (such as information405and455as described with reference to the databases402and452, respectively, ofFIG. 4) who are available to perform particular activities. The information on providers thereby may assist the project manager315or the task administrators316-318in identifying providers to perform particular activities. Alternatively, as also previously described, the information on providers stored in the relational database302may support automatic selection of providers or based on identified needs or objectives of the project.

Referring toFIG. 10, according to a disclosed embodiment, a map1000shows a project location1010to be staffed. Potential providers in a mapped area, which may include localities, states, countries, regions, or the world1002, each are associated with location information. The potential providers may be associated with locations defined by longitude1004and latitude1006. Identifying potential providers by longitude1004and latitude1006has the advantage of being a coordinate system that is applicable across the entire world. Potential providers also may be associated with one or more defined zones1008. A defined zone, for example, may include a county, a state, a region, a telephone area code, or a postal ZIP code.

Once the project location1010is specified, information on potential providers is accessed. The information may be presented graphically, such as in an enlarged map of the adjacent area1011to the project location1010. The provider information may indicate the specific location of each of a number of potential providers. The providers may be apportioned into zones1021-1023based on proximity to the project location1010. For example, the zones1021-1023may separate the providers according to a linear or road mileage distance from a listed address of the provider to the project location. Alternatively, the zones1021-1023may be delineated based on other information, such as estimated or solicited data regarding travel costs attributable to working at the project location1010. For example, providers in zone 11021may be providers that are sufficiently close to the project location1010that there are no travel charges for work at the project location1010. Alternatively, the providers in zone 11021may include providers that have indicated they will not bill for travel costs to the project location1010irrespective of distance to the project location1010. Zone 21022may include providers for which some first measure of travels costs may be anticipated or allowed, while zone 31023may include providers1030for whom a higher measure of travel costs may be anticipated or allowed.

Proximity to the job location1010or generalized travel costs to the job location1010may constitute only a portion of the provider information that may be maintained. Information about the rates or specific travel costs charged by providers may be included. Experience of the provider or customer satisfaction with the provider also may be included. These types of information are provided for example and are not intended as an exhaustive list. The provider information maintained may include any number of pieces of objective or subject information about particular providers.

The rates or travel costs maintained for the providers may include actual hourly costs or some relative indicia of cost. For example, provider information1041maintained for a first provider1031in zone 21022indicates a cost of “120,” which may be an hourly rate or an indexed rate relative to a reference rate equated 100 (e.g., an index rate of “140” may indicate that the provider1031charges forty percent more than a selected reference rate). The provider information1041for the first provider1031may include a travel charge of 25 that may represent a flat charge, a number of chargeable miles to the project location1010, or some other indicator of absolute or relative travel costs. By comparison, provider information1042maintained for a second provider1032in zone 11021may indicate a cost of “140” and travel charge of “0.” Thus, a project management organization can readily compare prices with or without including travel costs that may skew the actual job cost.

Information about the providers may also include information about the experience of each of the providers. The indicia of experience may represent historical data as to the number of times the provider has rendered a particular service or the number of times the provider has rendered the particular service for the project management organization maintaining the provider information1041. For example, the provider information1041for the first provider1031may be “37,” indicating that the first provider has documented performing a particular service 37 times or has performed the particular service 37 times on behalf of the project management organization maintaining the provider information1041. The provider information1041for the second provider1032may be “8,” indicating that the second provider1032has documented performing a particular service eight times or has performed the particular service eight times on behalf of the project management organization maintaining the provider information1042. The relative experience of the providers1031and1041thus may be considered in selecting a provider.

The specificity of the information on experience may be as specific or as granular as decided. For example, the information stored may include the experience the provider has in performing a particular task in a particular type of industry (e.g., such as banking, health services, etc.) or location (e.g., retail, office, etc.). The information on experience may also be specific with an exact type of equipment or model of device being installed. Thus, as desired, the project management information may be able to identify providers that have experience in installing, upgrading, or otherwise working with a particular class, brand, or model of device in a particular type of industry and in a particular type of location, to ensure that appropriately skilled providers are selected for particular tasks. Such specific experience may be chosen by the project management personnel, or may be demanded by the client.

In addition, the provider information1041may include a satisfaction rating. For example, a satisfaction rating of “4.6” in the provider information1041for the first provider1031may be an average score on a known scale based on work performed for all reporting customers or just based on work performed for the project management organization maintaining the provider information1041. Correspondingly, a satisfaction rating of “4.5” in the provider information1042for the first provider1032also may be an average score for all reporting customers or just based on work performed for the project management organization maintaining the provider information1042. Thus, quality ratings also may be considered in selecting a provider.

As previously stated, the information included in the provider information1041and1042ofFIG. 10is intended exemplary in nature and should not be taken as limiting. Other information, such as contact information, certifications held, number of qualified personnel, or other information also may be included in the provider information1041and1042and used in selection of providers. In addition, the information may be updated by contemporaneously-obtained information, such as availability for a project on a particular date. For example, as described with reference toFIG. 6, a server (not shown inFIG. 10) may use stored contact information to automatically transmit an availability message601to the providers1031and1041or provide the information to task administrators to contact the providers1031and1041by telephone or another communications medium to determine their availability on one or more particular dates. The information obtained may be automatically or manually entered into the provider information1032and1042to assist in selection of one or more providers for a particular project.

FIG. 11illustrates an example of how the provider information maintained for a plurality of providers may be used to filter information about known providers to a list of providers suitable for a particular project. The filtered information on providers is shown inFIG. 11in map form for the sake of illustration, but it should be understood that such information may actually be generated in map form, list form, or in any other desired form for use in implementing a project.

Filter criteria1120may be specified to identify which providers may be considered. Filter criteria may include one or more limiting criteria. For example, the filter criteria1120include three separate criteria1121-1123. The first criterion1121is that potential providers will be within zone 11021or zone 21022, for example, to limit travel costs, or to potentially improve response time or avoid possible performance delays resulting from long travel. The second criterion1122is that the providers be available on a particular date.

The third criterion1123is that the provider have performed ten or more installations, such as ten or more installations of a particular type, ten or more installations for the particular project manager, etc. As previously described, the information stored regarding providers' experience and, thus, the filter criteria that may be applied may be as specific or detailed as the project management organization cares to maintain and use. Applying the filter criteria1120yields a filtered list or map1110of potential providers to be considered. Based on the requirement that the potential providers be located in either zone 11021or zone 21022, no providers in zone 31023(FIG. 10) are included in the filtered map1110. Based on unavailability or lack of experience, some providers, such as Provider E1140, are eliminated from the filtered map1110, as represented by Provider E1140being represented with a dotted outline to more plainly represent inFIG. 8that providers in zone 11121and zone 21122have been filtered out from further consideration. Qualifying potential providers that meet all three filter criteria1120are shown with solid outlines, such as Provider L1130.

FIG. 12illustrates an example of how the provider information maintained for a plurality of providers may be used to sort information about known providers to select one or more providers for a particular project. Potential providers may be sorted with or without prior filtering, as described with reference toFIG. 11. For the sake of example, the sorting described with reference toFIG. 12, map1200, is based on the filtered map1110ofFIG. 11, although previous filtering may not have changed the sorted lists of providers1230and1250presented inFIG. 12.

Similar to the filter criteria1120specified with reference toFIG. 11, sort criteria may be selected and entered by a project manager, task administrator, or other user. The filter criteria or the sort criteria also may be derived from the standard information, client requirements, or other data known or created about the project. Two different sets of sort criteria1220and1240are applied leading to two different sets of sort results1230and1250. The application of the two different sets of sort criteria1220and1240are provided for illustration of how selection of different criteria leads to different results. The application of two different sets of sort criteria1220and1240also may illustrate a process followed by a project administrator or task administrator if, for some reason, application of the first set of sort criteria1220results in the first sorted list of providers1230not being acceptable. For example, sorting first by cost may result in a list of providers, of whom the highest ranked providers have relatively low experience or satisfaction ratings. Such results may lead the project manager or task administrator to initiate a second sort of the potential providers.

The first sort criteria1220includes a primary sort criterion1221than ranks potential providers based on cost, including both rate and travel costs. A secondary sort criterion1222ranks potential providers based on satisfaction rating, such as previously described with reference toFIG. 11. Applying the first sort criteria1220yields the first sorted list of providers1230. A first listed provider, Provider B1231, has the same total cost as Provider F1232, thus, Provider B1231and Provider F1232are tied based on the first sort criterion1221. However, application of the second sort criterion1222ranks Provider B1231ahead of Provider F1232by virtue of Provider B1231having a higher satisfaction rating. Both Provider B1231and Provider F1232outrank Provider A1233. Although Provider A1233has a higher satisfaction ranking than either Provider B1231or Provider F1232, the first sort criteria1220prioritizes cost1221over satisfaction ranking1222.

The second sort criteria1240include a primary sort criterion1241than ranks potential providers based on satisfaction rating. A secondary sort criterion1242ranks potential providers based on cost, including both rate and travel costs. Applying the second sort criteria1240yields the second sorted list of providers1250. A first listed provider, Provider J1251, has the highest satisfaction rating of the potential providers; Provider A,1252, is rated next. Application of the second sort criterion1242is not needed because the first ranked providers are not tied based on the first sort criterion as is the case with the first sort criteria1220.

The examples ofFIG. 12show serially applied sort criteria. However, it should be appreciated that the sort criteria could be applied as evenly or unevenly weighted sort criteria. Further, more than two sort criteria may be included in each of the sorts.

Based on each of the sorted lists of providers1230and1250, a provider may be automatically selected. For example, using the first sorted list of providers, Provider B1231may be automatically selected and sent a selection message by the server301(as described with reference toFIGS. 3 and 6). Alternatively, based on the results of applying the sort criteria, a project manager or task administrator may choose one of the potential providers based on the results of applying the sort criteria and other factors such as personal knowledge, recent customer satisfaction issues (that may or may not be reflected in the satisfaction rating maintained in the provider information), etc.

FIG. 13illustrates how sorted lists of providers, such as the first sorted list of providers1230described with reference toFIG. 12, may be used to automatically or manually select or replace providers.FIG. 13shows a first automatic replacement1300of a provider. For the sake of example, it is assumed that the first sorted list of providers1330(derived from the first sorted list of providers1230ofFIG. 12, and based on the first sort criteria1220), is used to select a provider. Based on the first sorted list of providers1330, a selection message or call may be placed automatically or by a project manager or task administrator to Provider B1331. However, Provider B1331may fail to respond to the offer in a timely fashion. The failure of Provider B1331to respond may constitute an exception.

As shown inFIG. 13, the failure of Provider B1331to respond to a selection message may constitute an exception that may be automatically corrected by dropping Provider B1331from the project and automatically sending an engagement message to Provider F1332. Alternatively, if the replacement of a provider is not treated as being automatically correctable, a project manager or task administrator may manually correct the exception by engaging a next provided on the first sorted list of providers1330. Automatically replacing the uncommunicative provider may save a project manager or task administrator the time of manually engaging a next provider. However, if the next provider is to be selected manually or contacted personally, the first sorted list of providers1330simplifies the task of the project manager or task administrator in selecting a next provider.

In a second automatic provider replacement1350, Provider F1332, for example, subsequently may fail to appear at the project location as agreed and, thus, fail to affirmatively respond to an electronic request transmission seeking to confirm the appearance of Provider F1332at the agreed upon location at the agreed upon time. Again, using the first sorted list of providers, a next provider, Provider A1333may be contacted automatically, to automatically correct the exception caused by Provider F1332failing to appear as agreed. Alternatively, replacement of a provider who does not appear may not be regarded as an automatically correctable exception, thus a project manager or task administrator may manually correct the exception by messaging or calling Provider A1333(and, possibly, contacting the client or customer to explain that a problem has occurred because of a provider's failure to fulfill an agreement, but that a replacement provider has been or is being secured). Again, even if such an exception is not designated for automatic correction, selecting Provider A1333to replace Provider F1332may quickly be done manually from the first sorted list of providers1330.

FIGS. 14 and 15graphically represent how embodiments of the disclosure may be used to automatically generate a schedule or revise a schedule in order to serve one or more objectives identified for implementation of the project. For example, objectives identified by a client or project management personnel may include lowest cost, shortest implementation time, use of local providers (i.e., to support local businesses), use of most experienced providers, or any other number of factors. To that end, an initial schedule proposed by a client or by project management personnel may be generated or revised to better serve the one or more client objectives.

Referring toFIG. 14, an initial schedule1400may be generated according to a first objective of set of objectives for generating a schedule.FIG. 14shows the schedule1400in a graphical, map-type form for the sake of explanation and illustration. However, it should be noted that the schedule also may be generated in list form, tabular form, or in any other format that may be desired.

The initial schedule1400shows that two providers, Provider 11412and Provider 21414, have been identified to potentially provide goods or services for implementation of a project. As depicted by a number of “$” symbols associated with each of Provider 11412and Provider 21414, Provider 11412is the less costly of the two providers1412and1414(where the cost may include cost for materials or services, or such costs combined with shipping and/or travel costs to arrive at a total cost). If the objective in generating the schedule is lowest cost, Provider 11412may be selected to provide the materials or services at each of locations A1422, B1424, C1426, D1428, and E1430. Based on availability of the locations themselves or availability of Provider 11412at or near each of the locations, a schedule may be generated at which Provider 11412services Location A1422on Day 1 (relative to any appropriate calendar or temporal reference), services Location B1424on Day 3, Location C1426on Day 6, Location D1428on Day 8, and Location E1430on Day 12. Accordingly, over a period of 12 days, the lowest cost provider, Provider 11412, may service each of the locations to serve the implementation of implementing the project at a lowest cost.

The schedule1400ofFIG. 14may be automatically generated by a computing system based on available information regarding the client and the provider, such as dates available for implementation at each of the locations and provider availability, all of which may be requested by electronic request transmissions and addressed by electronic responses to the electronic request transmissions. Further, upon being provided with the objective of lowest implementation cost, the computer system may automatically select of Provider 11412to service each of the locations.

By contrast,FIG. 15shows a different schedule1500that may be initially generated or may be generated as a revised schedule if objectives for the implementation may include shortest implementation time, a combination of shortest implementation time and lowest cost, or some other combination of factors. The schedule1500shows the same locations, including Location A1422, Location B1424, Location C1426, Location D1428, and Location E1430, and the same two providers, Provider 11412(the lower cost provider) and Provider 21414. However, in contrast to the schedule1400ofFIG. 14, the schedule1500shows that, based on the objective or additional objective of shortest implementation time, Provider 21414is also used to enable implementation over a shorter time period.

As previously referenced, the schedule1400ofFIG. 14may have been initially proposed to the client or customer in order to provide a lowest cost implementation scenario. In response, the client or customer may then request a shorter implementation cycle that would call for the revised schedule1500ofFIG. 15. Alternatively, if the client or customer initially requests a shorter implementation schedule, a schedule like the schedule1500may be an initially generated schedule. If, for some reason, the objectives for the implementation further change, additional factors may be taken into account and other schedules may be generated.

In the alternate or revised schedule1500, the implementation cycle can be shortened from twelve days to three days by engaging both Provider 11412and Provider 21414. Both Provider 11412and Provider 21414may work in parallel on Days 1 and 2, with Provider 11412servicing Location D1428on Day 1 and Location E1430on Day 2 while Provider 21414services Location A1422on Day 1 and Location C1426on Day 2. Provider 11412then services Location B1424on Day 3 to finish the implementation for the specified locations. The implementation of schedule1500ofFIG. 15may be more costly, but is completed in a much shorter time (and also engages another, closer provider to Location A1412and Location C1426, in case use of local providers is another stated objective to be used in the schedule).

Availability of Provider 11412on different days than included in the schedule1400ofFIG. 14may be based on a response of Provider 11412to the electronic request transmission sent to one or more providers identified as suitable. For example, if the original electronic request transmission to Provider 11412open-endedly asked what days that Provider 11412might be available over a widely specified timer period, Provider 11412may have responded to indicate its availability on Days 1, 3, 6, 8, and 12 (as used in schedule1400ofFIG. 14) based on its own convenience. By contrast, Provider 11412may have tendered an electronic response to an electronic request transmission listing different dates if the electronic information request, for example, inquired as to when Provider 11412was available in a three day window from Day 1 to Day 3 or a similarly shortened period. A computer system thus can generate one or more schedules to serve one or more stated objectives. In response to changes in provider availability or changes in objectives, the computer system may generate revised schedules. Further, task administrators or project managers (not shown inFIG. 14or15) may also manually revise the schedule as necessary in the event of scheduling exceptions or other reasons which potentially call for manual revision of a schedule.

FIG. 16is a flow diagram of a particular embodiment of a method1600of performing project management using task templification and concentration. Using a computer system configured to communicate electronically over a network, at1602, the project is divided into a plurality of tasks for each of the plurality of locations where the project is to be implemented. As described with reference toFIGS. 3 and 5, for example, the plurality of tasks are stored in a database of the computer system.

At1604, similar tasks for each of the plurality of locations are concentrated or assigned in a particular task group such that similar tasks across the plurality of locations are collected in a task group. Thus, for example, as described with reference toFIGS. 1,3, and other figures, identifying providers capable of performing particular materials or services (and meeting whatever stated criteria may be used to identify suitable providers, such as described with reference toFIGS. 11-13) are assigned to one particular task group (which may be staffed by one or more task administrators and for which the identification of providers may be partially or entirely automated, as previously described).

At1606, for each particular task of the similar task in the task group, one or more electronic request transmissions are automatically generated to each particular provider of one or more providers selected to request provision of at least one of services and materials for performance of the particular task, as described with reference toFIG. 6. At1608, one or more electronic responses to the one or more electronic request transmissions are received, as also described with reference toFIG. 6. At1610, one or more electronic responses to the one or more electronic request transmissions are automatically reviewed (such as by a computer system) to determine whether each of the one or more providers has generated a positive response to the one or more electronic request transmissions requesting the provision of the at least one of services and materials. Thus, computer systems may be used as described with reference toFIG. 6and other figures to determine the availability of providers and to engage those providers through the exchange or electronic communications that are automatically reviewed by a computer system.

FIG. 17is a flow diagram of a particular embodiment of a method1700of using automatic selection and ranking of potential providers of materials and services to implement a project. Using a computer system configured to communicate electronically over a network, at1702, for each particular task of a plurality of tasks for each of a plurality of locations involved in implementing a project, one or more providers listed in a database in communication with the computer system are identified, where the one or more providers are identified as being capable of performing the particular task. At1704, one or more criteria to be used in ranking the one or more providers are identified. Whether particular providers are determined to be capable of performing a particular task may be based on publicly available information, such as an industry classification (e.g., electrician, sells a particular product, or other qualifying factors, that may be derived from directories or other public information sources. The criteria for selecting one or more providers may be based on information stored the databases302(FIG. 3) or402and452(FIG. 4) such as whether particular providers are capable of performing a particular task may be based on cost, experience, past evaluations, and other factors as described with reference toFIGS. 10-12and which may be directed to proprietary information maintained in the project management systems.

At1706, the one or more providers are automatically ranked according to the one or more criteria, as also described with reference toFIGS. 10-12. At1708, a ranked list of the one or more providers to perform the particular task is generated, as also previously described with reference toFIGS. 10-12. From this ranked list of providers, determining who will staff the project, project implementation may then proceed to determine the timing of the project implementation.

FIG. 18is a flow diagram of a particular embodiment of a method1800for generating a schedule for implementation of a project. Using a computer system in communication with a provider database maintaining information about one or more providers potentially being capable of providing at least one of goods and services at one or more of the plurality of locations, at1802, one or more objectives for generating a schedule to be used in scheduling performing one or more tasks involved in implementing a project are identified. As described with reference toFIGS. 14 and 15, such scheduling objectives may include lowest cost, shortest implementation time, use of local providers, or a combination of these and other factors.

At1804, one or more providers are identified from a plurality of providers listed in the provider database, wherein the one or more providers are identified as being capable of performing one or more particular tasks at one or more of the plurality of locations. As described with reference toFIGS. 10-13andFIGS. 16 and 17, the capability of providers may be determined based on information known about the providers regarding their suitability and, based on exchange of electronic request transmissions and responses, which of the suitable providers may be available and willing to perform particular tasks.

At1806, from the list of the one or more providers identified as being capable of performing the one or more particular tasks, a schedule for performing the one or more particular tasks at each of the plurality of locations and identifying a selected provider for each of the plurality of locations is automatically generated to satisfy the one or more objectives, as described with reference toFIGS. 14 and 15.

Referring toFIGS. 16-18, it should be appreciated that project planning and implementation may employ one or more of the methods summarized inFIGS. 16-18. Tasks may be concentrated in particular groups and performance of those tasks may be automatically arranged through exchange of electronic communications as described with reference toFIG. 16. Particular providers may be selected based on specified criteria as described with reference toFIG. 17. An implementation schedule may be generated or revised automatically according to stated objectives as described with reference toFIG. 18.

Generation and review of electronic communications as well filtering and sorting potential providers and scheduling of said providers may be automatically performed by a suitably programmed computing system, such as the server301(FIG. 3) or the servers401and451(FIG. 4). These computer systems may include general purpose computing systems that are configured and programmed to perform the methods as described with reference to the preceding figures.

FIG. 19illustrates a diagram of a representative computing system1900operable to support computer-implemented methods and to execute computer-executable instructions to facilitate project implementation as described in the present disclosure. The servers, workstations, and handheld wireless devices as previously described may include computing systems like the computing system1900illustrated and described with reference toFIG. 19.

Referring toFIG. 19, the computing system1900may include any of a number of forms of stationary or mobile computing devices. The computing device1900typically includes at least one processing unit1904and a system memory1906. Depending on the exact configuration and type of computing device, the system memory1906may be volatile (such as RAM), non-volatile (such as ROM, flash memory, and the like) or some combination of the two. The system memory1906typically maintains an operating system1908, one or more applications1910, and program data1912.

The computing device1900may also have additional features or functionality. For example, the computing device1900may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated inFIG. 19by removable storage1914and non-removable storage1916. Computer storage media may include 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. The system memory1906, the removable storage1914, and the non-removable storage1916are all examples of computer storage media. Available types of computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory (in both removable and non-removable forms) or other 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 computing device1900. Any such computer storage media may be part of the computing device1900. The computing device1900may also have input device(s)1918such as a keyboard, mouse, pen, voice input device, touch input device, etc. Output device(s)1920such as a display, speakers, printer, etc., may also be included.

The computing device1900also may include one or more communication connections1922that allow the computing device1900to communicate with other computing devices1924, such as over a network or a wireless network. The one or more communication connections1922are an example of communication media. Available forms of communication media typically carry computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media.

While the disclosure has been has been set forth herein in reference to specific aspects, features and illustrative embodiments, it will be appreciated that the utility of the disclosure is not thus limited, but rather extends to and encompasses numerous other variations, modifications and alternative embodiments, as will suggest themselves to those of ordinary skill in the field of the present disclosure, based on the description herein. Any of various elements or features recited herein is contemplated for use with other features or elements disclosed herein, unless specified to the contrary. Correspondingly, the invention that may be hereinafter claimed is intended to be broadly construed and interpreted, as including all such variations, modifications and alternative embodiments, within its spirit and scope.