In this article, we’re going to show you how to plan a project by creating a complete project plan example from scratch, for a project to move a company out of their existing offices and into new premises. We’ll start by defining the deliverables and finish with optimizing our plan so as it is efficient as possible.
When we’ve completed the example you’ll understand everything you need so you’ll know how to plan a project from start to finish. If you are managing your own project then you don’t just go from being assigned a project to manage, straight to creating the plan. There are some steps you’ll need to take first, including the creation of the Project Charter and Project Scope Statement.
Once these are both approved by the Project Sponsor in consultation with the steering committee, we’re ready to begin the process of planning the project.
In order to show you how to plan a project, we’re going walk you through the following steps:
- Define the Tasks
- Sequence the Tasks
- Add Durations
- Add Dependencies and Constraints
- Add Resources
- Level Resources
- Is There a Better Way?
- Review the Plan
- Create a Baseline
So with that let’s dive into the first step of how to plan a project: defining the tasks.
1. Define the Tasks
There are multiple ways in which you can define the tasks (also known as activities in project management parlance) to be done. In this project plan example, we’re going to look at two ways to identify your tasks, one is a simple and quick way to identify the activities and the other is a much more formal way.
Technique 1: Brainstorm Activities
This technique works best for smaller projects. Here we’re going to brainstorm all the activities that need to be done in order for the work to be completed. To complete this step we simply get all of the team together, agree on the definition of when the project deliverables are complete (this will correspond to the acceptance criteria in your Project Scope Statement), and then as a group list all the activities that need to be done in order to achieve all those criteria.
There are a couple of nuances which often trip up new project managers:
- The first of these is to what granularity should activities be specified? You don’t want to specify tasks which only take minutes to perform, and likewise, you can’t simply have a single activity called “Do Project”. The correct granularity to use will vary from project to project but a good starting point, if you’re new to project management, is to have tasks which take no longer than the week, and no less than half a day.
- The second of these is to realize that not every activity which makes up the entire project needs to be understood. It is only important that all the activities to get us to the next milestone are understood. Of course, we want to identify and schedule the tasks after the next milestone too, but these we will develop (our understanding of them will improve) as we progress through the project and some of our more pressing activities are completed.
When planning using the brainstorming method it is important to be aware of and avoid groupthink. Groupthink occurs in groups when individual thinking or individual creativity is lost or subverted to stay within the comfort zone of the consensus view. People’s common sense and ability to perform problem-solving, make good decisions, and raise unpopular views are overridden by the desire for group consensus.
The conditions that lead to groupthink are as follows:
- Directive leadership: where the group leader directs the group and its discussions.
- Group homogeneity: where the group knows each other, come from the same social background and share the same ideology.
- Group isolation: where the group does not have exposure outside information which could be used to help reach a more balanced decision.
To avoid groupthink:
- Explore different scenarios.
- Encourage each member of the team to be a critical evaluator, allowing them to openly question ideas and propose alternatives.
- Leaders should deliberately not express their opinion when asking a group to find a solution to a problem.
- Invite outside experts into the meeting and take their opinions seriously. Allow the group members to speak with the experts individually and privately if they desire.
- If the decision is major enough, instruct several different groups to solve the same problem simultaneously but independently of each other.
- Assign at least one group member to deliberately play the role of devil’s advocate.
Groupthink is something you simply need to be aware of for the purposes of this project plan example. You can read more about groupthink and how to avoid it here.
Technique 2: Work Breakdown Structure
A Work Breakdown Structure (WBS) represents another, more formal way to define the list of tasks that need to be done to complete the project. Just as before, it’s a good idea to create the WBS with your entire project team and key stakeholders present so that no tasks are missed.
Another important reason for doing the entire planning processes with your team is that by getting the team to create the plan with you, you create implicit buy-in and group ownership of the plan because they created the plan with you. This makes it far more likely that your team will be committed achieving the targets set within the plan and making a success of the plan. If you don’t manage to get your team involved in the planning process, then make sure you organize a meeting to walk them through the plan and take on board their feedback. Be flexible, updating the plan to reflect their input and you’ll get much better buy-in that if you’re inflexible and intransigent.
A WBS shows a hierarchical breakdown of your project in a deliverable focussed manner. You can think of the WBS as being the recipe for the project, showing 100% of the tasks that need to be done to complete the project. The WBS for our project plan example to move a company from one office to another is shown below:
Organizing a WBS
To create your own WBS simply start at the top with a major deliverable of the project, and decompose it down into smaller and smaller chunks. The most common way of organizing a Work Breakdown Structure is shown above, where the project is first decomposed into the phases, but there are other ways you could choose to organize your WBS if it is right for your project. Really, you are only limited here by your imagination, but some common ways include:
- By deliverable
- By subproject
- By geographic location
WBS Tips and Guidelines
It can take time and practice to become skilled in creating work breakdown structures, but these tips and guidelines should keep you on right track:
- The 100% Rule: The WBS should define the total scope of the project. If it doesn’t do this then the plans you create from the WBS will have gaps and missing components.
- Mutual Exclusivity: there should be no overlap between any two elements in a WBS. If there are, then you run the risk of duplicating work during project execution.
- Include Deliverables, Not Actions: This means that the names given to WBS items should be nouns and not verbs. We want to describe what is produced, not the step that was taken to produce it.
- Use Common Sense: as mentioned previously, don’t go into too much detail. What you’re looking for is enough detail so you can plan, manage and control the project, no more.
- Use Post-It™ Notes: When facilitating the creation of a WBS, using Post-It™ notes can be a great way to get your team involved in the process, and it’s also a really flexible way to arrange and then rearrange your WBS as necessary.
In project management terminology the lowest level of a Work Breakdown Structure is known as a work package. Work packages are components which can easily be given to a person, a team, or a subcontractor, who then has accountability and responsibility for delivering the work package.
It’s good practice to assign a unique identifier to each level of the WBS. The reason for this is that it avoids all confusion and ambiguity when discussing the deliverables of the project.
One common mistake people make during this phase is that they forget to include the project management deliverables. Remember that a WBS is supposed to outline everything the project will produce, so remember to add the project management deliverables such as “project plan”, “communication plan”, “risk management plan” etc. as your projects require.
Just as with the brainstorming technique, we might not be able to completely specify all of the deliverables at the start of the project – what needs to be done in later stages of the project may be unclear until some of the earlier stages are complete. The process whereby the WBS is evolved over time is sometimes referred to as Rolling Wave Planning. You can learn more about work breakdown structures here.
By going through the process of listing all the deliverables that need to be produced you will probably discover some things about your project’s scope that you were not previously aware of. Now is the time to go back and update your project scope document to contain any new information, and get your project sponsor to ratify it again.
2. Sequence the Tasks
Now that we have our full project scope and the deliverables (WBS) for our project plan example, it’s time to start sequencing the activities. To do this it is easiest if you use a tool specifically designed for creating Gantt Charts, such as Microsoft Project (a paid tool) or GanttProject (free). But if you’re not able to use either of these tools then it’s perfectly feasible to create your plan using Microsoft Excel or even pen and paper.
A Gantt Chart is a tool which allows us to plot activities against time. If you’re not familiar with Gantt charts it will make more sense as we work through our example.
Let’s move back to the WBS that we’ve created to remind us of our office move project.
For the purposes of this article we’ll be using GanttProject to create our plan, as even though it doesn’t have some of the rich features that Microsoft Project has, it is free to download and use, and thus a great tool for learning about project planning.
The first step in creating our plan is to enter each branch of the Gantt Chart one at a time, starting with our project “Move Office”, then “Initiate Move”, then “Sign Project Charter”. Now we move on to the next branch, “Plan” and repeat the process. This will result in something which looks like this:
As you can see in the diagram above, all of our tasks are entered, but it doesn’t represent any kind of plan yet. Notice that on the right of the diagram all our tasks take one day by default, and also notice that there are no resources or costs associated with any tasks, as both the Resources and Cost columns are empty.
It is important to remember as you enter the tasks to work your way down the WBS starting from the root and then the leftmost subtask. This keeps all the tasks related to a phase together (next to each other) in the tool. If you were to enter tasks moving horizontally across the WBS then this would create a very confusing Gantt chart as you’d have tasks from the same phase of the project spread out all over the chart.
The next step is to make all the tasks subtasks of our Move Office task. We do this by highlighting all the subtasks and selecting Indent Right. This will result in a diagram looking something like this.
As you can see above by looking at the Name column, all tasks are now subtasks of Move Office. The next step is to continue indenting subtasks so as to recreate the structure of the WBS:
You can see that structurally under the Name column, our plan resembles our WBS.
3. Add Durations
We now need to enter durations for how long each task in our project plan example will take. We obtain these estimates by asking our team to estimate how long each work package will take when we go through the process of updating both the WBS and the plan. For our example, we obtained the following durations.
- Sign Project Charter – 0 days
- View Potential Offices – 4 days
- Choose Office – 1 day
- Sign Contract – 1 day
- Move Arranged – 0 days
- Issue Boxes – 1 day
- Pack Up Boxes – 2 days
- Pack Up Computers – 1 day
- Move Using Hire Firm – 1 day
- Move Complete – 1 day
- Lessons Learned – 1 day
- Celebrate – 0 days
There are a few things to note here. The first is that we only ever estimate durations for work packages and never summary tasks. This is because the duration of each summary task will be calculated automatically from the work packages belonging to them.
The second thing to note is that some tasks take 0 days. This is because they are milestones and this is how we represent milestones within the project management tool.
If we enter our durations into the project planner it will now look something like this.
You can see that milestones are represented by dots on the Gantt chart, and also that the summary tasks have expanded in places because the durations of subtasks have increased.
4. Add Dependencies and Constraints
Now it is time to add our dependencies and constraints to our project plan example. To do this drag we drag our cursor from one task in the Gantt chart to the next to show which tasks happen after other tasks are completed or before other tasks have started. Having done this our plan is finally beginning to take shape:
Again there are a few important things to be aware of in the above diagram:
- Notice that both the Pack Up Boxes and Pack Up Computers tasks must be complete before we can start the Move Using Hire Firm task. This makes sense as we don’t want to move before we’ve finished packing.
- Notice that there is a one day gap between when we finish packing and the Move Using Hire Firm task. The reason for this is because we have entered a constraint against the Move Using Hire Firm task. This constraint simply states that the Move Using Hire Firm task can start no earlier than 10th April. The reason we’ve added this constraint is that the 10th of April is the date we’ve booked the hire firm for.
- The final thing you need to be aware of is the gap between completing the Lessons Learned and the Celebrate task. Again, we’ve added a constraint. This time we’ve delayed the Celebrate task by 5 days, to give everyone time to both recover from the move and settle into their new environment before we hold a party to celebrate.
5. Add Resources
The next step is to add resources to our project plan example to show who will carry out each task. We do this by entering the Resources tab and entering the name or initials of each resource that will work on the project. You can also allocate a cost to each resource. In our simple example, we have just four resources, DG and JR costing $800 per day, The Boss costing $1,000 per day, and Hire Company costing $1,000 per day.
Most project management tools, but not GanttProject which is very simplistic, allow you to have other types of resources. These other types of resources are material resources, such as boxes for the move which would then be allocated on a cost per unit basis, and cost resources, which in our example would be the Hire Firm as they are a one-off cost to the project, as opposed to a resource that we allocate on a per hour or per day rate (our people resources).
Now that we’ve entered all of our resources into our project plan example, we enter any times that those resources are not available, for example, if a member of the team is on vacation or on a training course or has some other commitment. For the purposes of our example, we just have one team member, JR, who is on vacation on the 11th and 12th of April.
Now, we assign which resources will carry out which tasks:
As you can see, some tasks require more than one resource to complete. Also note that the costs are shown, with summary costs being shown also, and the tool estimates that entire project (Move Office) will cost $9,600 to complete, which you can see by looking of the very first row of our project plan example.
6. Level Resources
If we now take a look at the resources tab of our project plan example we can see a couple of interesting things.
The first thing to notice is the red box with 200% written inside it. This means that JR is assigned 200% on the 6th of April, meaning JR is expected to do two full days work within a single day.
The second thing to notice is the yellow box for JR on the 11th and 12th of April indicating the time JR is on vacation. The blue box inside the yellow box indicates that we expect JR to do a full day of work on the 11th of April even though JR is on vacation.
These two situations obviously are not correct, and the way we resolve them is by a technique known as resource leveling, whereby we try to ensure that we balance the demand for a resource with the supply of that resource. This can mean both that we don’t overuse a resource but also that we don’t underuse a resource where one is available.
Many project management tools (not GanttProject) have automatic resource leveling tools within them that algorithmically attempt to resolve these conflicts for you. One problem with these tools is that for complex projects after you have run the resource leveler, it can be really difficult to understand at a glance why your plan looks the way it does. For this reason many project managers, myself included, prefer to perform resource leveling manually.
After we have performed our manual resource leveling our project plan example will look something like this:
Notice how the plan differs from before – the Pack Up Computers task now happens after the Pack Up Boxes task as they both have to be done by JR and we don’t want JR assigned at 200%. Another option would have been to assign the task to someone else so both tasks could still happen concurrently.
We’ve also inserted a task called JR (holiday) to indicate the JR is on vacation during these dates. Inserting this tasks to level resources has resulted in the Lessons Learned and Celebrate tasks being pushed out by two days.
Now, if we return to the Resources tab, you can see that we no longer have resource conflicts that require leveling.
7. Is There a Better Way?
We have done everything we need to do to create our basic office move plan, and our project plan example is essentially complete, but we haven’t yet considered if there are any issues with the plan as it stands or whether there is a better way to do things.
Let’s examine the plan again to see what ideas we can generate to improve the plan:
This exercise of going through the plan finding issues and generating ideas to optimize the plan is a key task of project management that is important to ensure the success of a project and should be undertaken regularly.
One easily identifiable issue with our plan is:
- If the Packing Up Computers task gets delayed for some reason and doesn’t complete it on time, then we will not be fishing packing when the hire firm turns up to move us to our new office. If this happens we won’t be able to reschedule the hire firm at such short notice, and we may even have a hard deadline to vacate our existing premises.
This would be a costly problem should it arise, and is obviously something we want to avoid.
We decided we’d like 3 working days leeway between finishing packing up and the Move Using Hire Firm task to ensure we avoid this issue. There are several ways we might go about doing this. Which you choose will depend on your unique project circumstances.
Pack Up Boxes and Pack Up Computers are happening one after the other because they are both being done by JR, but there is no reason why these two tasks couldn’t be done at the same time if we could find someone to help. If DG could perform the Pack Up Boxes task then we’d create a day of leeway before our Move Using Hire Firm task and our project plan would look like this:
As you can see above this gives us one day of leeway, but we want three, so we decide to add some contingency.
Contingency is the extra time we add to the schedule to allow for problems arising during project execution. By adding 3 days of contingency before our Move Using Hire Firm task we are providing ourselves with leeway to allow unforeseen issues to arise earlier in the plan.
Our plan will now look like this:
Notice that our contingency is not free as we have the resources JR and DG assigned, to identify the fact that we will be using these resources if required. These resources cannot be planned to do other work or they will not be available should we need to use the contingency.
It is also common for project managers to think about contingency from a cost perspective. This could be done by putting together the best plan that you can, working out the total project cost, and then agreeing with your steering committee to have a contingency fund, for example, you might agree a 20% contingency fund.
As issues arise during project execution, you can then revisit your plan to work some of this contingency into your plan as necessary.
Because you have agreed to the 20% contingency budget up front, you have the authority to do this without needing to go back to your steering committee for approval. Obviously, if as a result of doing this, key dates change you’ll need to notify your steering committee and agree on this with them.
Key dates will typically move when you make changes to the critical path. The critical path is defined as the sequence of project tasks which add up to the longest overall duration.
A simpler way to think of the critical path is as the shortest route through your project plan. It is important that the tasks on the critical path are completed on time because if they are not then the project schedule will slip. These critical tasks represent the most important tasks on your project schedule from the project management perspective.
For this reason, it is important that you as project manager pay special attention to these tasks, and manage them with extra care.
One practical way to do this is to hold a meeting with your team to specifically review the critical path. In this meeting, you should walk through each task on the critical path and ask what might go wrong for this task.
You can then update your plan to reflect these new insights as necessary. Doing this doesn’t mean your plan won’t go wrong, but it does give it the best chance of being successful. Note that in our project plan example, by adding our contingency the Move Using Hire Firm date has changed from the 10th April to the 12th April. We’d obviously need to book the move with the hire firm for this date or reschedule to this date if we’d already booked it. This shouldn’t cause any issues, as we’re at the very beginning of our project, versus the difficulties of scheduling with next to no notice if hadn’t added the contingency and were trying to reschedule with next to no notice.
Once we have optimized our plan we’re ready to move on to the penultimate step of how to plan a project…
8. Review the Plan
Now that our project plan example has been created it is time to review it. If you haven’t already done so you should review the plan with your project team taking on board their feedback. This is an important step as your project is more likely to be successful if your team has bought into the plan, and has played a part in co-creating the plan.
It’s also a good idea at this point to re-check that we have identified all stakeholders and tried to address their needs before we formally kick-off the project
Once the plan has been reviewed with the team, it’s time to take the plan to the project sponsor and steering committee, to review the plan and get sign-off to proceed with the first phase of the plan.
Still reading? Well done. It’s time to move on to the final step of how to plan a project…
9. Create the Project Plan Example Baseline
When our project plan example has been ratified it will have been reviewed by the steering committee and signed off. When this happens, the initial project plan will be considered finalized, and it will be time to create a baseline of the plan. A baseline is simply a snapshot of your project plan, and it is against this baseline that your project status reporting will be done.
Almost all project management software tools allow you to create a baseline. To create a baseline in GanttProject simply press the Baselines button and give the baseline a name. For our project plan example, we’re going to name our plan “Plan V1.0”.
Although we’ve already looked at all the initial steps of how to plan a project, let’s suppose that after the project has started we make changes to the plan to reflect the new reality, as new information comes in or tasks start to take longer or shorter than planned. An example of how our project plan example might look after a couple of changes to the baseline is shown below.
In the above diagram, a red bar indicates that the plan has increased in duration and a green bar that the plan has decreased in duration.
To create the above diagram we made two changes to our baselined project plan example.
- First, we added the task Formal Project Closure which takes one day after the Lessons Learned. We also updated the Celebrate task to say it must occur 5 days after the Formal Project Closure task. This had the effect of pushing the entire plan out by one day.
- Second, we realized it will only take one day to Issue Boxes (previously we thought this would take two). This has the effect of making lots of subtasks of Manage (move) happen more quickly. However, overall the Manage (move) still completes on the same day with the Move Using Hire Firm task, as this is the date when the hire firm is booked and doesn’t just simply change because we’ve updated our planning software.
How to Plan a Project Summary
In this project plan example, we’ve walked you through everything you need to know so you understand exactly how to plan a project. The steps we’ve looked at are, with a very brief explanation of each are:
- Define the Tasks: identify all the work to be done.
- Sequence the Tasks: put the tasks into the right order.
- Add Durations: add how long each task will take to complete.
- Add Dependencies and Constraints: add any constraints on the plan.
- Add Resources: add the people and other resources needed to complete the plan.
- Level Resources: ensure that the plan is practical and that people aren’t being asked to work too much or too little.
- Is There a Better Way?: optimize the plan to make it as efficient as possible.
- Review the Plan: check the plan with your team and stakeholders to ensure they are onside.
- Create a Baseline: lock down the plan by creating a baseline.
Having worked on the project plan example of moving offices, you should now understand how to plan a project from start to finish. Although the above example is simple, using the steps shown will enable you to plan even complex projects. Project planning is a skill and your understanding of how to plan a project should increase over time with practice.
I hope that you’ve found this guide really useful for learning how to plan a project. Now that you plan has been created the next step will be to get it ratified by your steering committee and gain official authorization to start your project.