US20090055237A1 - System and method for managing inherent project uncertainty - Google Patents

System and method for managing inherent project uncertainty Download PDF

Info

Publication number
US20090055237A1
US20090055237A1 US11/844,219 US84421907A US2009055237A1 US 20090055237 A1 US20090055237 A1 US 20090055237A1 US 84421907 A US84421907 A US 84421907A US 2009055237 A1 US2009055237 A1 US 2009055237A1
Authority
US
United States
Prior art keywords
task
tasks
work
expected
project
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/844,219
Inventor
Bruce P. Henry
Jason Carlson
Charles A. Seybold
Bryan Wilkerson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LiquidPlanner Inc
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US11/844,219 priority Critical patent/US20090055237A1/en
Priority to PCT/US2008/074108 priority patent/WO2009026567A1/en
Priority to EP08798561A priority patent/EP2193442A4/en
Priority to CA2698220A priority patent/CA2698220A1/en
Publication of US20090055237A1 publication Critical patent/US20090055237A1/en
Assigned to LIQUIDPLANNER, INC. reassignment LIQUIDPLANNER, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CARLSON, JASON, HENRY, BRUCE P., SEYBOLD, CHARLES A., WILKERSON, BRYAN
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • G06Q10/063116Schedule adjustment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • G06Q10/063118Staff planning in a project environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups
    • G06Q10/1097Task assignment

