Patent Publication Number: US-7212987-B2

Title: System and method for planning a design project, coordinating project resources and tools and monitoring project progress

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention generally relates to project planning engines and more particularly to an improved planning engine which automatically monitors the status of tasks being performed by resources. 
     2. Description of the Related Art 
     Today&#39;s complex projects often have large design teams with complex methodologies and tools. Each tool may perform a specific task within the design flow. Teams may range from a few individuals on up to the hundreds. The need to control and track these activities have become a major focus within corporations today. The current method involves a graphical entry tool that allows the user to enter start and end dates and to link activities together, and to list the required resource (person) for the task. 
     Another software execution tool then uses an e-mail system to send out reminder notes to the resource (person) as to the task that needs to be completed and the time frame it needs to be accomplished during. It allows the resource (person) who has the task completion responsibility to enter into the system when the task is completed. This can be overridden by the project manager and his delegates. Usually, a team will designate a Project Team Leader whose job description is gathering the status of the team, and ensuring that the project planner stays in sync with the activities. 
     Several flaws exist with this present system. First, it is difficult to gather the data and keep the plan on track with all the individuals and activities within the project. Also, one person&#39;s definition of complete, may be different from another. Another problem is that there is not a connection with the ongoing activities and the project planning tool. These methodologies may be custom or ASIC (application specific integrated circuit) methodologies, but each is a collection of tools whose sum of the total results in a functional chip. The actual execution of these tools, and the project planning are conventionally only connected to a limited extent. Once again, the designers and Project Team Leader must factor these tasks/resources into the global plan. Another major flaw is that often the individual designers are not fully integrated into the project. Except for the status between the designer (resource and the Project Team Leader), the individual designers do not have direct update access to the plan. With the conventional systems, having all the designers accessing the project plan would most likely lead to chaos, and error. 
     SUMMARY OF THE INVENTION 
     In view of the foregoing and other problems, disadvantages, and drawbacks of the conventional planning engines, the present invention has been devised, and it is an object of the present invention to provide a structure and method for an improved planning engine. 
     In order to attain the object(s) suggested above, there is provided, according to one aspect of the invention, a method of coordinating resources to complete a design project. The method identifies tasks that must be finished to complete the design project based on design data. The invention assigns tasks to a plurality of resources and prioritizes the tasks based on dependency between the tasks to create a project plan. Next, the invention stores the project plan and the design data in a database. The invention automatically notifies the resources of corresponding task responsibilities and associated due dates based on the project plan through the use of encryption keys. The invention controls access to the design data through the use of the encryption keys assigned to the resources. The invention automatically monitors work being performed on the tasks through a computerized network and automatically notifies a project team leader of task completion status, overdue tasks, and tasks being ignored, based on the monitoring. The monitoring includes observing whether a resource is actively working on a task exclusively by observing network activity of the resource. The invention automatically schedules a meeting of all corresponding resources if a task becomes overdue. Further, the invention produces periodic status reports based on the monitoring. The invention automatically notifies the resources of additional tasks as prerequisite tasks are completed. The invention automatically searches for additional resources for tasks that are overdue. The monitoring process includes a polling function. With the invention, the project planner and database/tools  142 , the design data  125 , the designers  115 – 118 , and the design tools  126  are fully integrated into a cohesive and pervasive whole  110 . When being assigned a task, each user is provided with keys of that allow access to in the necessary tools. The keys allow the invention to track the progress of each task by utilizing the time parameters within each of the keys. Therefore, the invention controls access to the tools and assigns tasks through use of keys. The result is that the project planer  142  is fully integrated into the actual design tasks without the need of manual intervention. Changes in schedule can occur in a real time manner. Work completing early can be detected, and the next tasks launched and vice versa (the overdue task is visible). In addition, tasks being ignored are immediately flagged, and proper attention can be applied to the problem- In this manner, a higher probability of success can occur. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The foregoing and other objects, aspects and advantages will be better understood from the following detailed description of a preferred embodiment(s) of the invention with reference to the drawings, in which: 
         FIG. 1  is a schematic diagram of a system embodiment of the invention; 
         FIG. 2  is a schematic diagram of a system embodiment of the invention; 
         FIG. 3  is a flow diagram illustrating a preferred method of the invention; 
         FIG. 4  is a hardware diagram of a computer system used with the invention; and 
         FIG. 5  is a schematic diagram of an encryption key. 
     
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION 
     The invention, which is sometimes referred to herein as the Pervasive Proactive Project Planner (PPPP) fully integrates the project planning tool fully into the design methodology. With the invention, the project planner, project planner database/tool, the data, the designers, and the design tools are fully integrated into a cohesive and pervasive whole. The PPPP enables, tracks, alerts, and controls, with full automation, the design methodology. 
       FIG. 1  illustrates an overall system diagram using the invention. More specifically,  FIG. 1  shows the inventive project planner as item  110 . A central database is shown as item  120 . A user  180  provides input to the project planner  110  and the central database  120 . Many conventional software applications  150  can be utilized with the invention, such as timing control, test generation, simulation, or other design software tools that link software design and the data. For example, the software application  150  can access the central database  120  using keys  151 . The Project Manager  112  acts at the direction of the stakeholders  170  (who have requested the project) to execute the inventive project planner  112 . With the invention, all functions are coordinated through the network  130 . The detailed operation of the various functions shown in  FIG. 1  are discussed in greater detail with respect to  FIG. 2  below. 
     As shown in  FIG. 2 , the invention PPPP  110  includes a proactive project planner  142  that sends notices through a computer network  130  (local area network (LAN), wide area network (WAN), etc.) as to whether the task is on time and estimates on completion time. System warnings and response mechanisms that require task leader responses are included in this notice. Task leader  112  responses are monitored by the system and information is fed back to the project Manager. 
     Daily status reports are generated and distributed by the report generator  140  to all core members of team  115 – 118 . Completion target date, project completion date and other useful information are also sent out to the team  115 – 118  within the encryption keys  151 . Helpful suggestions on how to reduce the total cycle time (based on analysis of the current data) is provided to the team  115 – 118  in the reports. With the invention, if a task is completed sooner than expected, then the team members can be reassigned to another task. The change in assignment can be done manually or automatically. If the reassignment is done automatically, the invention provides the keys  151  to the team member at an earlier time than they would otherwise receive the keys. 
     The invention sends notes (e-mails) automatically  147  to team members  115 – 118  congratulating them on the completion of their task and asking for feedback on future improvements of the project. 
     Polling software  146  in the PPPP  110 , automatically determines how much of a project task is completed, avoiding the need to make the project lead  112  stop his work to fill out a form. The invention  110  maintains the status of all project tasks. The polling software  146  also tracks how much time is spent by each developer  115 – 118  doing his work. If the developer/designer  115 – 118  logs on and does nothing for a period of time (based on document changes, compilation runs, tool usage, sensed over the network etc.), the invention does not count this time as working on the project task. Therefore, the PPPP  110  through the polling software  146  actually monitors through the network the hours and minutes that a designer devotes to actively working on a particular project task (in real time), not merely the amount of time a file is opened by a designer. This feature is useful in tracking specific expenses of work done on projects. This expense is often hard to track manually through the network because of multiple projects taking place at one time. To the contrary, with the polling feature, the project manager has automatically produced, up to the minute reports on the amount of time that his team is spending on a specific task. 
     In addition, the polling software  146  utilizes time parameters that are contained within each of the keys.  FIG. 5  conceptually illustrates one of the keys  151  in greater detail. Each key  151  includes data  50 , the team members name  51 , the start date of a task  52 , the end date of the task  53 , and the tool or resource (target) to which the key provides access  54 . In addition, the key can include other information  55  depending upon the specific application. Therefore, the key only allows the team member access to the target for a limited period of time The polling software utilizes this information to track the progress of each task. In addition, the polling software can modify the keys. Thus, if a task regularly takes longer or shorter than expected, the difference between the start date  52  and the end date  53  is changed by the polling software. 
     In addition, by storing feedback, etc. in an advice database  143 , the invention polls, stores and recommends project tasks that are the most successful. Therefore, if a current method being tried by the task leader has failed every time it was tried before, the database would warn the task leader of previous failures and give failure analysis. For example, each tool, application, etc. may contain helpful notes regarding the successfulness of the operation, before it is used and may even contain a recommendation to the user to try something different first, because of the higher likelihood of success with the alternative tool, application, etc. 
     The PPPP  110  also includes a proactive additional resource finder  141 . This allows the PPPP  110  to search the network  130  for additional resources to complete the task automatically if the project task is overdue and additional internal resources are not available. For example, the resource finder  141  will automatically send out e-mail to known resources requesting assistance when a project become overdue (more than a predetermined period past the proposed due date contained in the key  151 ). 
     The PPPP  110  includes a term and acronym filter  144  that comprises a database of on-line help to give a high level overview and modeling capability. If a particular task description uses unfamiliar terms and acronyms, then this would be available to provide assistance. 
     The PPPP  110  has an automatic meeting scheduler  145 . Besides checking all team member&#39;s availability for a requested meeting, the meeting scheduler  145  also automatically schedules a meeting when the project has fallen behind by a certain amount. The meeting scheduler  145  would be supplied with a list of parties who would automatically be invited, depending upon the task that is overdue, as well as a prescribed agenda that may include, for example, reports from each team member regarding task status/task problems. 
     A database  120  links the project planner system  110 , the project planner  142 , the designers  115 , the design data  125 , and the design entry/chip build tool set  126 . 
     The PPPP database  120  is a traffic control unit that keeps tracks of when data is checked out or in by the various designers  115 – 118 . The PPPP database  120  has new functions not existing in prior centralized databases. 
     For example, new to the database  120  is an enhanced link to the project planning database  142 . These databases share key information in the form of task/data/resource tags along the encryption keys  151 . Each task/resource and time domain is controlled by the project planning database  142 . Before design is allowed to occur, the project planner  142  along with the designers  115 – 118  are required to enter into the project planning database all design data, designs, tools, and tasks. The project planner database  142  is modified to include the type of tools for a task to be included along with the most appropriate resource (person)  115 – 118  for the task and the duration of the task. In order to properly match the resource with the task, the invention maintains resource profiles (qualifications) of each of the resources. In this way, the invention can track whether a resource is receiving tasks for which the designer (resource) is qualified. 
     In addition, with the invention all tasks identify the design data  125  as a resource. So when a task is entered in the project planner  142 , the information entered includes the task, the person (resource)  115 – 118 , the data source, and optional data destination, the design tools used  125 ,  126 , for the task along with normal start, end and any task that may gate the start of the task, along with any task that may be gated by this task. A first task “gates” a second task if the first task is a prerequisite to (must be completed before) the second task. Thus, the project planner tool  142  creates a data structure that includes the complete function (resource, task, time, tools, etc.) along with a valid encrypted set of keys. 
     The database  120  incorporates the project planner  142  data structure to allow checking out and checking in of data. When a designer  115 – 118  is ready to execute a task, the designer  115 – 118  identifies the task to the central database  120 , and the central database  120  searches the project planner  142  data structure to determine whether or not the task exists, and whether a set of encrypted keys exist. If the task exists (i.e., has been defined within the project planner database  142 ), and a valid set of keys exists, then the designer  115 – 118  is given a copy of the design data  125  along with a valid key. As a result of checking out the data, the central database  120  marks the project planner data structure  142  for that task as “active” and begins monitoring through the polling function  146 , as discussed above. Thus, the project planner  142  is automatically notified of an ongoing task. 
     If the designer requires a design system tool  126  to perform a function of the design data  125 , the designer provides to the tool  126  both the data, and the encryption key. To activate, the tool  126  acquires a complement active key  152  (lock) from the central database  120 . The complement key  152  is one that complements the key provided by the design data (e.g., the lock that requires the designer&#39;s key  151 ). If the complement key does not exist, the designer is notified that an unplanned task is being attempted to the design data. In addition, the project planner is automatically notified. 
     The invention allocates the tools/tasks for any design data. Once the designer has completed the task, the data is checked back into the central database  120 . Once again, the designers must have a valid key in order to check in the data/results into the database. The central project planner  142  automatically updates the project plan data structure to mark the units return and completion. The project plan database  142  updates itself based on the completed task. More specifically, besides marking the task complete, the project plan database unlocks (by creating valid keys) any tasks that were gated by the just completed task. Though the automatic e-mail function  147 , the project planner  142  is notified, along with all designers that were being gated, of the completed task. All unlocked tasks then can request from the central database the required data and keys. This process repeats as the project moves to completion. 
       FIG. 3  shows the invention in flowchart form. The flowchart begins at item  300  where the stakeholder  170  defines a project request. The Project Manager  112  operates the project planner  110  to schedule tasks among the designers  115 – 118 , as discussed above (as shown in item  302 ). In item  304 , the central planer create links between the software tool, the planner, and the user interface. The user  180  can perform parallel options while the project is being completed  306 . Then, in item  308 , the various tasks are completed by the designers  115 – 118  using the databases and keys, as discussed above. Item  310  illustrates the process of determining whether a designer has a valid key. The key must have been issued within a prescribed time (the key must not be timed out). If the key is invalid, the project planner is notified of the improper design access. 
     In item  312 , the process loops back as long as there are additional tasks to be completed. Item  314  represents the various special functions that the invention can achieve. More specifically, the invention can produce final audits indicating the efficiency and resources used of the different corporate departments who contributed to completing a project. The invention allows the user or stakeholder to request to review the design that any point in the process to make sure the design complies with their goals. As mentioned above, the meeting scheduler  145  can automatically (or when prompted) schedule a meeting. In addition, the project team leader/manager  112  can decide to refuse a job based on predetermined criteria. 
     A representative hardware environment for practicing the present invention is depicted in  FIG. 4 , which illustrates a typical hardware configuration of an information handling/computer system in accordance with the subject invention, having at least one processor or central processing unit (CPU)  10 . CPUs  10  are interconnected via system bus  12  to random access memory (RAM)  14 , read-only memory (ROM)  16 , an input/output (I/O) adapter  18  for connecting peripheral devices, such as disk units  11  and tape drives  13 , to bus  12 , user interface adapter  19  for connecting keyboard  15 , mouse  17 , speaker  103 , microphone  104 , and/or other user interface devices such as touch screen devices (not shown) to bus  12 , communication adapter  105  for connecting the information handling system to a data processing network, and display adapter  101  for connecting bus  12  to display device  102 . A program storage device readable by the disk or tape units, is used to load the instructions which operate on the inventive system which is loaded onto the computer system. 
     Several key features exist with this new integrated PPPP environment  110 . With the invention, the project planner and database/tools  142 , the design data  125 , the designers  115 – 118 , and the design tools  126  are fully integrated into a cohesive and pervasive whole  110 . When being assigned a task, each user is provided with keys of that allow access to in the necessary tools. The keys allow the invention to track the progress of each task by utilizing the time parameters within each of the keys. Therefore, the invention controls access to the tools and  10  assigns tasks through use of keys. The result is that the project planer  142  is fully integrated into the actual design tasks without the need of manual intervention. Changes in schedule can occur in a real time manner. Work completing early can be detected, and the next tasks launched and vice versa (the overdue task is visible). In addition, tasks being ignored are immediately flagged, and proper attention can be applied to the problem. In this manner, a higher probability of success can occur. 
     While the invention has been described in terms of preferred embodiments, those skilled in the art recognize that the invention can be practiced with modification within the spirit and scope of the appended claims.