MS Project is a powerful scheduling tool with very robust functionality. As such, the setting of some basic options and the way that updates are done will impact the value a project manager will get out of this tool.
The following tips and tricks should make using MS Project a more pleasant experience:
- setting basic options
- understanding the calendars
- understanding the scheduling calculation and the relationship to the triple constraints
- setting up and maintaining project tasks
- baseline a schedule
- other general tips
Setting basic options in MS Project
Before you add any resources or tasks to the schedule, ensure you have some basic defaults set up appropriately so that MS Project works effectively.
- MS Project's default task type is Fixed Units. Change this to either Fixed Duration (recommended since people think in terms of how long it will take) or Fixed Work under File > Options > Schedule since always want to know one or the other for the scheduling calculations to work best. It is also advised to set it to 'Non Effort Driven'
- set up the calendar to reflect statutory holidays and other days when project work will not happen
- ensure the work days are set up with the appropriate number of working hours. The default is 8 which should probably be changed to 7 to reflect a Waterloo work day
- ensure resource availability is reflected in the calendar for individual project resources
- set up the project start date
- create views to see different data points (best practices is to create separate views for entering, editing, reviewing, and analysing the schedule)
- look at the different options available and set up according to how you want to manage your project schedule
Understanding the calendars
There are three different calendars in MS Project
- Project calendar - defines default work days and hours
- Task calendar - used when the timing of a task must be different than the project calendar allows
- Resource calendar - defines when resource is available
MS Project has rules how the calendars interact:
- if a task has no resources and no task calendar, it will use the working days and times in the project calendar
- if a task has a resource, it will use the working days and times fro the resource calendar for that task's resource(s)
- if a task has a task calendar, it will use the working days and times from that task calendar
- if a task has a resource AND a task calendar, it will use working days and hours the task and resource calendars have in common (unless the Ignore resource calendars option has been set for the task)
If the working day is adjusted on the standard calendar, be sure to adjust how many hours is in a day in the calculation MS Project uses.
The scheduling calculation in MS Project
MS Project has very powerful scheduling functionality, if you set up and use it appropriately.
The triple constraints of project management (Time, Resources, Scope) are represented in MS Project with the following:
- Time: Duration
- Scope: Work (effort)
- Resources: Units
These are the drivers for the magical formula that MS Project uses for its scheduling calculation where
W = D * U
W: Fixed Work (how much effort is required to do a task)
D: Fixed Duration (how much time we have to do the task)
U: Fixed Units (how many people are required for the task)
Always start with what you know (duration or work). Ensure the default task type is set as advised under Setting Basic Options (above).
Setting up and maintaining tasks
- tasks should always be actions, otherwise they are not tasks
- a task should not be an administrative activity; every task should be an actionable step towards a deliverable
- administrative activities could be put into an administrative "bucket" task
- tasks should be broken down to a level where their duration is more than 8 hours (1 day) but less than 80 hours (2 weeks)
- do not use start and finish dates for tasks since this will enforce unnecessary constraints in the schedule; use the deadline field to show deadlines for a task
- update using duration as well; do not update using start and finish fields
- use summary tasks for phases, deliverables, et cetera
- to create a milestone, create a task with 0 duration
- your schedule can have tasks that are either duration or work (effort) within the same schedule
- ensure that task relationship dependencies are set up appropriately so that there are no orphan tasks for the scheduling calculation
- avoid start-to-finish relationships, if possible
- set up the tasks in the schedule based on how the work is going to be done
- set up tasks individually, based on scope and deliverables
- level of detail of tasks depends on what project manager can manage and required reports
- if tasks are related to requirements, could add a field with the requirement #
- can link tasks or summary tasks to WBS using WBS field
Baseline a schedule
- once you have an approved version of the schedule, baseline it. In MS Project, do this through Project > SetBaseline (the entire project) to create auto-populated baseline duration and date fields.
- once the baseline is created, update actual duration and date values against tasks, not the baseline values
- when re-planning, new baselines can be created
Other general tips
- useful views
- Relationship Diagram view with Gantt Chart (split screen)
- Resource Allocation view for resources
- use and show Status Date on Gantt, not just current date
- useful reports
- Compare projects
- Summary (in Overview)
- To do List (in Assignments)
- High Level Timeline (where you have added your major phases and milestones)
- add high level tasks and milestones to the timeline. The timeline creates a useful visual view of the project that can be shared.
- to determine how late a project can start, enter a project finish date under File -> Project Information and have MS Project calculate when the project must start based on task information