Definitions

  • a project can range in size from the very small (e.g., a single person project) to the very large (e.g., a project involving hundreds of individuals or organizations).
  • very small e.g., a single person project
  • very large e.g., a project involving hundreds of individuals or organizations.
  • project management software In order to ensure that projects are completed in a timely fashion, it is increasingly common for individuals and organizations to use project management software to manage projects, especially large ones.
  • One of the primary functions of existing project management software is to estimate a project's completion date and track progress against milestones.
  • the prevalent method involves decomposing a project into smaller tasks (often referred to as a work breakdown structure or WBS).
  • WBS work breakdown structure
  • a user typically specifies one of the following: (1) a start date and an end date, (2) the total effort required to complete the task, or (3) the total duration of the task.
  • Tasks can be made dependent (i.e., one task cannot be started until another task is completed) or independent (i.e., two tasks can be worked on concurrently).
  • One or more individuals is assigned to each task.
  • a schedule for each task is determined based on the time required to complete the task and the task's dependencies.
  • Project management software determines a schedule for the entire project based on the schedules of its component tasks.
  • existing project management software employs user-provided inputs regarding component tasks to determine the completion date of the entire project.
  • FIGS. 1A and 1B depict graphs 100 and 150 that illustrate task effort and schedule calculation in accordance with existing project management techniques.
  • a project P is composed of two tasks T 1 and T 2 .
  • a first task T 1 has a total effort of five days, as represented by bar 105 .
  • a second task T 2 is dependent upon task T 1 and has a total effort of three days, as represented by bar 110 .
  • a second flaw with the techniques employed by existing project management software is that it can be difficult to obtain status updates from individuals and/or organizations involved in a project. In the absence of updates, project plans produced by existing project management software become more and more inaccurate over time.
  • FIGS. 1A and 1B illustrate task effort and project schedule determination in accordance with prior art techniques.
  • FIG. 2 is a block diagram that illustrates components of a project management facility.
  • FIG. 3 is a flow diagram of a process for editing a project and calculating a project schedule.
  • FIG. 4 is a representative screenshot depicting a project management interface.
  • FIG. 5 is a representative screenshot depicting an interface for editing a project work item.
  • FIGS. 6A and 6B illustrate task effort and project schedule calculation in accordance with some embodiments of the project management facility.
  • FIG. 7 is a representative screenshot depicting another project management interface.
  • FIG. 8 depicts the interface of FIG. 7 illustrating the effect of a revised project schedule.
  • FIG. 9 depicts the interface of FIG. 7 illustrating a work item promise date.
  • a software and/or hardware facility for managing project schedules having inherent uncertainty allows users to create hierarchical data structures to model projects and other collective efforts.
  • the hierarchical data structures contain work items that can represent tasks, collections of tasks and collections of collections and tasks.
  • Each work item can have associated with it an estimate provided by a user, such as a ranged estimate of the amount of work remaining before the work item is completed.
  • the facility can calculate expected start and finish dates for each work item.
  • the facility calculates expected start and finish dates for work items that represent collections of tasks and collections of collections and tasks. By calculating the dates for all or most of the work items in a project, the facility is thereby able to calculate an expected end date for the entire project. By calculating expected start and finish dates based on ranged estimates, the facility can account for the uncertainty inherent in projects.
  • the facility generates project schedules for display to users that express the uncertainty inherent in projects and component work items.
  • the facility may generate a visual indication of a work item's earliest start date, earliest expected finish date, expected finish date, latest expected finish date and latest finish date.
  • One form that the visual indication can take will be referred to as an “uncertainty bar,” or “u-bar”.
  • a u-bar can be generated for each work item that represents a task, as well as each work item that represents collections of tasks and collections of collections and tasks.
  • the facility can also generate a u-bar for an entire project. The facility can thus visually display the uncertainty inherent in projects.
  • FIG. 2 is a block diagram illustrating components of a project management facility 200 (“the facility”).
  • Users 255 interact with the facility via a network 250 , such as the Internet.
  • Users may be actual human users, such as members of a project or organization, computer programs, or other entities.
  • the facility allows users to build and manage project schedules having uncertainty in tasks associated with the project.
  • the facility has various components to allow users to manage projects. These components include an authentication component 205 , a presentation component 210 , a calculation and scheduling component 220 and a data store 225 .
  • the authentication component 205 authenticates the user 255 and grants the user 255 access to the facility.
  • the presentation component 210 presents a user interface to the user 255 and receives user requests and responses.
  • the calculation and scheduling component 220 performs statistical calculations to predict likely completion dates for project tasks and projects and calculate likely project schedules.
  • the facility can include other components that perform other functions.
  • the various components of the facility can retrieve and store data related to their functioning in the data store 225 , which includes a project data database 230 and a log database 235 .
  • FIG. 3 is a flow diagram of a process 300 implemented by the facility to allow a user to edit a project and to calculate the project's schedule based on data entered by the user.
  • the facility generates an authentication interface for display to a user.
  • the user can be authenticated in a variety of ways, such as a username and password combination, a digital certificate, or a biometric identifier.
  • the facility receives the submission of credentials from the user. The facility determines whether the user credentials are valid at block 315 . If they are not valid, the process 300 returns to block 305 where the authentication interface is again generated for display to the user. If the user credentials are valid the process 300 continues at block 320 where the facility generates a project management interface for display to the user.
  • FIG. 4 is a block diagram of a representative project management interface 400 that the facility may generate.
  • the project management interface 400 allows a user to view, create, modify, administer and/or delete projects, project tasks and various attributes thereof.
  • the project management interface 400 has several tabs 405 a , 405 b , . . . 405 i for displaying various project management aspects. As illustrated the tab 405 a , labeled “estimates,” is currently active.
  • the project management interface 400 can also have various controls 410 that enable viewing, creating, modifying, administering and/or deleting projects, project tasks and various attributes thereof.
  • the project management interface 400 includes various columns that can each represent one or more aspects of project management.
  • column 415 b contains a listing of work items, arranged in a hierarchical structure.
  • Work items can include spaces, such as space 420 a .
  • a space can be used to represent a user's work space, such as all the projects in which the user is involved.
  • Work items can also include projects, such as projects 420 b and 420 c .
  • Projects can represent a project or other effort by zero or more users.
  • Projects can include one or more containers, such as container 420 d and container 420 h .
  • Containers can represent logical groupings or collections of zero or more tasks and/or containers.
  • Containers can include tasks and/or other containers, such as tasks 420 e , 420 f and 420 g and container 420 h .
  • a task can represent an actual task, job or assignment by zero or more users.
  • Work items can also include logical representations of other aspects of project management that are not shown in FIG. 4 .
  • Each of the various work items can have various attributes associated with it.
  • the project management interface 400 displays certain of these attributes in the other columns.
  • Column 415 a can display a visually informative icon or flag associated with a work item. Such icon may represent, for example, when the associated work item is complete.
  • Each work item can have zero or more owners, which are displayed in column 415 c .
  • work items 420 c and 420 d have as an owner elements 425 c and 425 d , respectively, both of which are “bruce.”
  • Work item 420 e does not currently have an owner, shown as element 425 e , which is “unassigned.”
  • a work item can also have associated with it a “total done” attribute representing a quantity of work performed on the work item. This attribute is shown in the “total done” column 415 d , which includes “total done” amounts 430 c and 430 d , which are “5.0d” and “2.0d,” respectively.
  • a work item can also have associated with it a “remaining work” attribute representing a quantity of work remaining to be performed on the work item.
  • “Remaining work” can be expressed as a range, such as “36.2d-85.5d,” “29.0d-67.0d” and “3.0d-6.0d,” as depicted in elements 435 c , 435 d and 435 e .
  • “Remaining work” can also be expressed as a single time period, such as “5.0d,” as a series of time periods with a confidence level of each period, such as “10% in 5.0d, 70% in 6.0d, or 20% in 7.0d,” as a total amount of work and percentage or work remaining (e.g., 40% of 7 total days of effort remaining), or in a variety of other ways.
  • the project management interface 400 can display “remaining work” as anticipatory (i.e., the work remaining to be done in the future from this point forward), or as calculated from a particular point in time.
  • the project management interface 400 displays in column 415 f an “expected on” attribute, which corresponds to the calculated expected finish date for a work item.
  • work item 420 c has an “expected on” date 440 c of “Aug. 21, 2007.”
  • work item 420 d has an “expected on” date 440 d of “Aug. 17, 2007”
  • work item 420 e has an “expected on” date 440 e of “Aug. 6, 2007.”
  • the “expected on” date may include a time of completion (e.g., 5 pm) in addition to a date.
  • the calculation of a work item's “expected on” date will be discussed with reference to FIGS. 6A and 6B and elsewhere herein.
  • the project management interface 400 displays attributes corresponding to a work item's promise date and status in columns 415 g and 415 h .
  • the promise date can be a date by which the user has promised or agreed that the work item will be done.
  • the status can be an indication of the current status, condition or standing of the work item according to a project metric or other standard.
  • the facility can allow users to specify estimates in other formats. These can include a range of an amount of money, budget percentages, total effort, and/or other work item inputs. For example, the facility can allow a user to specify that the completion of a work item is likely to cost from about $2,000 to about $5,000. As another example, the facility can allow a user to specify that the amount of effort required to complete work item is equal to six on a scale of one to ten. The facility can also allow a user to specify an express confidence level or confidence factor when providing a ranged estimate.
  • the facility can allow a user to specify that the user is 20% confident of being able to complete a work item in two days, and 90% confident of being able to complete a work item in four days.
  • the facility can also allow a user to specify an estimate for one work item in one format and an estimate for a second work item in a different format.
  • the facility receives a submission indicating a desire of the user to edit the project in some way. Editing can refer to a variety of actions by the user, including, but not limited to, viewing a work item in greater detail, creating a new work item, modifying an aspect of a work item or deleting a work item.
  • the facility generates a project editing interface for display to the user.
  • FIG. 5 is a representative screenshot depicting an interface 500 for editing a work item, which can include a modal or modeless window 505 . As depicted, the facility has displayed the window 505 in response to the submission of an indication of the user's desire to edit work item 420 e .
  • the window 505 allows the user to edit various aspects of work item 420 e .
  • the user can modify the name of the work item.
  • the user can modify the owner of a work item via combo box 515 , which can include a listing of users involved in the project, in an organization, or in a particular group.
  • the work remaining for a work item can be modified by changing the low end 520 a and the high end 520 b of a range of time.
  • the quantity of work done for a work item can also be modified in text box 525 .
  • a promise date can be modified in text box 530 and a description of the work item can be modified in text box 535 .
  • a user can save the edits by clicking on button 540 or cancel the edits by clicking on button 545 .
  • the facility receives a submission of an edit of the project from the user, such as by the user's clicking on button 540 of FIG. 5 .
  • the facility performs statistical calculations for any work items that have been edited as well as any dependent work items.
  • FIGS. 6A and 6B illustrate work item task effort and project schedule calculation performed by the facility.
  • FIG. 6A depicts three work items T 0 , T 1 and T 2 .
  • T 1 can represent a task
  • T 2 can represent a second task
  • T 0 can represent a container, such as a project, under which tasks T 1 and T 2 are located.
  • T 2 is dependent upon T 1 , i.e., T 2 cannot be started before T 1 is completed.
  • T 1 has a range 605 a of “2-8d” associated with it that corresponds to a ranged estimate of two to eight days of work remaining to be done on the work item.
  • T 2 has a range 605 b of “2-4d” that corresponds to a ranged estimate of two to four days of work remaining to be done on the work item.
  • Each of work items T 0 , T 1 , and T 2 is graphically represented by an outer bar and an inner bar, collectively called a u-bar.
  • work item T 1 is represented by outer bar 607 a that contains inner bar 609 a .
  • Each work item has five points representing start or finish dates associated with it.
  • the first point 610 a is located at the left-most position of the outer bar 607 a and represents the earliest start date of the work item.
  • the second point 615 a is located at the left-most position of the inner bar 609 a and represents the earliest expected finish date of the work item.
  • the third point 620 a is located at an intermediate section of the inner bar 609 a and represents the expected finish date of the work item.
  • the fourth point 625 a is located at the right-most position of the inner bar 609 a and represents the latest expected finish date of the work item.
  • the fifth point 630 a is located at the right-most position of the outer bar 609 a and represents the latest finish date of the work item.
  • T 2 has five points 610 b , 615 b , 620 b , 625 b , and 630 b representing start and finish dates associated with it, as does T 0 : 610 c , 615 c , 620 c , 625 c and 630 c.
  • the work items T 0 , T 1 and T 2 may be placed on a timeline 635 representing elapsed time since the start of the project.
  • Work item T 1 is the first work item and has no dependencies, so the first point 610 a is located at the beginning of day 1 . This is because the beginning of day 1 is the earliest possible start of T 1 .
  • the facility determines the location of the second 615 a , third 620 a , fourth 625 a and fifth 630 a data points for T 1 in accordance with values predicted by a statistical model.
  • the statistical model used by the facility is a normal distribution.
  • the third data point 620 a which can be shown by a capital “E” to represent the expected finish, it is located at the midpoint of the remaining work range for T 1 . This is because the midpoint of the remaining work range for T 1 is the mean of a normal distribution. For T 1 , the remaining work range 605 a is “2-8d,” the midpoint of which is 5d, and thus the third data point 620 a is placed at the end of day 5 .
  • the expected finish date calculated by the facility is what is shown in the “expected on” column 415 f discussed with reference to FIG. 4 . In some embodiments, the facility can use distributions other than the normal distribution to calculate the locations of the various data points.
  • the facility can use a beta distribution or a log-normal distribution to calculate the locations of the various data points.
  • the facility can also use distributions that do not resemble a standard bell curve, are bi-modal instead of uni-modal and/or have other characteristics.
  • the facility can also use different distributions for different work items. For example, the facility can use the normal distribution for one work item and the beta distribution for another work item.
  • the facility can use points other than the midpoint of the remaining work range to calculate the expected finish, such as any point in the remaining work range or even points outside of the remaining work range, depending on various factors.
  • the facility can also use other characteristics of the distribution used, such as the median or the mode, to calculate the expected finish.
  • the facility can also learn from its users to adjust the distribution used to better reflect how its users perform tasks.
  • a user may repeatedly specify that a particular task has a remaining work range of four to eight days. However, the user may repeatedly require seven days to complete the task. In that case, the facility may adjust the normal distribution for that user and/or for that particular task in order to calculate an expected finish date and other dates that better reflect how the user actually completes the task.
  • the facility calculates the locations of the second 615 a and fourth 625 a data points for T 1 according to the following method.
  • a desired confidence level is determined for T 1 .
  • a confidence level, or confidence interval represents the likelihood or probability that a particular work item will be completed during the period of time between the earliest expected finish date and the latest expected finish date.
  • the facility uses an 80% confidence level, which corresponds to 1.3 standard deviations from the mean of the normal distribution.
  • An 80% confidence level thus represents an 80% likelihood or probability that a particular work item will be completed during the time period represented by 1.3 standard deviations on either side of the mean.
  • Other confidence levels may be selected depending on the requirements of the facility operator or the user.
  • the facility calculates the standard deviation in the work remaining range for T 1 .
  • the standard deviation in the work remaining range is calculated according to the following equation:
  • H represents the upper limit of the work remaining range
  • L represents the lower limit of the work remaining range
  • C represents the desired confidence level (when expressed as a standard deviation).
  • the standard deviation in the work remaining range for a work item can be reduced by specifying a narrower work remaining range. For example, a work remaining range of “two to four days” will have a smaller standard deviation than a work remaining range of “two to eight days.”
  • the standard deviation in the work remaining range for T 1 is calculated as:
  • the facility calculates the standard deviation in the schedule for T 1 . Because T 1 is the first work item, this is done by taking the square root of the square of the standard deviation in the work remaining range for T 1 . More generally, however, the standard deviation in the schedule for a work item is calculated according to the following equation:
  • the standard deviation in the schedule for T 1 is also 2.31.
  • the facility multiplies the standard deviation in the schedule for T 1 by the same constant C that represents the desired confidence level to calculate the locations of the second 615 a and fourth 625 a data points.
  • C represents the desired confidence level
  • the second data point 615 a or earliest expected finish is located 3.0 days before the expected finish, at the end of day 2
  • the fourth data point 625 a is located 3.0 days after the expected finish, at the end of day 8 .
  • the second data point 615 a represents a 10% likelihood that the work item T 1 will be completed by that particular point in time.
  • the fourth data point 625 a represents a 90% likelihood that the work item T 1 will be completed by that particular point in time.
  • the facility can use a different confidence level, such as one that is asymmetrical about the mean of the normal distribution or has a different value (e.g., a 55% confidence level).
  • the location of the fifth data point 630 a is calculated by determining, according to the normal distribution, the point at which there is a 98% likelihood of the work item T 1 being completed. This can be calculated by multiplying the standard deviation in the schedule by the appropriate constant. However, it is to be understood that the facility can use other percentage likelihoods to determine the location of the fifth data point 630 a.
  • work item T 2 may be placed on the timeline.
  • the location of the third data point 620 b (the expected finish point) is determined by taking the remaining work range for T 2 , 2-4d, calculating the midpoint, 3d, and adding the midpoint to the expected finish date of T 1 , which is at the end of day 5 . Therefore the location of the third data point 620 b for T 2 is at the end of day 8 .
  • the locations of the first 610 b , second 615 b , fourth 625 b and fifth 630 b data points for T 2 are calculated in the same fashion that the locations of the corresponding data points for T 1 are calculated, with one exception.
  • the location of the first data point 610 b for T 2 is calculated by determining the earliest possible start date for T 2 . This is at the end of day 2 , as this is the earliest possible end date for T 1 .
  • the facility multiplies the standard deviation in the schedule for T 2 by the constant C that represents the desired confidence level for T 2 , giving a value of 3.16.
  • the facility calculates that the locations of the second 615 b and fourth 625 b data points are 3.16 days from the location of the third data point 620 b , or at 4.8 days and 8.2 days, respectively.
  • the location of the fifth data point 630 b for T 2 is calculated by determining, according to the normal distribution, the point at which there is a 98% likelihood of the work item T 2 being completed. This can be calculated by multiplying the standard deviation in the schedule by the appropriate constant. Work item T 2 may then be displayed on the timeline in an appropriate relationship with respect to work item T 1 .
  • the facility can use different confidence levels for work items. For example, the facility can use an 80% confidence level for one work item and a different confidence level, such as a 60% confidence level, for another work item. A smaller confidence level results in a narrower inner bar 609 . For example, an 80% confidence level has a wider inner bar 609 than a 50% confidence level has.
  • the confidence level may be selected by a user based on the particular type of work associated with a work item.
  • T 2 does not have a large standard deviation in its work remaining range due to its narrowness (2-4d)
  • the uncertainty bar for T 2 nonetheless displays a relatively large amount of uncertainty as to its expected finish dates. This is because the completion of T 2 is dependent upon the completion of T 1 , for which a large amount of uncertainty as to its expected finish dates exists due to the width of its work remaining range (2-8d). In other words, the uncertainty in T 1 affects the uncertainty in T 2 .
  • T 0 can represent a container, such as a project, under which tasks T 1 and T 2 are located.
  • T 0 also has five data points associated with it: 610 c , 615 c , 620 c , 625 c and 630 c , that represent the earliest start date, the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date, respectively.
  • the location of the first data point, 610 c is at the beginning of day 1 , because the beginning of day 1 is the earliest possible start of the tasks under T 0 .
  • the facility places the location of the second 615 c , third 620 c , fourth 625 c and fifth 630 c data points in the same locations as the second 615 b , third 620 b , fourth 625 b and fifth 630 b data points for T 2 .
  • the facility does so because T 2 is the last work item under T 0 . Therefore the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date for T 2 will be the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date for T 0 , respectively.
  • FIG. 6A only depicts two work items under work item T 0
  • any number of work items can be placed under work item T 0 .
  • the facility can thus calculate the various dates for all the work items under T 0 and generate uncertainty bars that display these various dates.
  • FIG. 6B depicts three work items: T 0 , T 1 and T 2 , and u-bars for each of the work items.
  • T 1 can represent a task
  • T 2 can represent a second task
  • T 0 can represent a container, such as a project, under which tasks T 1 and T 2 are located.
  • work items T 1 and T 2 are independent, i.e., one work item does not depend upon the completion of another before it can be started.
  • T 1 has a range 655 a of “2-8d” associated with it that corresponds to the remaining work to be done and T 2 similarly has a range 655 b of remaining work of “2-8d.”
  • Each of work items T 1 , T 2 has five data points associated with it, as reflected graphically by the u-bars.
  • T 0 has five data points associated with it: 660 a , 665 a , 670 a , 675 a and 680 a , that represent the earliest start date, the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date, respectively.
  • each of work items T 1 , T 2 has an associated probability density function that reflects the probability of when each work item should be finished.
  • the probability of a work item being completed at a particular point in time t can be determined by integrating the probability density function associated with the work item, as shown by the following equation:
  • P(x) is the associated probability density function (e.g., for a normal distribution) and P(t) is the probability of the work item being completed at a time t.
  • the probability of work items T 1 , T 2 being completed can thus be determined at any particular point in time in accordance with equation (8).
  • P 1 (t) is the probability density function associated with T 1 and P 2 (t) is the probability function associated with T 2 .
  • the probability of work item T 0 being completed at a particular point in time T is thus given by integrating the product of the probability density functions for T 1 and T 2 from 0 to T.
  • the facility thus is able to calculate the locations of the first 660 a , second 665 a , third 670 a , fourth 675 a and fifth 680 a data points for T 0 .
  • the first data point 660 a corresponds to the beginning of day 1 (because the beginning of day 1 is the earliest start date for either of work items T 1 and T 2 ); the second data point 665 a corresponds to the 10% likelihood of both work items T 1 and T 2 being completed; the third data point 670 a corresponds to the 50% likelihood of both work items T 1 and T 2 being completed; the fourth data point 675 a corresponds to the 90% likelihood of both work items T 1 and T 2 being completed; and the fifth data point 680 a corresponds to the 98% likelihood of both work items T 1 and T 2 being completed.
  • the expected finish date for the overall project T 0 occurs after the expected finish dates for the work items T 1 and T 2 . Such a result is not intuitive for most project managers that manage work items in parallel.
  • FIG. 6B only depicts two work items under work item T 0
  • any number of work items can be placed under work item T 0 .
  • the facility can thus calculate the various dates for all the work items under T 0 and generate uncertainty bars that display these various dates.
  • the facility can use distributions other than the normal distribution, varying confidence levels, and/or varying probability density functions to determine expected start and finish dates.
  • the facility can thus calculate statistically likely start and finish dates for work items, including spaces, projects, containers, and tasks. In so doing, the facility accounts for the uncertainty inherent in tasks. This allows the facility to account for the uncertainty inherent in the project to which tasks belong.
  • the facility can calculate amounts of remaining effort for a work item, based at least in part on the user-provided estimate. For example, the user can provide an estimate as to the effort remaining for a work item, such as “5 to 10 days.” The facility can use this estimate to calculate four amounts of remaining effort. The first amount is the expected minimum remaining effort and corresponds to the earliest expected finish date. The second amount is the expected remaining effort and corresponds to the expected finish date. The third amount is the maximum expected remaining effort and corresponds to the latest expected finish date. The fourth amount is the maximum remaining effort and corresponds to the latest finish date. The facility can then display the uncertainty in remaining effort for the work item in a u-bar that has five points to represent the earliest start and the four amounts of remaining effort.
  • FIG. 7 is a representative screenshot depicting another project management interface 700 that the facility may generate for display to a user.
  • the project management interface 700 includes a project schedule column 705 .
  • the work items column 415 b contains various work items, including work item 420 c , which is a project, work item 420 d , which is a container, and work items 420 e , 420 f and 420 g , all of which are tasks.
  • Each of the work items 420 in the work items column 415 b can have a corresponding u-bar 710 in the project schedule column 705 .
  • u-bar 710 f corresponds to work item 420 f
  • u-bar 710 d corresponds to work item 420 d
  • u-bar 710 c corresponds to work item 420 c .
  • the facility has not generated a u-bar for work item 420 e . This may occur if no user owns work item 420 e , or if the owner has not specified a work remaining range for work item 420 e . In such instances, the facility may notify appropriate users, such as by sending an email notification to a project manager or other user, that the work item lacks an owner or a work remaining range.
  • Each u-bar 710 in the project schedule column 705 displays the earliest start date, earliest expected finish date, expected finish date, latest expected finish date and the latest finish date as calculated by the facility for the corresponding work item 420 .
  • the facility can use the techniques described with references to FIGS. 6A and 6B to generate the u-bars 710 .
  • the facility begins at the top-most work item in the work items column 415 b and traverses downward until it has reached a work item that represents a task.
  • the facility calculates the expected start and finish dates for that work item.
  • the facility proceeds to the next work item that represents a task that is within the same container and calculates its expected start and finish dates.
  • the facility groups the tasks and treats them as if they were a single independent task for purposes of calculating the u-bars for parent work items.
  • the facility traverses downward through the work items column 415 b and calculates the expected start and finish dates for each task and groups dependent tasks until it has traversed to the bottom of the work items column 415 b .
  • the facility then calculates the expected start and finish dates for the work items that are parents of the task work items (e.g., containers, projects and spaces), beginning at the bottom of the work items column 415 b and proceeding upwards until it has reached the top-most work item.
  • the facility generates u-bars for each parent work item.
  • the u-bar for the top-most work item represents the earliest start date, earliest expected finish date, expected finish date, latest expected finish date and the latest finish date for the top-most work item and all work items that are contained within it or are children of it.
  • work item 420 c is the top-most work item and represents a project.
  • Corresponding u-bar 710 c represents the earliest start date, earliest expected finish date, expected finish date, latest expected finish date and the latest finish date for all work items within the work item 420 c , i.e., all work items in the entire project. It is to be understood that the facility may calculate the dates and generate the u-bars according to other algorithms, such as by beginning at the bottom-most work item and traversing upwards.
  • the project schedule region 705 also includes a marker 715 , shown as a diamond icon, that illustrates the use of a promise date for a work item.
  • a promise date can be a date by which the user has promised or agreed that the work item will be done.
  • a user has set a promise date for work item 420 g .
  • the marker 715 lies outside of the u-bar 710 g that corresponds to work item 420 g . This indicates that as calculated by the facility, work item 420 g is nearly certain (a probability of at least 98%) to be completed by the promise date indicated by marker 715 .
  • the use of promise dates in conjunction with the graphical schedule region may be used by project managers to assess the likelihood that a user making a promise will be able to meet that promise.
  • FIG. 8 depicts the interface of FIG. 7 illustrating the effect of a revised project schedule after a project edit.
  • the work item 420 e has been edited to reflect the assigned owner, shown as element 425 e , which is “bruce.”
  • the work item 420 e also has been edited to add a work remaining range (not shown).
  • the facility has generated a u-bar 805 for work item 420 e .
  • the effect of the edit has been to extend u-bars 710 c and 710 d , which correspond to work items of which the work item 420 e is an immediate or distant child. This is because adding the work remaining range for work item 420 e affects the expected start and finish dates for work items 410 c and 410 d .
  • the u-bars of other work items such as work items that are dependent upon work item 420 e , may also be similarly extended as the expected start and finish dates of these work items may have changed.
  • the expected start and finish dates for work items owned by a user can also change when a new work item is assigned to that user, which can change the user's workload, or when a work item is removed from that user's responsibility, which can also change the user's workload.
  • the facility can assume that work is being performed on the work items and calculate remaining work associated with the work item accordingly. For example, if a user specifies that the work remaining range for a work item is two to four days, the facility may assume that at the completion of day two, two days of work have been performed on the work item. In some embodiments, however, the facility may expressly require that users provide updated estimates regarding the work remaining to be done on work items.
  • FIG. 9 depicts the interface of FIG. 7 illustrating the effect of an edit to the work remaining range of a work item that could potentially cause the work item to miss its promise date.
  • the work remaining range of work item 420 g has been edited.
  • the facility has re-estimated at least the earliest expected finish date, expected finish date, latest expected finish date and latest finish date for work item 420 g , and generated a revised u-bar 710 g to reflect the changed estimates.
  • the work item 420 g has a later latest finish date, which extends the corresponding u-bar 710 g rightwards (i.e., forward in time).
  • U-bar 710 g now overlaps marker 715 , which represents the promise date for work item 420 g .
  • the facility can thus visually inform a user that there is a significant likelihood or probability that work item 420 g will not be completed by its promise date.
  • the facility may do so by highlighting or changing the color of work item 420 g and/or its u-bar 710 g .
  • the facility may also take steps to notify appropriate users, such as by sending an email notification to work item owners or project managers, that a work item may not be completed by its promise date.
  • the process 300 ends.
  • project data database 130 and log database 135 are indicated as being contained in a general data store 125 .
  • data store 125 may take a variety of forms, and the term “database” is used herein in the generic sense to refer to any data structure that allows data to be stored and accessed, such as tables, linked lists, arrays, etc.
  • the facility may be implemented in a variety of environments including a single, monolithic computer system, a distributed system, as well as various other combinations of computer systems or similar devices connected in various ways. Moreover, the facility may utilize third-party services and data to implement all or portions of the information functionality. Those skilled in the art will further appreciate that the steps shown in FIG. 3 may be altered in a variety of ways. For example, the order of the steps may be rearranged, substeps may be performed in parallel, steps may be omitted, or other steps may be included.

