Hello again and welcome back to our course on Project 2013.
In this section we’re going to start to look at scheduling which is probably the fundamental
aspect of Microsoft Project 2013 for most people.
And what we mean by scheduling is to take all of the information we’ve got about our
project and the tasks in it, and coming up with a sequence of events that satisfies all
sorts of criteria.
Even if we don’t have an end date in mind, let’s take our building project for example.
If we’re not specifically aiming at an end date, when we start it will normally be the
case that we’ll want to get the job finished as quickly as possible.
If you’re building houses, it’s obviously a high priority to get those houses on the
market, sold, and moving on to your next job as quickly as you can.
So what scheduling is about is taking a load of facts and producing a working schedule
that makes best use of the resources available and gets the job done in a timely manner.
So let me talk first about some of the key factors that come into play when we’re scheduling,
and let’s start with resources.
Whatever sort of project you’re working on there will be limitations on resources.
If you look at our house build example which is still pretty straightforward, if you look
at this row here, the Build walls task, we have a brick layer allocated.
Now if I had two or three brick layers maybe I could get the building of those walls done
more quickly.
But if I really have only one or I’ve got two, then it really is going to constrain
you quickly I can do some parts of the job.
Having said that, putting just dozens and dozens of brick layers on won’t necessarily
reduce the time taken to build walls proportionally.
There’s a balance.
There’s an ideal number.
And sometimes other factors will come in when it comes to the availability of resources.
For instance, if I wanted to get those walls built more quickly, I might put my brick layer
on overtime pay, but then obviously that’s going to increase the cost of building the
house.
So resource availability itself is quite a complex issue.
If you look at the question of bricks for example, then assuming that we’ve got a
good supply for bricks, the number of bricks available isn’t generally going to be a
constraint as such, but it is important that the bricks are available on site by the date
that we need to start using them.
Another very important factor in scheduling is the presence of dependencies.
So for example, at the moment we’ve got a pretty straightforward dependency between
building walls and fitting windows and door, and that is that we can’t start fitting
the windows and doors until we’ve built the walls.
That’s actually a bit over simplistic and we’re going to review that dependency later
on.
But it’s certainly true that you can’t start fitting any windows and doors until
you’ve done a certain amount of brick work.
You couldn’t start fitting the windows and doors at the same moment that you started
building the walls because you’d have no walls to fit the windows and doors to.
So dependencies can play an important part as well.
Another factor that we haven’t looked at, at all yet but which we’ll come to in a
later section is what are generally referred to as constraints.
Within a project you may, for example, have a constraint whereby a certain task has to
be finished by a certain date or some external factor which occurs at or by a certain date
will affect your project.
When this happens, you may have one or more tasks with constraints on them.
So for instance, something can’t start until the 1st of May or something has to be finished
by the 30th of June.
Perhaps the most important factor to bear in mind when you are looking at scheduling
a project though is that it is potentially a complex process.
That doesn’t necessarily mean that it’s difficult to do but what it does mean is that
you need to understand many of the factors involved in scheduling in order to do it in
a way that suits your project and your requirements.
What I’d like to do in this section is to look at some of the important underlying factors,
and then in the next section we’re going to look at something called leveling.
But let’s begin with those important factors.
And the first thing I want to look at is this copy of example_10 which is the building project
where we’ve got a couple of summary tasks, and within those summary tasks I’ve correctly
allocated some of the physical resources that are needed.
Now if I look in Fit windows and doors and just expand that summary task notice something.
I allocated carpenter to all four of those tasks.
I’ve got the right numbers of doors and the right numbers of windows and in the left
hand column in the table with the Gantt Chart, the entry table in this case, notice the little
red person symbols.
Now in that I column, this is basically indicators column that I haven’t mentioned before,
that’s going to show us any issues, any problems that we’ve got and we can see that
we have a problem here.
And the problem that we have that’s indicated by the red person symbol is that we have a
resource allocation issue.
Now notice that actually in this indicator column against one of the tasks, say, Task
14, I’ve actually got two messages.
The first message says This task has a start note earlier than constraint on Tuesday, April
2nd.
I talked about constraints just now and we’re going to come back to constraints in a later
section.
For the moment I don’t really want to worry about constraints.
This is basically there because of when the task was added to the schedule and it doesn’t
really affect the scheduling as such that we’re doing now.
I want to concentrate on the resource aspects of scheduling in this section to begin with.
The second message: This task has overallocated resources.
Right click for options.
That’s the one that I particularly want to look at so let’s right click and what
we get is a contextual menu, many things we can do there, but right at the top we have
Fix in Task Inspector.
Reschedule to available date.
Now if I were manually going to resolve any scheduling issues here I could do, for instance,
Reschedule to available date.
Now I want you to watch very carefully what happens if I choose that option.
Notice that the carpenter, we can see that the carpenter is going to be the person who
is overallocated because that’s the person that’s working on all four of those tasks.
Watch what happens to that last of the carpenter tasks if I choose Reschedule to available
date.
You can see that the carpenter moves out to the next available date when he or she will
not be overallocated.
So basically the second, the upper floor windows task, is now going to be later than the ground
floor doors task.
Now it may well be that that completely solves your overallocation problem, it may not be.
But one important aspect of what we’ve just done is that we have manually resolved an
issue.
We’ve gone in and said I’m going to reschedule that particular task.
Now on a small project that may be a perfectly good way of doing it and in fact even with
a big project it may be a perfectly good way of doing it.
But if you are dealing with a big project, the chances are that you don’t want to manually
intervene on every one of the overallocation issues and we’re going to talk about a more
general and automated approach to solving these problems as we go along in the rest
of the course.
But if you look at the other three tasks that the carpenter is involved in you can see we’ve
still got overallocation symbols on those three and we would have to go through now
and do the same thing on two more of those in order to completely resolve the overallocation
issues with the carpenter’s time.
Okay, I’ve put that task back to where it was.
So I’ve still got overallocation on all four of those tasks.
We shouldn’t lose sight of another way of resolving this overallocation issue and if
I switch to Resource Sheet View and look at carpenter, one of the ways of resolving this
is to change that 100% to 400% and say that I’ve actually got four carpenters.
If I now go back into Gantt View, of course, I have no overallocation because I’ve got
four carpenters.
They can all work on one task each and I’ve got no further overallocation.
That isn’t always possible and it isn’t always economical but if you can do that,
that’s a very simple way of overcoming scheduling problems.
So what I’ve shown you there are a couple of simple ways of overcoming scheduling problems.
When your projects are quite large and complex, it might be the case that you very rarely
get the sort of scheduling problems that can be solved with those kinds of simple solution.
But it is very important always to bear the simple solutions in mind.
It may well be that manually rescheduling one or two tasks or just getting some extra
resource for a period of time can solve a scheduling problem.
And rather than make the scheduling extremely complex and trying to make a schedule fit
when it’s just destined not to, just getting a little bit of extra resource or perhaps
looking for the simple solution is very often the best way of solving scheduling issues.
So now I’m back to this particular house build task at the way it was before, number
14 there.
If I again do what I did before, so right click on that and say Reschedule to available
date, it moves that task out and removes the overallocation as it did before.
But now I want to open that task up and look at the task information.
The important thing here is according to the task information on the General tab that is
still an auto scheduled task.
So although Project 2013 has rescheduled it for me, in order to remove the resource allocation
that is not the same as manually scheduling the task.
I may have gone through and manually decided which task I want to resolve the overallocation
on but it hasn’t made it into a manually scheduled task.
The reason that’s extremely important is that as I progress with this project, I add
other tasks.
I record what’s actually happened and so on.
It may be necessary for Project 2013 to reschedule that particular task again, and all the time
that tasks are auto scheduled, then Project 2013 can do a lot of the work for you in terms
of resolving any scheduling problems, including resource overallocation issues.
If I changed it to being a manually scheduled task, so if I actually clicked on manually
scheduled, said OK, and made it a manually scheduled task, then having scheduled it for
the dates it’s currently scheduled for Project 2013 will not try to reschedule it for me
whatever needs to be done.
From that point onwards this task is a manually scheduled task and it’s up to me to adjust
it.
If it finished up with a resource overallocation because it was clashing with something else,
Project 2013 wouldn’t reschedule that task for me.
I would have to resolve everything myself.
Now this is a situation that can be an advantage and it can be a disadvantage.
It can be an advantage in that if you’ve got certain tasks, certain things in your
project that must happen on a certain day or in a certain week or by a certain time
and you really want to fix those make them manually scheduled, then Project 2013 will
not reschedule them for you.
On the other hand, once something is manually scheduled, then it really does mean that Project
2013 will not try to solve problems with it by moving it for you.
So once something is manually scheduled it’s all up to you.
You can, of course, change something back from being manually scheduled to auto scheduled
but you need to be aware of which are which.
And one more thing to bear in mind, and this will also mean a little bit more to you later
on in the course, there is a way of fixing something in time even if it’s an auto scheduled
task.
I’m going to talk about constraints later on, but let me just open up that upper floor
windows task again, change it back to auto scheduled, and if I go to the Advanced tab
one of the options on the Advanced tab is Constraint type.
If I really want to force an auto scheduled task to start on a certain date, then I can
just click in here, choose Must start on, and then specify the date that it must start
on and that will also fix the start date for that task without making it manually scheduled,
but more on the use of constraints for that type of purpose later on in the course.
For the moment, I’m going to change that back to being an auto scheduled task with
a constraint of Start as soon as possible.
So as I’m sure you can already see scheduling can be quite a complex process and there are
no absolute rules in terms of what is the best way to go about it for any particular
type of project.
But one of the things that you can very often use to really substantially solve a lot of
scheduling issues is resource leveling and that’s what we’re going to look at in
the next section.
So please join me for that.