The Project Schedule Part 5: Dependencies

Planning

Now that you have your lowest level scheduled tasks defined and have assigned resources, it is time to define the dependencies between tasks. This is where MS Project really comes in handy as it will create the schedule for you based on task dependencies and resource availabilities.

There are four types of dependencies:

  • Finish to Start – This is the most common and the default in MS Project. The predecessor must finish before the successor can start. For example, “Applying Primer” must finish before “Painting” can start.
  • Start to Start – Predecessor must start before the successor can start. For example “Mortgage Application” must start before “Credit Check”.
  • Finish to Finish – Predecessor must finish before the successor can finish. This can be true of tasks that run in parallel but both are needed for the subsequent task.
  • Start to Finish – Predecessor must start before the Successor can finish. This one is rarely used and frankly should be avoided.

When you initially define the dependencies, take care to only define “true” dependencies. If you have one person assigned to all the tasks you may be tempted to make all of the tasks dependent since the resource must complete one before starting another. Don’t do this. Let MS Project do this via resource leveling. The reason for not doing this is you may get additional resources later so some tasks can run in parallel. If you made them all dependent, the schedule will not show this possibility.

MS Project can now take your tasks, resource assignments, estimates and dependencies and create an initial schedule. I say initial because you often will find with your first cut that the finish date does not occur within the Sponsor’s expected time frame. In the next topic I will discuss the concept of the “Critical Path” and what the Project Manager can do to rein in the target date.

Advertisement

The Project Schedule Part 4: Resource Assignments and Estimates

Planning

Once you have defined your Work Breakdown Structure (WBS) the next step in creating a schedule is to assign resources and estimates to each task (the lowest level items in your WBS). A starting point in assigning resources is to consult the “Roles & Responsibilities” matrix you created as part of the Project Charter. You are looking for the stakeholders that are in the category of “helping you execute your project”.

You may find that some WBS tasks need resources that have not yet been specifically identified as assigned to the project. In this case you will meet with the managers of the areas that have the resource expertise and agree on the assignment. In other cases you may need to contract for professional services. This should have been included in your Project Budget and the Procurement Plan. If not, you will have to use the formal Project Change Management process to alter the budget to include these services.

Microsoft Project allows you to assign resources to a task. You can also assign the percentage of the resource’s time that will be dedicated to the task. In addition, you can assign more than one resource to a given task.

Once you have resources assigned to a task you can attach estimates. You can estimate using “Duration” (the length of time the task will take independent of the resources assigned) or “Effort” (the amount of hours or days a task will take given undivided attention of the resources). Which one you use will depend on the type of project, type of task and organization culture. As a general rule I like to use “Effort” and let MS Project calculate the duration given the resource percent allocation and other tasks assigned to that resource.

When defining estimates, take into account the expertise of the resource(s) assigned to that task. An expert resource may complete a task much faster than a novice. Sometimes estimates are placed on a task prior to the resource assignment to get an idea of how the schedule will look. If you do this, remember to re-estimate once the specific resource is assigned.

There are many techniques to creating estimates. I will not address them all here. The most common are:

  • We’ve done this task before so we know how long it takes
  • The assigned resource supplies the estimate
  • A small group of people with expertise in that task are asked to independently estimate the task, then the group discusses the discrepancies and comes to a consensus
  • Management may dictate the duration of the task in which case the PM may have to assign resources with more expertise or add resources (if feasible) to meet the deadline.

You can also use a 3-point estimate (optimistic, pessimistic and most likely) and calculate your estimate using PERT (I recommend you Google this term for the details). For a more advanced scheduling technique, you can investigate “Critical Chain and Buffer Management”. This is an advanced technique that will need organizational buy-in from the top down.

The Project Schedule Part 3: Work Breakdown Structure (WBS)

Planning

A Work Breakdown Structure (aka WBS) takes high level deliverables and breaks them down into lower-level activities suitable for assigning, managing and scheduling work. Creating a WBS is the first step in creating a schedule.

To build a project schedule, you must first define all of the activities that are part of the schedule. If you have created a Project Charter and a Project Plan, you have rich sources of information with which to define the deliverables and the activities needed to produce them.

The Project Charter contains the Project Objectives, which are products, services or results that the project will produce and will survive after the project is over. These are the ultimate deliverables of the project. The Business Objectives contain “Measures of Success” which may require the project to build measurement tools and processes. The Scope section contains high-level activities which can be broken down to smaller pieces for scheduling.

The Project Plan contains the “hows” of the project and most or all of the key project activities were defined there. As the Project Manager, you will need to decide at what level you will define the activities for scheduling purposes. As I mentioned in an earlier post, I am not a fan of Project Schedule’s that contain a large amount of activities as you will wind up putting more effort into schedule maintenance than the benefits you derive.

One common way to define the activities (create a WBS) is to start with the project deliverables and work backwards from there, asking the questions “What inputs are needed for this activity?” and “What activity creates each input?”. For example, for the Requirements Document deliverable, you need final approval. To get final approval, you need to conduct a review meeting. To conduct a review meeting, you need to schedule it. To schedule it, you need a draft document. To get a draft document, you need to write it. To write it, you need to schedule and conduct requirements gathering meetings. And so on until you reach the very first activity which either needs no inputs or the inputs have already been created.

If the deliverable is simple enough you can start from first activity and drill forward. Either method should work. For activities that are not yet well understood or defined, you can define high-level placeholders in the schedule and add the activities needed to obtain the understanding.

Once you have all of the activities, you will work on assigning the resources to the activities and defining the dependencies between activities. I will cover these topics in the upcoming posts.

The Project Schedule Part 2: Schedule Tools

Planning

For anything but very small projects, you will need a tool to record and track your schedule. The most common tools used for this are Microsoft Project and Excel. They are not the only ones available but they are the ones I will discuss here.

Microsoft Project is a very robust scheduling tool with many features. You enter tasks and sub-tasks, assign resources (you can do this with varying percentages of availability), identify the effort needed for this task (in days or hours), and link the task to dependent tasks. The software automatically creates a schedule from this information.

Often on the first cut at creating a schedule, the project end date is beyond the desired target date. The sequence of tasks that directly connects to this end date is called the “Critical Path. It is the longest path of dependent tasks in the project. This path of tasks are your top priority to monitor because slippage in any one of these tasks will increase the length of your project.

You must look for opportunities to bring the target date in line with expectations. You can do things like add more resources, bring in more skilled resources, look for opportunities to do tasks in parallel, and/or start some tasks earlier. Be mindful of budget, risk ad quality implications when you use these techniques.

Excel can be used for small and some medium sized projects where you just need a list of key activities and the start and end dates. Unlike MS Project, Excel cannot create the schedule for you. It is used strictly for tracking and communication. It is much more convenient than Project when you don’t need all of the scheduling features.

I advise you not to create a schedule with so many tasks that it eats up your valuable project management time just maintaining the schedule. Create the schedule at a level sufficient enough to track the Critical Path and communicate status to key stakeholders. Keep in mind your Project Plan has all the activity details so there is no need to duplicate all of that information in the schedule.