Abstract

A software and/or hardware facility for managing project schedules having inherent uncertainty. The facility allows users to create hierarchical data structures to model projects and other collective efforts. The hierarchical data structures contain work items that can represent tasks, collections of tasks and collections of collections and tasks. Each work item can have associated with it an estimate provided by a user, such as a ranged estimate of the amount of work remaining before the work item is completed. Based at least in part on the provided estimate, the facility can calculate expected start and finish dates for each work item. By calculating expected start and finish dates for all or most of the work items in a project, the facility is able to calculate an expected end date for the entire project. By basing the calculation on ranged estimates, the facility can account for the uncertainty inherent in projects.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • This application is related to co-pending U.S. patent application Ser. No. ______ (entitled SYSTEM AND METHOD FOR DISPLAYING INHERENT PROJECT UNCERTAINTY, Attorney Docket No. 63863.8002US00), filed concurrently herewith and incorporated herein in its entirety by reference.
  • BACKGROUND
  • In professional and in personal life, a project can range in size from the very small (e.g., a single person project) to the very large (e.g., a project involving hundreds of individuals or organizations). In order to ensure that projects are completed in a timely fashion, it is increasingly common for individuals and organizations to use project management software to manage projects, especially large ones.
  • One of the primary functions of existing project management software is to estimate a project's completion date and track progress against milestones. The prevalent method involves decomposing a project into smaller tasks (often referred to as a work breakdown structure or WBS). For each task in the WBS, a user typically specifies one of the following: (1) a start date and an end date, (2) the total effort required to complete the task, or (3) the total duration of the task. Tasks can be made dependent (i.e., one task cannot be started until another task is completed) or independent (i.e., two tasks can be worked on concurrently). One or more individuals is assigned to each task. A schedule for each task is determined based on the time required to complete the task and the task's dependencies. Project management software then determines a schedule for the entire project based on the schedules of its component tasks. In essence, existing project management software employs user-provided inputs regarding component tasks to determine the completion date of the entire project.
  • There are several flaws with the techniques used by existing project management software, however. A first flaw is that existing techniques rarely determine with any accuracy the completion date of a project. In order to determine a project's completion date, existing techniques assume that each component task's start date and end date is certain. For example, FIGS. 1A and 1B depict graphs 100 and 150 that illustrate task effort and schedule calculation in accordance with existing project management techniques. In FIG. 1A, a project P is composed of two tasks T1 and T2. A first task T1 has a total effort of five days, as represented by bar 105. A second task T2 is dependent upon task T1 and has a total effort of three days, as represented by bar 110. Existing project management techniques determine with 100% certainty that the completion date of project P is after eight days, i.e., after the sequential completion date of tasks T1 and T2 as represented by bar 115. In FIG. 1B, tasks T1 and T2, represented by bars 155 and 160 respectively, are independent tasks that both have a total effort of five days. The completion date of project P is thus after five days as represented by bar 165, i.e., the latest completion date of either of tasks T1 or T2. While project planning in accordance with the techniques depicted in FIGS. 1A and 1B makes intuitive sense, in the real world schedules typically slide. For example, the techniques depicted in FIGS. 1A and 1B fail to account for inherent uncertainty as to the start and completion dates of tasks. Because existing techniques fail to account for this uncertainty, they cannot determine with meaningful accuracy a project's end date.
  • A second flaw with the techniques employed by existing project management software is that it can be difficult to obtain status updates from individuals and/or organizations involved in a project. In the absence of updates, project plans produced by existing project management software become more and more inaccurate over time.
  • Accordingly, there is a need for project management systems and methods that are not susceptible to the aforementioned problems.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIGS. 1A and 1B illustrate task effort and project schedule determination in accordance with prior art techniques.
  • FIG. 2 is a block diagram that illustrates components of a project management facility.
  • FIG. 3 is a flow diagram of a process for editing a project and calculating a project schedule.
  • FIG. 4 is a representative screenshot depicting a project management interface.
  • FIG. 5 is a representative screenshot depicting an interface for editing a project work item.
  • FIGS. 6A and 6B illustrate task effort and project schedule calculation in accordance with some embodiments of the project management facility.
  • FIG. 7 is a representative screenshot depicting another project management interface.
  • FIG. 8 depicts the interface of FIG. 7 illustrating the effect of a revised project schedule.
  • FIG. 9 depicts the interface of FIG. 7 illustrating a work item promise date.
  • DETAILED DESCRIPTION
  • A software and/or hardware facility for managing project schedules having inherent uncertainty is disclosed. In some embodiments, the facility allows users to create hierarchical data structures to model projects and other collective efforts. The hierarchical data structures contain work items that can represent tasks, collections of tasks and collections of collections and tasks. Each work item can have associated with it an estimate provided by a user, such as a ranged estimate of the amount of work remaining before the work item is completed. Based at least in part on the provided estimate, the facility can calculate expected start and finish dates for each work item. The facility calculates expected start and finish dates for work items that represent collections of tasks and collections of collections and tasks. By calculating the dates for all or most of the work items in a project, the facility is thereby able to calculate an expected end date for the entire project. By calculating expected start and finish dates based on ranged estimates, the facility can account for the uncertainty inherent in projects.
  • In some embodiments, the facility generates project schedules for display to users that express the uncertainty inherent in projects and component work items. The facility may generate a visual indication of a work item's earliest start date, earliest expected finish date, expected finish date, latest expected finish date and latest finish date. One form that the visual indication can take will be referred to as an “uncertainty bar,” or “u-bar”. A u-bar can be generated for each work item that represents a task, as well as each work item that represents collections of tasks and collections of collections and tasks. The facility can also generate a u-bar for an entire project. The facility can thus visually display the uncertainty inherent in projects.
  • Various embodiments of the invention will now be described. The following description provides specific details for a thorough understanding and an enabling description of these embodiments. One skilled in the art will understand, however, that the invention may be practiced without many of these details. Additionally, some well-known structures or functions may not be shown or described in detail, so as to avoid unnecessarily obscuring the relevant description of the various embodiments. The terminology used in the description presented below is intended to be interpreted in its broadest reasonable manner, even though it is being used in conjunction with a detailed description of certain specific embodiments of the invention.
  • FIG. 2 is a block diagram illustrating components of a project management facility 200 (“the facility”). Users 255 interact with the facility via a network 250, such as the Internet. Users may be actual human users, such as members of a project or organization, computer programs, or other entities. The facility allows users to build and manage project schedules having uncertainty in tasks associated with the project. The facility has various components to allow users to manage projects. These components include an authentication component 205, a presentation component 210, a calculation and scheduling component 220 and a data store 225. The authentication component 205 authenticates the user 255 and grants the user 255 access to the facility. The presentation component 210 presents a user interface to the user 255 and receives user requests and responses. The calculation and scheduling component 220 performs statistical calculations to predict likely completion dates for project tasks and projects and calculate likely project schedules. The facility can include other components that perform other functions. The various components of the facility can retrieve and store data related to their functioning in the data store 225, which includes a project data database 230 and a log database 235.
  • FIG. 3 is a flow diagram of a process 300 implemented by the facility to allow a user to edit a project and to calculate the project's schedule based on data entered by the user. At block 305 the facility generates an authentication interface for display to a user. Those skilled in the art will appreciate that the user can be authenticated in a variety of ways, such as a username and password combination, a digital certificate, or a biometric identifier. At block 310 the facility receives the submission of credentials from the user. The facility determines whether the user credentials are valid at block 315. If they are not valid, the process 300 returns to block 305 where the authentication interface is again generated for display to the user. If the user credentials are valid the process 300 continues at block 320 where the facility generates a project management interface for display to the user.
  • FIG. 4 is a block diagram of a representative project management interface 400 that the facility may generate. The project management interface 400 allows a user to view, create, modify, administer and/or delete projects, project tasks and various attributes thereof. The project management interface 400 has several tabs 405 a, 405 b, . . . 405 i for displaying various project management aspects. As illustrated the tab 405 a, labeled “estimates,” is currently active. The project management interface 400 can also have various controls 410 that enable viewing, creating, modifying, administering and/or deleting projects, project tasks and various attributes thereof. The project management interface 400 includes various columns that can each represent one or more aspects of project management. For example, column 415 b contains a listing of work items, arranged in a hierarchical structure. Work items can include spaces, such as space 420 a. A space can be used to represent a user's work space, such as all the projects in which the user is involved. Work items can also include projects, such as projects 420 b and 420 c. Projects can represent a project or other effort by zero or more users. Projects can include one or more containers, such as container 420 d and container 420 h. Containers can represent logical groupings or collections of zero or more tasks and/or containers. Containers can include tasks and/or other containers, such as tasks 420 e, 420 f and 420 g and container 420 h. A task can represent an actual task, job or assignment by zero or more users. Work items can also include logical representations of other aspects of project management that are not shown in FIG. 4.
  • Each of the various work items (space, project, container, or task) can have various attributes associated with it. The project management interface 400 displays certain of these attributes in the other columns. Column 415 a can display a visually informative icon or flag associated with a work item. Such icon may represent, for example, when the associated work item is complete. Each work item can have zero or more owners, which are displayed in column 415 c. For example, work items 420 c and 420 d have as an owner elements 425 c and 425 d, respectively, both of which are “bruce.” Work item 420 e does not currently have an owner, shown as element 425 e, which is “unassigned.” A work item can also have associated with it a “total done” attribute representing a quantity of work performed on the work item. This attribute is shown in the “total done” column 415 d, which includes “total done” amounts 430 c and 430 d, which are “5.0d” and “2.0d,” respectively. A work item can also have associated with it a “remaining work” attribute representing a quantity of work remaining to be performed on the work item. This attribute is shown in column 415 e. “Remaining work” can be expressed as a range, such as “36.2d-85.5d,” “29.0d-67.0d” and “3.0d-6.0d,” as depicted in elements 435 c, 435 d and 435 e. “Remaining work” can also be expressed as a single time period, such as “5.0d,” as a series of time periods with a confidence level of each period, such as “10% in 5.0d, 70% in 6.0d, or 20% in 7.0d,” as a total amount of work and percentage or work remaining (e.g., 40% of 7 total days of effort remaining), or in a variety of other ways. Both “total done” and “remaining work” attributes are shown expressed in days (i.e., “5.0d” equals “5.0 days”). However, these and other attributes can be expressed in other time periods, including seconds, minutes, hours, weeks, months and/or years. The project management interface 400 can display “remaining work” as anticipatory (i.e., the work remaining to be done in the future from this point forward), or as calculated from a particular point in time.
  • The project management interface 400 displays in column 415 f an “expected on” attribute, which corresponds to the calculated expected finish date for a work item. For example, work item 420 c has an “expected on” date 440 c of “Aug. 21, 2007.” Similarly, work item 420 d has an “expected on” date 440 d of “Aug. 17, 2007” and work item 420 e has an “expected on” date 440 e of “Aug. 6, 2007.” For some projects, the “expected on” date may include a time of completion (e.g., 5 pm) in addition to a date. The calculation of a work item's “expected on” date will be discussed with reference to FIGS. 6A and 6B and elsewhere herein. The project management interface 400 displays attributes corresponding to a work item's promise date and status in columns 415 g and 415 h. The promise date can be a date by which the user has promised or agreed that the work item will be done. The status can be an indication of the current status, condition or standing of the work item according to a project metric or other standard.
  • In some embodiments, instead of allowing users to specify a “work remaining” range for a work item in terms of units of time, the facility can allow users to specify estimates in other formats. These can include a range of an amount of money, budget percentages, total effort, and/or other work item inputs. For example, the facility can allow a user to specify that the completion of a work item is likely to cost from about $2,000 to about $5,000. As another example, the facility can allow a user to specify that the amount of effort required to complete work item is equal to six on a scale of one to ten. The facility can also allow a user to specify an express confidence level or confidence factor when providing a ranged estimate. For example, the facility can allow a user to specify that the user is 20% confident of being able to complete a work item in two days, and 90% confident of being able to complete a work item in four days. The facility can also allow a user to specify an estimate for one work item in one format and an estimate for a second work item in a different format. These examples are not limiting and those of skill in the art will understand that the facility can allow users to provide estimates in a variety of formats.
  • Returning to FIG. 3, at block 325 the facility receives a submission indicating a desire of the user to edit the project in some way. Editing can refer to a variety of actions by the user, including, but not limited to, viewing a work item in greater detail, creating a new work item, modifying an aspect of a work item or deleting a work item. At block 330 the facility generates a project editing interface for display to the user. FIG. 5 is a representative screenshot depicting an interface 500 for editing a work item, which can include a modal or modeless window 505. As depicted, the facility has displayed the window 505 in response to the submission of an indication of the user's desire to edit work item 420 e. The window 505 allows the user to edit various aspects of work item 420 e. In text box 510 the user can modify the name of the work item. The user can modify the owner of a work item via combo box 515, which can include a listing of users involved in the project, in an organization, or in a particular group. As displayed, the work remaining for a work item can be modified by changing the low end 520 a and the high end 520 b of a range of time. The quantity of work done for a work item can also be modified in text box 525. A promise date can be modified in text box 530 and a description of the work item can be modified in text box 535. A user can save the edits by clicking on button 540 or cancel the edits by clicking on button 545.
  • Returning again to FIG. 3, at block 335 the facility receives a submission of an edit of the project from the user, such as by the user's clicking on button 540 of FIG. 5. At block 340 the facility performs statistical calculations for any work items that have been edited as well as any dependent work items.
  • FIGS. 6A and 6B illustrate work item task effort and project schedule calculation performed by the facility. FIG. 6A depicts three work items T0, T1 and T2. In this display, T1 can represent a task, T2 can represent a second task, and T0 can represent a container, such as a project, under which tasks T1 and T2 are located. T2 is dependent upon T1, i.e., T2 cannot be started before T1 is completed. T1 has a range 605 a of “2-8d” associated with it that corresponds to a ranged estimate of two to eight days of work remaining to be done on the work item. T2 has a range 605 b of “2-4d” that corresponds to a ranged estimate of two to four days of work remaining to be done on the work item.
  • Each of work items T0, T1, and T2 is graphically represented by an outer bar and an inner bar, collectively called a u-bar. For example, work item T1 is represented by outer bar 607 a that contains inner bar 609 a. Each work item has five points representing start or finish dates associated with it. In the case of T1, the first point 610 a is located at the left-most position of the outer bar 607 a and represents the earliest start date of the work item. The second point 615 a is located at the left-most position of the inner bar 609 a and represents the earliest expected finish date of the work item. The third point 620 a is located at an intermediate section of the inner bar 609 a and represents the expected finish date of the work item. The fourth point 625 a is located at the right-most position of the inner bar 609 a and represents the latest expected finish date of the work item. The fifth point 630 a is located at the right-most position of the outer bar 609 a and represents the latest finish date of the work item. Similarly, T2 has five points 610 b, 615 b, 620 b, 625 b, and 630 b representing start and finish dates associated with it, as does T0: 610 c, 615 c, 620 c, 625 c and 630 c.
  • The work items T0, T1 and T2 may be placed on a timeline 635 representing elapsed time since the start of the project. Work item T1 is the first work item and has no dependencies, so the first point 610 a is located at the beginning of day 1. This is because the beginning of day 1 is the earliest possible start of T1. The facility determines the location of the second 615 a, third 620 a, fourth 625 a and fifth 630 a data points for T1 in accordance with values predicted by a statistical model. In some embodiments, the statistical model used by the facility is a normal distribution. Beginning with the third data point 620 a, which can be shown by a capital “E” to represent the expected finish, it is located at the midpoint of the remaining work range for T1. This is because the midpoint of the remaining work range for T1 is the mean of a normal distribution. For T1, the remaining work range 605 a is “2-8d,” the midpoint of which is 5d, and thus the third data point 620 a is placed at the end of day 5. The expected finish date calculated by the facility is what is shown in the “expected on” column 415 f discussed with reference to FIG. 4. In some embodiments, the facility can use distributions other than the normal distribution to calculate the locations of the various data points. For example, the facility can use a beta distribution or a log-normal distribution to calculate the locations of the various data points. The facility can also use distributions that do not resemble a standard bell curve, are bi-modal instead of uni-modal and/or have other characteristics. The facility can also use different distributions for different work items. For example, the facility can use the normal distribution for one work item and the beta distribution for another work item. The facility can use points other than the midpoint of the remaining work range to calculate the expected finish, such as any point in the remaining work range or even points outside of the remaining work range, depending on various factors. The facility can also use other characteristics of the distribution used, such as the median or the mode, to calculate the expected finish. The facility can also learn from its users to adjust the distribution used to better reflect how its users perform tasks. For example, a user may repeatedly specify that a particular task has a remaining work range of four to eight days. However, the user may repeatedly require seven days to complete the task. In that case, the facility may adjust the normal distribution for that user and/or for that particular task in order to calculate an expected finish date and other dates that better reflect how the user actually completes the task.
  • The facility calculates the locations of the second 615 a and fourth 625 a data points for T1 according to the following method. First, a desired confidence level is determined for T1. A confidence level, or confidence interval, represents the likelihood or probability that a particular work item will be completed during the period of time between the earliest expected finish date and the latest expected finish date. In some embodiments, the facility uses an 80% confidence level, which corresponds to 1.3 standard deviations from the mean of the normal distribution. An 80% confidence level thus represents an 80% likelihood or probability that a particular work item will be completed during the time period represented by 1.3 standard deviations on either side of the mean. Other confidence levels may be selected depending on the requirements of the facility operator or the user.
  • Second, the facility calculates the standard deviation in the work remaining range for T1. The standard deviation in the work remaining range is calculated according to the following equation:
  • σ E = H - L 2 × C ( 1 )
  • In equation (1), H represents the upper limit of the work remaining range, L represents the lower limit of the work remaining range, and C represents the desired confidence level (when expressed as a standard deviation). The standard deviation in the work remaining range for a work item can be reduced by specifying a narrower work remaining range. For example, a work remaining range of “two to four days” will have a smaller standard deviation than a work remaining range of “two to eight days.”
  • For T1, the upper limit of the work remaining range is 8 days and the lower limit of the work remaining range is 2 days, and for an 80% confidence level, C is 1.3. Therefore, the standard deviation in the work remaining range for T1 is calculated as:
  • σ E 1 = 8 - 2 2 × 1.3 = 2.31 ( 2 )
  • Third, the facility calculates the standard deviation in the schedule for T1. Because T1 is the first work item, this is done by taking the square root of the square of the standard deviation in the work remaining range for T1. More generally, however, the standard deviation in the schedule for a work item is calculated according to the following equation:

  • σS n =√{square root over (σS n-1 2E n 2)}  (3)
  • For the first work item T1, n=1 and σS n-1 2 resolves to 0, therefore the standard deviation in the schedule for T1 is:

  • σS 1 =√{square root over (0+2.312)}=2.31  (4)
  • Therefore, the standard deviation in the schedule for T1, is also 2.31.
  • Fourth, the facility multiplies the standard deviation in the schedule for T1 by the same constant C that represents the desired confidence level to calculate the locations of the second 615 a and fourth 625 a data points. Thus these locations, corresponding to an 80% confidence level, are given by:

  • σS n ×C=2.31×1.3=3.0  (5)
  • Therefore the second data point 615 a, or earliest expected finish is located 3.0 days before the expected finish, at the end of day 2, and the fourth data point 625 a, or latest expected finish, is located 3.0 days after the expected finish, at the end of day 8. The second data point 615 a represents a 10% likelihood that the work item T1 will be completed by that particular point in time. The fourth data point 625 a represents a 90% likelihood that the work item T1 will be completed by that particular point in time. Instead of using an 80% confidence level, the facility can use a different confidence level, such as one that is asymmetrical about the mean of the normal distribution or has a different value (e.g., a 55% confidence level). The location of the fifth data point 630 a is calculated by determining, according to the normal distribution, the point at which there is a 98% likelihood of the work item T1 being completed. This can be calculated by multiplying the standard deviation in the schedule by the appropriate constant. However, it is to be understood that the facility can use other percentage likelihoods to determine the location of the fifth data point 630 a.
  • Once the various data points are calculated for work item T1, work item T2 may be placed on the timeline. For T2, the location of the third data point 620 b (the expected finish point) is determined by taking the remaining work range for T2, 2-4d, calculating the midpoint, 3d, and adding the midpoint to the expected finish date of T1, which is at the end of day 5. Therefore the location of the third data point 620 b for T2 is at the end of day 8. The locations of the first 610 b, second 615 b, fourth 625 b and fifth 630 b data points for T2 are calculated in the same fashion that the locations of the corresponding data points for T1 are calculated, with one exception. Because T2 cannot be started until T1 is completed, the location of the first data point 610 b for T2 is calculated by determining the earliest possible start date for T2. This is at the end of day 2, as this is the earliest possible end date for T1.
  • The standard deviation in the work remaining range for T2 is thus calculated as:
  • σ E 2 = 4 - 2 2 × 1.3 = 0.77 ( 6 )
  • The standard deviation in the schedule for T2 is thus calculated as:

  • σS 2 =√{square root over (σS 2 2E 2 2)}=√{square root over (2.312+0.772)}=2.43  (7)
  • The facility multiplies the standard deviation in the schedule for T2 by the constant C that represents the desired confidence level for T2, giving a value of 3.16. Thus the facility calculates that the locations of the second 615 b and fourth 625 b data points are 3.16 days from the location of the third data point 620 b, or at 4.8 days and 8.2 days, respectively. The location of the fifth data point 630 b for T2 is calculated by determining, according to the normal distribution, the point at which there is a 98% likelihood of the work item T2 being completed. This can be calculated by multiplying the standard deviation in the schedule by the appropriate constant. Work item T2 may then be displayed on the timeline in an appropriate relationship with respect to work item T1.
  • In some embodiments, the facility can use different confidence levels for work items. For example, the facility can use an 80% confidence level for one work item and a different confidence level, such as a 60% confidence level, for another work item. A smaller confidence level results in a narrower inner bar 609. For example, an 80% confidence level has a wider inner bar 609 than a 50% confidence level has. The confidence level may be selected by a user based on the particular type of work associated with a work item.
  • It is to be noted that although T2 does not have a large standard deviation in its work remaining range due to its narrowness (2-4d), the uncertainty bar for T2 nonetheless displays a relatively large amount of uncertainty as to its expected finish dates. This is because the completion of T2 is dependent upon the completion of T1, for which a large amount of uncertainty as to its expected finish dates exists due to the width of its work remaining range (2-8d). In other words, the uncertainty in T1 affects the uncertainty in T2.
  • As previously noted, T0 can represent a container, such as a project, under which tasks T1 and T2 are located. T0 also has five data points associated with it: 610 c, 615 c, 620 c, 625 c and 630 c, that represent the earliest start date, the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date, respectively. The location of the first data point, 610 c, is at the beginning of day 1, because the beginning of day 1 is the earliest possible start of the tasks under T0. The facility places the location of the second 615 c, third 620 c, fourth 625 c and fifth 630 c data points in the same locations as the second 615 b, third 620 b, fourth 625 b and fifth 630 b data points for T2. The facility does so because T2 is the last work item under T0. Therefore the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date for T2 will be the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date for T0, respectively.
  • Although for purposes of illustration, FIG. 6A only depicts two work items under work item T0, any number of work items can be placed under work item T0. The facility can thus calculate the various dates for all the work items under T0 and generate uncertainty bars that display these various dates.
  • Similar to FIG. 6A, FIG. 6B depicts three work items: T0, T1 and T2, and u-bars for each of the work items. In this display, T1 can represent a task, T2 can represent a second task, and T0 can represent a container, such as a project, under which tasks T1 and T2 are located. In FIG. 6B, work items T1 and T2 are independent, i.e., one work item does not depend upon the completion of another before it can be started. T1 has a range 655 a of “2-8d” associated with it that corresponds to the remaining work to be done and T2 similarly has a range 655 b of remaining work of “2-8d.” Each of work items T1, T2 has five data points associated with it, as reflected graphically by the u-bars. T0 has five data points associated with it: 660 a, 665 a, 670 a, 675 a and 680 a, that represent the earliest start date, the earliest expected finish date, the expected finish date, the latest expected finish date and the latest finish date, respectively.
  • As previously noted, the expected finish dates of work items T1, T2 can be modeled by a normal distribution. Therefore, each of work items T1, T2 has an associated probability density function that reflects the probability of when each work item should be finished. The probability of a work item being completed at a particular point in time t can be determined by integrating the probability density function associated with the work item, as shown by the following equation:
  • P ( t ) = - t P ( x ) x ( 8 )
  • In equation (8), P(x) is the associated probability density function (e.g., for a normal distribution) and P(t) is the probability of the work item being completed at a time t. The probability of work items T1, T2 being completed can thus be determined at any particular point in time in accordance with equation (8).
  • For work item T0, the probability of it being completed at a particular point in time can be calculated according to the following equation:
  • P ( T ) = 0 T P 1 ( t ) · P 2 ( t ) t ( 9 )
  • In equation (9), P1(t) is the probability density function associated with T1 and P2(t) is the probability function associated with T2. The probability of work item T0 being completed at a particular point in time T is thus given by integrating the product of the probability density functions for T1 and T2 from 0 to T. The facility thus is able to calculate the locations of the first 660 a, second 665 a, third 670 a, fourth 675 a and fifth 680 a data points for T0. The first data point 660 a corresponds to the beginning of day 1 (because the beginning of day 1 is the earliest start date for either of work items T1 and T2); the second data point 665 a corresponds to the 10% likelihood of both work items T1 and T2 being completed; the third data point 670 a corresponds to the 50% likelihood of both work items T1 and T2 being completed; the fourth data point 675 a corresponds to the 90% likelihood of both work items T1 and T2 being completed; and the fifth data point 680 a corresponds to the 98% likelihood of both work items T1 and T2 being completed. As reflected in FIG. 6B, the expected finish date for the overall project T0 occurs after the expected finish dates for the work items T1 and T2. Such a result is not intuitive for most project managers that manage work items in parallel.
  • Although for purposes of illustration, FIG. 6B only depicts two work items under work item T0, any number of work items can be placed under work item T0. The facility can thus calculate the various dates for all the work items under T0 and generate uncertainty bars that display these various dates.
  • As previously noted, the facility can use distributions other than the normal distribution, varying confidence levels, and/or varying probability density functions to determine expected start and finish dates. The facility can thus calculate statistically likely start and finish dates for work items, including spaces, projects, containers, and tasks. In so doing, the facility accounts for the uncertainty inherent in tasks. This allows the facility to account for the uncertainty inherent in the project to which tasks belong.
  • In some embodiments, instead of calculating dates for a work item, the facility can calculate amounts of remaining effort for a work item, based at least in part on the user-provided estimate. For example, the user can provide an estimate as to the effort remaining for a work item, such as “5 to 10 days.” The facility can use this estimate to calculate four amounts of remaining effort. The first amount is the expected minimum remaining effort and corresponds to the earliest expected finish date. The second amount is the expected remaining effort and corresponds to the expected finish date. The third amount is the maximum expected remaining effort and corresponds to the latest expected finish date. The fourth amount is the maximum remaining effort and corresponds to the latest finish date. The facility can then display the uncertainty in remaining effort for the work item in a u-bar that has five points to represent the earliest start and the four amounts of remaining effort.
  • Again returning to FIG. 3, at block 345 the facility calculates a project schedule and at block 350 the facility generates an updated project schedule for display to the user. FIG. 7 is a representative screenshot depicting another project management interface 700 that the facility may generate for display to a user. The project management interface 700 includes a project schedule column 705. As previously discussed with reference to FIG. 4, the work items column 415 b contains various work items, including work item 420 c, which is a project, work item 420 d, which is a container, and work items 420 e, 420 f and 420 g, all of which are tasks. Each of the work items 420 in the work items column 415 b can have a corresponding u-bar 710 in the project schedule column 705. For example, u-bar 710 f corresponds to work item 420 f; u-bar 710 d corresponds to work item 420 d, and u-bar 710 c corresponds to work item 420 c. The facility has not generated a u-bar for work item 420 e. This may occur if no user owns work item 420 e, or if the owner has not specified a work remaining range for work item 420 e. In such instances, the facility may notify appropriate users, such as by sending an email notification to a project manager or other user, that the work item lacks an owner or a work remaining range.
  • Each u-bar 710 in the project schedule column 705 displays the earliest start date, earliest expected finish date, expected finish date, latest expected finish date and the latest finish date as calculated by the facility for the corresponding work item 420. The facility can use the techniques described with references to FIGS. 6A and 6B to generate the u-bars 710. In generating u-bars, the facility begins at the top-most work item in the work items column 415 b and traverses downward until it has reached a work item that represents a task. The facility then calculates the expected start and finish dates for that work item. The facility then proceeds to the next work item that represents a task that is within the same container and calculates its expected start and finish dates. If the tasks are dependent, the facility groups the tasks and treats them as if they were a single independent task for purposes of calculating the u-bars for parent work items. The facility traverses downward through the work items column 415 b and calculates the expected start and finish dates for each task and groups dependent tasks until it has traversed to the bottom of the work items column 415 b. The facility then calculates the expected start and finish dates for the work items that are parents of the task work items (e.g., containers, projects and spaces), beginning at the bottom of the work items column 415 b and proceeding upwards until it has reached the top-most work item. The facility generates u-bars for each parent work item. The u-bar for the top-most work item represents the earliest start date, earliest expected finish date, expected finish date, latest expected finish date and the latest finish date for the top-most work item and all work items that are contained within it or are children of it. In the interface 700 depicted, work item 420 c is the top-most work item and represents a project. Corresponding u-bar 710 c represents the earliest start date, earliest expected finish date, expected finish date, latest expected finish date and the latest finish date for all work items within the work item 420 c, i.e., all work items in the entire project. It is to be understood that the facility may calculate the dates and generate the u-bars according to other algorithms, such as by beginning at the bottom-most work item and traversing upwards.
  • The project schedule region 705 also includes a marker 715, shown as a diamond icon, that illustrates the use of a promise date for a work item. Referring back to FIG. 5, a user can enter a promise date when adding or modifying a work item. A promise date can be a date by which the user has promised or agreed that the work item will be done. As depicted, a user has set a promise date for work item 420 g. The marker 715 lies outside of the u-bar 710 g that corresponds to work item 420 g. This indicates that as calculated by the facility, work item 420 g is nearly certain (a probability of at least 98%) to be completed by the promise date indicated by marker 715. The use of promise dates in conjunction with the graphical schedule region may be used by project managers to assess the likelihood that a user making a promise will be able to meet that promise.
  • Returning again to FIG. 3, after having generated a revised project schedule for display to the user at block 350, the process continues at block 355 where the facility determines whether the facility received further submissions of a user's desire to edit the project. If so, the process returns to block 330. FIG. 8 depicts the interface of FIG. 7 illustrating the effect of a revised project schedule after a project edit. As illustrated, the work item 420 e has been edited to reflect the assigned owner, shown as element 425 e, which is “bruce.” The work item 420 e also has been edited to add a work remaining range (not shown). The facility has generated a u-bar 805 for work item 420 e. The effect of the edit has been to extend u-bars 710 c and 710 d, which correspond to work items of which the work item 420 e is an immediate or distant child. This is because adding the work remaining range for work item 420 e affects the expected start and finish dates for work items 410 c and 410 d. The u-bars of other work items, such as work items that are dependent upon work item 420 e, may also be similarly extended as the expected start and finish dates of these work items may have changed. The expected start and finish dates for work items owned by a user can also change when a new work item is assigned to that user, which can change the user's workload, or when a work item is removed from that user's responsibility, which can also change the user's workload.
  • In some embodiments, if the facility does not receive updates from users regarding the amount of work remaining for work items, the facility can assume that work is being performed on the work items and calculate remaining work associated with the work item accordingly. For example, if a user specifies that the work remaining range for a work item is two to four days, the facility may assume that at the completion of day two, two days of work have been performed on the work item. In some embodiments, however, the facility may expressly require that users provide updated estimates regarding the work remaining to be done on work items.
  • FIG. 9 depicts the interface of FIG. 7 illustrating the effect of an edit to the work remaining range of a work item that could potentially cause the work item to miss its promise date. As illustrated, the work remaining range of work item 420 g has been edited. The facility has re-estimated at least the earliest expected finish date, expected finish date, latest expected finish date and latest finish date for work item 420 g, and generated a revised u-bar 710 g to reflect the changed estimates. As illustrated, the work item 420 g has a later latest finish date, which extends the corresponding u-bar 710 g rightwards (i.e., forward in time). U-bar 710 g now overlaps marker 715, which represents the promise date for work item 420 g. The facility can thus visually inform a user that there is a significant likelihood or probability that work item 420 g will not be completed by its promise date. The facility may do so by highlighting or changing the color of work item 420 g and/or its u-bar 710 g. The facility may also take steps to notify appropriate users, such as by sending an email notification to work item owners or project managers, that a work item may not be completed by its promise date.
  • Again returning to FIG. 3, if the facility determines that the user does not further desire to edit the project, the process 300 ends.
  • While various embodiments are described in terms of the environment described above, those skilled in the art will appreciate that various changes to the facility may be made without departing from the scope of the invention. For example, project data database 130 and log database 135 are indicated as being contained in a general data store 125. Those skilled in the art will appreciate that the actual implementation of the data store 125 may take a variety of forms, and the term “database” is used herein in the generic sense to refer to any data structure that allows data to be stored and accessed, such as tables, linked lists, arrays, etc.
  • Those skilled in the art will also appreciate that the facility may be implemented in a variety of environments including a single, monolithic computer system, a distributed system, as well as various other combinations of computer systems or similar devices connected in various ways. Moreover, the facility may utilize third-party services and data to implement all or portions of the information functionality. Those skilled in the art will further appreciate that the steps shown in FIG. 3 may be altered in a variety of ways. For example, the order of the steps may be rearranged, substeps may be performed in parallel, steps may be omitted, or other steps may be included.
  • From the foregoing, it will be appreciated that specific embodiments of the invention have been described herein for purposes of illustration, but that various modifications may be made without deviating from the spirit and scope of the invention. Accordingly, the invention is not limited except as by the appended claims.

