In Project 2010, we have introduced a new concept called "User-Controlled Scheduling". It's a collection of features designed to make Project a more flexible planning and schedule management tool. The idea is that you, as the project manager, can have complete control over when a task should happen. If and when appropriate, you can leverage Project's powerful scheduling engine to help forecast the date of a task based on various factors like dependencies, calendar, constraints, etc. But at any time, you have the flexibility to manually override Project's automatic calculations.
Ok, what does that really mean you ask? Let me illustrate...
Say you are planning for a new project. You've just talked to a few key stakeholders to get an understanding of the timeframe and deliverables and now you're ready to start building out a schedule. So far, you know the project will be divided into a couple major phases and you have a rough idea of the list of tasks to be completed within each phase. You don't really have all the specific details for every single task yet though. You need to confirm with Joe over at Sales to see if he can arrange for a customer site visit, then talk to Jane from Engineering to see when they can staff up your project, email Jack from Marketing to see if they can do some market research… You get the idea: during the initial planning phase of a project, things can still be very fuzzy.
So, how do you capture all of the high-level, possibly vague information and eventually transform it into a well structured, presentable plan?
With the new release, you can start your planning in Project right from the get-go. Tasks are by default "Manually Scheduled", meaning that you have complete control over their dates. For example, I've just typed in the couple key phases of my project:
You'll notice that that the Start, Finish & Duration fields are blank. When tasks are in this "Manually Scheduled" mode, Project will not automatically calculate and fill in dates for you.
Now let's capture what we do know. For example, we have specific dates for the task "Design" in mind. For "Engineering", we know we have a 2 week budget but don't know the specific date. For "QA", we know we have to be done by 12/1, but not how long it will take. And for Marketing, we need to discuss the timeframe with Jack:
Notice that using Project 2010, tasks do not need to be fully defined - you can leave duration or dates as blank or even type text into those fields. This lets you easily capture uncertainties when planning.
Next, let's break some of these high-level tasks into smaller work items. There are a couple design-related tasks that I want to group together under the "Design" phase, so let's insert and indent them under "Design":
Notice that the "Design" phase, which I had original given 2 weeks of duration, maintained its dates. This lets me plan using a top-down approach, where I can start from high-level dates that may be determined by management or customers, build in buffer for risk management or monitor for potential slippages (as opposed to the bottom-up where I start by defining all the specific work items then work out the roll-up total for each phase). So now I can give the subtasks some specific dates:
Note that there is a small blue bar under the summary - this is the roll-up of all of the subtasks. If I update the subtasks' dates, the blue bar will automatically update. This provides a visual way of indicating whether I still have buffer time in my schedule. I can maintain the high-level timeframe while still getting a summary roll-up of subtasks.
If one of these tasks end up taking longer than expected, and the subtasks end up exceeding the original dates of the summary phase, the roll-up bar will turn red to indicate a slippage:
You'll also notice that there are some red squiggles under the dates. Like the spell-checker in Word highlights spelling errors, the ‘schedule-checker’ highlights potential problems with the schedule. And just like the spell- checker, I can right click on the squiggle to see some possible corrective actions. Here I am going to choose the "Fix in Task Inspector" option to bring up a side pane that will tell me why there may be an issue.
In this case, I am slipping beyond my original 2 week budget on "Design", so I may have to meet with my stakeholder to see if I can get an extension on the "Design" phase, or find a way to reduce scope. In this case, let's say they agreed to letting it slip by 2 days so I can choose the "Extend Finish":
Another example where "Manually Scheduled" mode comes into play is when a task's predecessor slips. Let's say we have underestimated the amount of time the task "Prototype" takes - it's actually 6d instead of 4d:
You'll notice that "Review", which is linked to "Prototype", did not get moved out automatically. Instead the red squiggle appears to indicate a potential problem. This gives me, the project manager, a chance to decide on a mitigation plan. If "Review" truly cannot begin unless "Prototype" is complete, I may choose to enforce the link (it's one of the corrective options on the right-click menu). But of course this means that the "Design" phase will slip again and my stakeholders won't be very happy with me. Another possible mitigation plan is to check if my team can begin reviewing parts of the design as originally scheduled on 10/28, before the prototype is fully completed. If they can, then I no longer need to worry about this warning and just like a spell-checker, you can choose to ignore the warning from the software:
At any point in time if you wish to have Project calculate your schedule for you instead of maintaining manual control, you can toggle your tasks to "Automatically Scheduled" mode. When tasks are "Auto Scheduled", Project will calculate and update their dates automatically just like it has always done in previous versions. In the above example, if I make all my "Design" tasks auto scheduled, the links will always be respected and the summary will automatically update based on its subtasks:
And lastly, if you prefer the existing way of having Project automatically schedule tasks out for you. You can easily change the default task mode to be Auto Scheduled either for the current project, or for the application as a whole:
So, that's all for now for this whirlwind tour of "User-Controlled Scheduling". There are lots more to show but I'll leave them for you to explore when Beta comes out!