Claims (45)

1. A method of calculating a schedule for a project comprised of a plurality of tasks, the method comprising:
receiving from a user a definition for at least some of a plurality of tasks comprising a project, the received definition for a task comprising a task identifier, a relationship to at least one other of the plurality of tasks, and a range of work associated with the task;
applying a statistical model to estimate an expected task completion date for each of the plurality of tasks having a definition, wherein the statistical model is applied to the range of work associated with a task and the expected task completion date reflects a date by which the associated task will likely be completed; and
utilizing the expected task completion date for each of the plurality of tasks having a definition to calculate a schedule for the project.
2. The method of claim 1, wherein the statistical model is a normal distribution.
3. The method of claim 2, wherein the normal distribution has a mean and the calculation of the expected task completion date is based at least in part on the mean of the normal distribution.
4. The method of claim 1, further comprising calculating an earliest expected finish and a latest expected finish for each of the plurality of tasks using the statistical model.
5. The method of claim 4 wherein the earliest expected finish and the latest expected finish represent an 80% confidence level.
6. The method of claim 4, wherein the statistical model is a normal distribution and the calculation of the earliest expected finish and the latest expected finish is based at least in part on values given by 1.3 standard deviations from the mean of the normal distribution.
7. The method of claim 1, wherein the range of work is specified by an amount of time estimated to complete the task.
8. The method of claim 1, wherein the range of work is specified by an amount of money estimated to complete the task.
9. The method of claim 1, wherein the range of work is specified by an indication of effort estimated to complete the task.
10. The method of claim 1, wherein the range of work further includes a confidence factor.
11. The method of claim 1, further comprising calculating an expected finish for the project, wherein the expected finish for the project depends at least in part on the expected task completion dates of the plurality of tasks comprising the project.
12. The method of claim 1, further comprising:
receiving an updated range of work from the user regarding a task; and
applying the statistical model to estimate the expected task completion date for the task based on the updated range of work.
13. The method of claim 12, further comprising using the updated estimate of the expected task completion date to revise the schedule for the project.
14. The method of claim 1, wherein a relationship between two tasks is the tasks are performed in parallel.
15. The method of claim 1, wherein a relationship between two tasks is the tasks are performed in series.
16. The method of claim 1, wherein a relationship between two tasks is determined by a time associated with each task.
17. The method of claim 1, wherein a relationship between two tasks is determined by an order associated with each task.
18. The method of claim 1, wherein at least two of the plurality of tasks are assigned to an individual, and a relationship between the two tasks is determined by the workload of the individual.
19. The method of claim 1, wherein the range of work includes a low estimate and a high estimate of the work associated with the task.
20. The method of claim 1, wherein the statistical model is one of a normal distribution, a beta distribution, or a log-normal distribution.
21. The method of claim 20, wherein different statistical models are applied to estimate an expected task completion date for at least two of the plurality of tasks having a definition.
22. A system for managing a schedule of a project comprised of a plurality of tasks, the system comprising:
in input module for receiving from a user a definition for at least some of a plurality of tasks comprising a project, the received definition for a task comprising a task identifier, a relationship to at least one other of the plurality of tasks, and a range of work associated with the task;
a task estimation module for applying a statistical model to estimate an expected task completion date for each of the plurality of tasks having a definition, wherein the statistical model is applied to the range of work associated with a task and the expected task completion date reflects a date by which the associated task will likely be completed;
a project estimation module for utilizing the expected task completion date for each of the plurality of tasks having a definition to calculate a schedule for the project; and
a presentation module for displaying the schedule for the project to the user in a manner that depicts at least some of the relationships between the plurality of tasks comprising the project.
23. The system of claim 22, wherein the statistical model is a normal distribution.
24. The system of claim 23, wherein the normal distribution has a mean and the calculation of the expected task completion date is based at least in part on the mean of the normal distribution.
25. The system of claim 22, wherein the task estimation module further calculates an earliest expected finish and a latest expected finish for each of the plurality of tasks using the statistical model.
26. The system of claim 25 wherein the earliest expected finish and the latest expected finish represent an 80% confidence level.
27. The system of claim 25, wherein the statistical model is a normal distribution and the calculation of the earliest expected finish and the latest expected finish is based at least in part on values given by 1.3 standard deviations from the mean of the normal distribution.
28. The system of claim 22, wherein the range of work is specified by an amount of time estimated to complete the task.
29. The system of claim 22, wherein the range of work is specified by an amount of money estimated to complete the task.
30. The system of claim 22, wherein the range of work is specified by an indication of effort estimated to complete the task.
31. The system of claim 22, wherein the range of work further includes a confidence factor.
32. The system of claim 22, wherein the project estimation module further calculates an expected finish for the project, wherein the expected finish for the project depends at least in part on the expected task completion dates of the plurality of tasks comprising the project.
33. The system of claim 22, wherein the input module receives an updated range of work from the user regarding a task, and the task estimation module applies the statistical model to estimate the expected task completion date for the task based on the updated range of work.
34. The system of claim 33, wherein the project estimation module uses the updated estimate of the expected task completion date to revise the schedule for the project.
35. The system of claim 22, wherein a relationship between two tasks is the tasks are performed in parallel.
36. The system of claim 22, wherein a relationship between two tasks is the tasks are performed in series.
37. The system of claim 22, wherein a relationship between two tasks is determined by a time associated with each task.
38. The system of claim 22, wherein a relationship between two tasks is determined by an order associated with each task.
39. The system of claim 22, wherein at least two of the plurality of tasks are assigned to an individual, and a relationship between the two tasks is determined by the workload of the individual.
40. The system of claim 22, wherein the range of work includes a low estimate and a high estimate of the work associated with the task.
41. The system of claim 22, wherein the statistical model is one of a normal distribution, a beta distribution, or a log-normal distribution.
42. The method of claim 22, wherein different statistical models are applied to estimate an expected task completion date for at least two of the plurality of tasks having a definition.
43. A computer-readable medium whose contents cause a computing system to perform a method of calculating a schedule for a project comprised of a plurality of tasks, the method comprising:
receiving from a user a definition for at least some of a plurality of tasks comprising a project, the received definition for a task comprising a task identifier, a relationship to at least one other of the plurality of tasks, and a range of work associated with the task;
applying a statistical model to estimate an expected task completion date for each of the plurality of tasks having a definition, wherein the statistical model is applied to the range of work associated with a task and the expected task completion date reflects a date by which the associated task will likely be completed; and
utilizing the expected task completion date for each of the plurality of tasks having a definition to calculate a schedule for the project.
44. The computer-readable medium of claim 43, wherein the statistical model is any one of a normal distribution, a beta distribution, or a log-normal distribution.
45. The computer-readable medium of claim 43, wherein the range of work is specified by an amount of time estimated to complete the task.
US11/844,219 2007-08-23 2007-08-23 System and method for managing inherent project uncertainty Abandoned US20090055237A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US11/844,219 US20090055237A1 (en) 2007-08-23 2007-08-23 System and method for managing inherent project uncertainty
PCT/US2008/074108 WO2009026567A1 (en) 2007-08-23 2008-08-22 System and method for managing inherent project uncertainty
EP08798561A EP2193442A4 (en) 2007-08-23 2008-08-22 System and method for managing inherent project uncertainty
CA2698220A CA2698220A1 (en) 2007-08-23 2008-08-22 System and method for managing inherent project uncertainty

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/844,219 US20090055237A1 (en) 2007-08-23 2007-08-23 System and method for managing inherent project uncertainty

Publications (1)

Publication Number Publication Date
US20090055237A1 true US20090055237A1 (en) 2009-02-26

Family

ID=40378708

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/844,219 Abandoned US20090055237A1 (en) 2007-08-23 2007-08-23 System and method for managing inherent project uncertainty

Country Status (4)

Country Link
US (1) US20090055237A1 (en)
EP (1) EP2193442A4 (en)
CA (1) CA2698220A1 (en)
WO (1) WO2009026567A1 (en)

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090055228A1 (en) * 2007-08-23 2009-02-26 Henry Bruce P System and method for dusplaying inherent project uncertainty
US20100017252A1 (en) * 2008-07-15 2010-01-21 International Business Machines Corporation Work packet enabled active project schedule maintenance
US8000992B1 (en) * 2007-08-03 2011-08-16 Sprint Communications Company L.P. System and method for project management plan workbook
US8005706B1 (en) 2007-08-03 2011-08-23 Sprint Communications Company L.P. Method for identifying risks for dependent projects based on an enhanced telecom operations map
US20120109707A1 (en) * 2010-10-28 2012-05-03 Marianne Hickey Providing a status indication for a project
US20120271601A1 (en) * 2011-04-19 2012-10-25 International Business Machines Corporation Systems and methods for forecasting process event dates
US20120278117A1 (en) * 2011-04-28 2012-11-01 Accenture Global Services Limited Task management for a plurality of team members
US8336026B2 (en) 2008-07-31 2012-12-18 International Business Machines Corporation Supporting a work packet request with a specifically tailored IDE
US8370188B2 (en) 2008-07-22 2013-02-05 International Business Machines Corporation Management of work packets in a software factory
US8375370B2 (en) 2008-07-23 2013-02-12 International Business Machines Corporation Application/service event root cause traceability causal and impact analyzer
US8407073B2 (en) 2010-08-25 2013-03-26 International Business Machines Corporation Scheduling resources from a multi-skill multi-level human resource pool
US8418126B2 (en) 2008-07-23 2013-04-09 International Business Machines Corporation Software factory semantic reconciliation of data models for work packets
US8448129B2 (en) 2008-07-31 2013-05-21 International Business Machines Corporation Work packet delegation in a software factory
US8527329B2 (en) 2008-07-15 2013-09-03 International Business Machines Corporation Configuring design centers, assembly lines and job shops of a global delivery network into “on demand” factories
US8583467B1 (en) * 2012-08-23 2013-11-12 Fmr Llc Method and system for optimized scheduling of workflows
US8589203B1 (en) 2009-01-05 2013-11-19 Sprint Communications Company L.P. Project pipeline risk management system and methods for updating project resource distributions based on risk exposure level changes
US8595044B2 (en) 2008-05-29 2013-11-26 International Business Machines Corporation Determining competence levels of teams working within a software
US20130325763A1 (en) * 2012-06-01 2013-12-05 International Business Machines Corporation Predicting likelihood of on-time product delivery, diagnosing issues that threaten delivery, and exploration of likely outcome of different solutions
US8660878B2 (en) 2011-06-15 2014-02-25 International Business Machines Corporation Model-driven assignment of work to a software factory
US8667469B2 (en) 2008-05-29 2014-03-04 International Business Machines Corporation Staged automated validation of work packets inputs and deliverables in a software factory
US8694969B2 (en) 2008-07-31 2014-04-08 International Business Machines Corporation Analyzing factory processes in a software factory
US8706535B2 (en) 2010-07-13 2014-04-22 Liquidplanner, Inc. Transforming a prioritized project hierarchy with work packages
US20140278719A1 (en) * 2013-03-15 2014-09-18 International Business Machines Corporation Estimating required time for process granularization
US20150051916A1 (en) * 2012-03-29 2015-02-19 Koninklijke Philips N.V. Method and a system to determine and indicate the time feasibility of a clinical pathway, enabling workflow adjustments
US20150254564A1 (en) * 2014-03-04 2015-09-10 The Boeing Company Smart process management
US10430799B1 (en) * 2017-02-03 2019-10-01 Numerify, Inc. System and method for determining a time threshold guarantee of a task for updating in a penalty clause of a service level agreement
US10706370B2 (en) * 2014-02-14 2020-07-07 Fujitsu Limited Device and method for managing a plurality of documents
CN111383428A (en) * 2020-05-29 2020-07-07 成都千嘉科技有限公司 Online meter state monitoring and early warning method and system
US20230410011A1 (en) * 2022-06-09 2023-12-21 Abductive Services LLC Systems, Devices, and/or Methods for Managing Projects

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL215873A0 (en) * 2011-10-23 2011-12-29 My Single Point Ltd A method for estimating the total cost of ownership (tco) for a requirement

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292830B1 (en) * 1997-08-08 2001-09-18 Iterations Llc System for optimizing interaction among agents acting on multiple levels
US20020120486A1 (en) * 2000-08-28 2002-08-29 Thompson Daniel J. Method, system, and computer software program product for analyzing the efficiency of a complex process
US20040243457A1 (en) * 2003-05-28 2004-12-02 International Business Machines Corporation Project estimating system and method
US20060003303A1 (en) * 2004-06-30 2006-01-05 Educational Testing Service Method and system for calibrating evidence models
US20060010418A1 (en) * 2003-11-04 2006-01-12 Realization Technologies, Inc. Facilitation of multi-project management using threoughput measurement
US7003475B1 (en) * 1999-05-07 2006-02-21 Medcohealth Solutions, Inc. Computer implemented resource allocation model and process to dynamically and optimally schedule an arbitrary number of resources subject to an arbitrary number of constraints in the managed care, health care and/or pharmacy industry
US20060079979A1 (en) * 2004-09-28 2006-04-13 Siemens Technology-To-Business Center, Llc Dynamic-state waiting time analysis method for complex discrete manufacturing
US20060271469A1 (en) * 2000-11-03 2006-11-30 Lehman Brothers Inc. Tool for estimating a cost of a trade
US20070124186A1 (en) * 2005-11-14 2007-05-31 Lev Virine Method of managing project uncertainties using event chains
US20070245300A1 (en) * 2006-03-22 2007-10-18 Benjamin Chan Apparatus, system, and method for presenting project scheduling information in combination with workflow information
US7353183B1 (en) * 2001-07-17 2008-04-01 Move, Inc. Method and system for managing and closing a real estate transaction
US20090055228A1 (en) * 2007-08-23 2009-02-26 Henry Bruce P System and method for dusplaying inherent project uncertainty

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000028454A1 (en) * 1998-11-12 2000-05-18 Cyberoffice Technologies, Llc Automatic project management system with machine-initiated bidirectional communication
AU2003902399A0 (en) * 2003-05-16 2003-06-05 Crux Cybernetics Pty Ltd A system for scheduling at least one task having a plurality of activities to be performed by one or more users of the system

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292830B1 (en) * 1997-08-08 2001-09-18 Iterations Llc System for optimizing interaction among agents acting on multiple levels
US7003475B1 (en) * 1999-05-07 2006-02-21 Medcohealth Solutions, Inc. Computer implemented resource allocation model and process to dynamically and optimally schedule an arbitrary number of resources subject to an arbitrary number of constraints in the managed care, health care and/or pharmacy industry
US20020120486A1 (en) * 2000-08-28 2002-08-29 Thompson Daniel J. Method, system, and computer software program product for analyzing the efficiency of a complex process
US20060271469A1 (en) * 2000-11-03 2006-11-30 Lehman Brothers Inc. Tool for estimating a cost of a trade
US7353183B1 (en) * 2001-07-17 2008-04-01 Move, Inc. Method and system for managing and closing a real estate transaction
US20040243457A1 (en) * 2003-05-28 2004-12-02 International Business Machines Corporation Project estimating system and method
US20060010418A1 (en) * 2003-11-04 2006-01-12 Realization Technologies, Inc. Facilitation of multi-project management using threoughput measurement
US20060003303A1 (en) * 2004-06-30 2006-01-05 Educational Testing Service Method and system for calibrating evidence models
US20060079979A1 (en) * 2004-09-28 2006-04-13 Siemens Technology-To-Business Center, Llc Dynamic-state waiting time analysis method for complex discrete manufacturing
US7440811B2 (en) * 2004-09-28 2008-10-21 Siemens Aktiengesellschaft Dynamic-state waiting time analysis method for complex discrete manufacturing
US20070124186A1 (en) * 2005-11-14 2007-05-31 Lev Virine Method of managing project uncertainties using event chains
US20070245300A1 (en) * 2006-03-22 2007-10-18 Benjamin Chan Apparatus, system, and method for presenting project scheduling information in combination with workflow information
US20090055228A1 (en) * 2007-08-23 2009-02-26 Henry Bruce P System and method for dusplaying inherent project uncertainty

Cited By (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8005706B1 (en) 2007-08-03 2011-08-23 Sprint Communications Company L.P. Method for identifying risks for dependent projects based on an enhanced telecom operations map
US8000992B1 (en) * 2007-08-03 2011-08-16 Sprint Communications Company L.P. System and method for project management plan workbook
US20090055228A1 (en) * 2007-08-23 2009-02-26 Henry Bruce P System and method for dusplaying inherent project uncertainty
US8595044B2 (en) 2008-05-29 2013-11-26 International Business Machines Corporation Determining competence levels of teams working within a software
US8667469B2 (en) 2008-05-29 2014-03-04 International Business Machines Corporation Staged automated validation of work packets inputs and deliverables in a software factory
US8671007B2 (en) * 2008-07-15 2014-03-11 International Business Machines Corporation Work packet enabled active project management schedule
US8452629B2 (en) * 2008-07-15 2013-05-28 International Business Machines Corporation Work packet enabled active project schedule maintenance
US8527329B2 (en) 2008-07-15 2013-09-03 International Business Machines Corporation Configuring design centers, assembly lines and job shops of a global delivery network into “on demand” factories
US20130185693A1 (en) * 2008-07-15 2013-07-18 International Business Machines Corporation Work packet enabled active project management schedule
US20100017252A1 (en) * 2008-07-15 2010-01-21 International Business Machines Corporation Work packet enabled active project schedule maintenance
US8370188B2 (en) 2008-07-22 2013-02-05 International Business Machines Corporation Management of work packets in a software factory
US8375370B2 (en) 2008-07-23 2013-02-12 International Business Machines Corporation Application/service event root cause traceability causal and impact analyzer
US8418126B2 (en) 2008-07-23 2013-04-09 International Business Machines Corporation Software factory semantic reconciliation of data models for work packets
US8448129B2 (en) 2008-07-31 2013-05-21 International Business Machines Corporation Work packet delegation in a software factory
US8336026B2 (en) 2008-07-31 2012-12-18 International Business Machines Corporation Supporting a work packet request with a specifically tailored IDE
US8782598B2 (en) 2008-07-31 2014-07-15 International Business Machines Corporation Supporting a work packet request with a specifically tailored IDE
US8694969B2 (en) 2008-07-31 2014-04-08 International Business Machines Corporation Analyzing factory processes in a software factory
US8589203B1 (en) 2009-01-05 2013-11-19 Sprint Communications Company L.P. Project pipeline risk management system and methods for updating project resource distributions based on risk exposure level changes
US8706535B2 (en) 2010-07-13 2014-04-22 Liquidplanner, Inc. Transforming a prioritized project hierarchy with work packages
US8407073B2 (en) 2010-08-25 2013-03-26 International Business Machines Corporation Scheduling resources from a multi-skill multi-level human resource pool
US20120109707A1 (en) * 2010-10-28 2012-05-03 Marianne Hickey Providing a status indication for a project
US20120271601A1 (en) * 2011-04-19 2012-10-25 International Business Machines Corporation Systems and methods for forecasting process event dates
US20120278117A1 (en) * 2011-04-28 2012-11-01 Accenture Global Services Limited Task management for a plurality of team members
US8645178B2 (en) * 2011-04-28 2014-02-04 Accenture Global Services Limited Task management for a plurality of team members
US8660878B2 (en) 2011-06-15 2014-02-25 International Business Machines Corporation Model-driven assignment of work to a software factory
US20150051916A1 (en) * 2012-03-29 2015-02-19 Koninklijke Philips N.V. Method and a system to determine and indicate the time feasibility of a clinical pathway, enabling workflow adjustments
US20160307134A1 (en) * 2012-06-01 2016-10-20 International Business Machines Corporation Gui support for diagnosing and remediating problems that threaten on-time delivery of software and systems
US10255571B2 (en) * 2012-06-01 2019-04-09 International Business Machines Corporation GUI support for diagnosing and remediating problems that threaten on-time delivery of software and systems
US20140222497A1 (en) * 2012-06-01 2014-08-07 International Business Machines Corporation Detecting patterns that increase the risk of late delivery of a software project
US20140222485A1 (en) * 2012-06-01 2014-08-07 International Business Machines Corporation Exploring the impact of changing project parameters on the likely delivery date of a project
US20140236654A1 (en) * 2012-06-01 2014-08-21 International Business Machines Corporation Incorporating user insights into predicting, diagnosing and remediating problems that threaten on-time delivery of software and systems
US20140236660A1 (en) * 2012-06-01 2014-08-21 International Business Machines Corporation Gui support for diagnosing and remediating problems that threaten on-time delivery of software and systems
US9501753B2 (en) * 2012-06-01 2016-11-22 International Business Machines Corporation Exploring the impact of changing project parameters on the likely delivery date of a project
US9552561B2 (en) * 2012-06-01 2017-01-24 International Business Machines Corporation Incorporating user insights into predicting, diagnosing and remediating problems that threaten on-time delivery of software and systems
US20130325763A1 (en) * 2012-06-01 2013-12-05 International Business Machines Corporation Predicting likelihood of on-time product delivery, diagnosing issues that threaten delivery, and exploration of likely outcome of different solutions
US9563864B2 (en) * 2012-06-01 2017-02-07 International Business Machines Corporation Detecting patterns that increase the risk of late delivery of a software project
US9251484B2 (en) * 2012-06-01 2016-02-02 International Business Machines Corporation Predicting likelihood of on-time product delivery, diagnosing issues that threaten delivery, and exploration of likely outcome of different solutions
US9406038B2 (en) * 2012-06-01 2016-08-02 International Business Machines Corporation GUI support for diagnosing and remediating problems that threaten on-time delivery of software and systems
US8583467B1 (en) * 2012-08-23 2013-11-12 Fmr Llc Method and system for optimized scheduling of workflows
WO2014031917A1 (en) * 2012-08-23 2014-02-27 Fmr Llc Method and system for optimized scheduling of workflows
US20140278719A1 (en) * 2013-03-15 2014-09-18 International Business Machines Corporation Estimating required time for process granularization
US20140278715A1 (en) * 2013-03-15 2014-09-18 International Business Machines Corporation Estimating required time for process granularization
US10706370B2 (en) * 2014-02-14 2020-07-07 Fujitsu Limited Device and method for managing a plurality of documents
US20150254564A1 (en) * 2014-03-04 2015-09-10 The Boeing Company Smart process management
US9953264B2 (en) * 2014-03-04 2018-04-24 The Boeing Company Smart process management
US10430799B1 (en) * 2017-02-03 2019-10-01 Numerify, Inc. System and method for determining a time threshold guarantee of a task for updating in a penalty clause of a service level agreement
CN111383428A (en) * 2020-05-29 2020-07-07 成都千嘉科技有限公司 Online meter state monitoring and early warning method and system
US20230410011A1 (en) * 2022-06-09 2023-12-21 Abductive Services LLC Systems, Devices, and/or Methods for Managing Projects

Also Published As

Publication number Publication date
EP2193442A4 (en) 2012-06-06
EP2193442A1 (en) 2010-06-09
WO2009026567A1 (en) 2009-02-26
CA2698220A1 (en) 2009-02-26

Similar Documents

Publication Publication Date Title
US20090055237A1 (en) System and method for managing inherent project uncertainty
US8214240B1 (en) Method and system for allocation of resources in a project portfolio
KR101532451B1 (en) Scheduling application allowing freeform data entry
US20170147960A1 (en) Systems and Methods for Project Planning and Management
US6351734B1 (en) System and method for resource allocation and planning
US11354121B2 (en) Software portfolio management system and method
US8370192B2 (en) Method and system for dynamic project management and capacity management
US7664664B2 (en) Methods and systems for portfolio planning
US8626698B1 (en) Method and system for determining probability of project success
US20110071869A1 (en) Process management system and method
US20040143477A1 (en) Apparatus and methods for assisting with development management and/or deployment of products and services
US20090055228A1 (en) System and method for dusplaying inherent project uncertainty
US20120116835A1 (en) Hybrid task board and critical path method based project management application interface
US20130090971A1 (en) Method and system for allocation of resources in an agile environment
US20110196717A1 (en) Sales Performance Management Through Quota Planning
US20120310699A1 (en) Approach and tool blending ad-hoc and formal workflow models in support of different stakeholder needs
US20120116834A1 (en) Hybrid task board and critical path method based project application
US20060241997A1 (en) System and method for integrating workflow processes with a project management system
US20080172287A1 (en) Automated Domain Determination in Business Logic Applications
US8000996B1 (en) System and method for markdown optimization
AU2011202260A1 (en) A project management method and system
US11740883B2 (en) Software automation deployment and performance tracking
US20160048785A1 (en) A computer implemented system and method for project controls
US20100017255A1 (en) Fee estimation tool
US20100023947A1 (en) System, method, and computer program product for resource collaboration optimization

Legal Events

Date Code Title Description
AS Assignment

Owner name: LIQUIDPLANNER, INC., WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HENRY, BRUCE P.;CARLSON, JASON;SEYBOLD, CHARLES A.;AND OTHERS;REEL/FRAME:022422/0601

Effective date: 20080212

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION