I’m currently using a lot of Microsoft Project to keep my distributed stakeholders updated since the scrum dashboard just works for the current sprint and the 2008 web access isn’t very… accessible. The stakeholders can’t get the overview they need. So, I spend time on separate Microsoft Project files with the long term plans (as described in a previous post) and I keep the product backlog in TFS.
So, I was just thrilled by the images on BHarry’s blog, describing the new features for us non programmers. Finally, I can really invite my stakeholders to keep themselves updated on the level they need.
The dashboard looks awesome! Here are two examples:
For me as a product owner, I of course long for the hierarchical work items:
If I still want to show Gantt charts, I can (if all goes well) use the upgraded Project Integration, since it conserves the hierarchy. This is the main reason I don’t use the integration today.
I’m also very curious about the Sprint planning functions
So, what more can I say: JUST BRING IT ON!
When work does not follow duration
When different resources work with different pace
When you need to track progress over time
If you need to know when resources spent time on the different tasks you can also select to work in the Resource Usage View or the Task Usage View. If you right click in the chart part you can select to add the field Actual Work. Here you can enter actual work on all assignment rows (white). I also often include the field Remaining Work in the table part so I can see how much time remains of current plan. Observe that you can on both places also choose to view the Baseline Work to see the original plan.
For some, this is when Microsoft Project gets really interesting, for most, this is when you give up using the program. The most important thing you can do is decide how much effort you want to put into reporting progress. The second most important is what you want to track.
This first post is just going to show the easiest ways: an upcoming post will cover the more complicated methods.
The simplest solution – just track percentage complete
The easiest thing you can do is that you can simply just select how much of the task has been completed.
For accomplishing this you have a field called % Complete.
If you insert this column in the Gantt chart you can simply change the value. Another method is selecting Window—>Split and change the value there:
You can also select View—>Toolbar—>Tracking. This toolbar include butcons for some different values for % Complete.
When you start changing this value you can see that something happens to your bars in the Gantt chart. They become filled with a black line. This shows the actual progress.
But how is it calculated?
Well, up until now, we’ve talked about Duration and Baseline Duration. The difference between these two values were covered in the previous session of this class but to put it shortly: the Duration value shows us the current plan and Baseline Duration shows us the plan when we started the project (or the last time you saved a baseline).
Now we add two more columns into this mess: Actual Duration and Remaining Duration.
Duration = Actual Duration + Remaining Duration
The part of Duration which is Actual Duration is % Complete. Easy as pie! Or not…
I gave the example with Duration, but you can also add the same thinking to Work, Cost, etc. You can easily insert these columns and watch the values for yourself.
So, when it comes to the easiest way to track progress, it’s simply just adding this column and change % Complete.
The easiest way to get a feeling for the project is showing Project—>Project Information—>Statistics. Her you can see the current plan, Baseline, Actuals and remaining.
Before you get cracking at completing your new project using Microsoft Project, you need to stop and think. What do you track during the project?
During the project you need to:
- Track progress, in other words: how much resources are spent and how much time did this take
- Make changes to the current plan
- Compare changes in plans and actual work with the original plan
To enable these tasks, you need to track these. And now it’s time to get back to the terms Work, Duration, Unit and Cost. The meaning of these fields are in fact:
- Work= The planned workload, according to current plan
- Duration = The planned length, according to current plan
- Unit =The planned allocation, according to current plan
If you look at other columns like Cost, Start, Finish, etc, you can see the same pattern: they are all about the current plan.
If you right click a column in for example Gantt chart and select Insert—>Column you can view the column list by browsing the Field name dropdown:
If you scroll up to B you can see a lot of columns starting with the text Baseline. If you continue scrolling to A you find a lot of columns starting with Actual. This is what they mean:
- Baseline Work= The planned workload, according to Baseline plan
- Baseline Duration = The planned length, according to Baseline plan
- Baseline Unit =The planned allocation, according to Baseline plan
- Actual Work= Actual workload, according to current reports
- Actual Duration = Actual length, according to current reports
- Actual Unit =Actual allocation, according to current reports
Baseline is a snapshot of the plan at a given time. To save Baseline, you select Tools—>Tracking—>Save Baseline. In the dialog box you can select which baseline you want to save (you can save up to 10 baselines).
Observe that you can save the Baseline for only selected tasks or the entire project.
When you click OK, the values in the current plan (Work, duration, start, finish, cost, unit, etc) is copied to the baseline columns (Baseline Work, Baseline duration, Baseline start, Baseline finish, cost, unit, etc). So, if you view one of these columns now you can see that they are now filled. You could have accomplished the same if you manually had copied the information. But this is of course a bit faster…
You can now go a head and make changes to your plan. Since the values has been copied, you can compare them later, for example in Tools—>Project—>Project Information—>Statistics.
You can now also switch view to View—>Tracking Gantt.
The grey bars are your Baseline values while the colored are your current plan.
When you switch to the Tracking Gantt you can now see that some of the bars are red. They are the tasks which cannot be delayed without delaying the whole projects. Exactly how much they can delay the project can be found in the column Total Slack. Select Format—>Bar styles and take a look at the definitions in the chart part and you’ll probably get a hang of this.
One tip for the road: don’t delete tasks, assignments, etc after you’ve saved a baseline. Since the baseline values are stored on the same rows in the tables, the baseline values are then lost forever.
Next stop in this guide will be tracking progress!
If you select View—>Resource Sheet, you can enter the costs for a resource.
Resources can be of two types: Work or Material. The difference is how costs are added. If you have a time based cost, the resource is of type Work and if you have a per unit cost, the type is material.
This means that if you have a test environment which costs per hour, the type is Work but if you buy a computer, the type is material.
You can also see that you have different rates for one resource. If you change the type to Material, you cannot enter all types.
Std rate is used when you normally assign the resource to a task.
Ovt rate is used when you specify that time is to be spent using the overtime rate. That means that even if a resource is overallocated, the Ovt is not used. You specifically have to state that overtime rate is to be used.
Cost per use is used to set a one time cost for each allocation. Observe that this a poor choice for the consultant who takes a fee per day: the Cost per use is one per assignment on a task independent if the task is one hour or one day. This is useful for example a test environment which has to be set up for each new test task.
Accrue at is used to specify when during a task the costs are added to the task: before the task starts (if you’re billed in advance), during the task or after the task has been completed (billed afterwards).
If you double click a resource you can see that there is a tab for costs. In this you can set up five different price scales for the resource. This is useful if a resource costs differently on different tasks.
When you assign a resource to a task, the planned costs can be found in a field called Cost in the Gantt chart (View—>Gantt chart). You can select to view the column by right clicking a column and selecting Insert Column. Select Cost in the Field name drop down.
You can also select to change the table to the Cost Table by Selecting View—>Table.
In the table you can see the column Fixed Cost. This can be used if you want to add a cost which is not related to a specific resource. Observe that the Fixed costs are not summarized on Heading tasks so you can add a fixed cost on all rows in the Gantt chart.
Another trick when your working with costs is that you can select Window—>Split. The form is visible on the bottom of the Gantt chart.
If you right click the form (grey area) you can select a form called Costs. Here you can see the costs and you can also specify how much of the time uses the Ovt rate. Observe that the OVT rate is never used automatically.
If you want even more control on your planned costs, you can select View—>Resource usage or View—>Task usage.
Here you can change the table the same way you change tables in Gantt chart (View—>Table) but you can also right click the White/Yellow part and select to view the OVT Cost and Cost fields.
Another thing you can do in these views is that you can double click the italic rows in the tables, in other words; the assignments. Here you can see the planned costs but you can also set which cost rate table is to be used on the assignment.
Microsoft Project Tutorial – Part 11 – Linking projects, using resource pools, sharing resources and dividing projects into sub projects
Microsoft Project Server is the enterprise solution for this problem, but if you don’t have that and just want to divide your projects into separate files and see which resources are over allocated, this can be accomplished during the ordinary Microsoft Project application. But it’s a solution if you’re a single project manager: if you are many project managers you will probably need Project Server. The reason is that only one person can have write privileges to a Microsoft Project file at the time and if you’re using a Resource Pool in the standard version, all Project files will be locked if someone is editing his project.
But if you just want to work on your own, here is what you do.
You start by creating the Resource pool. This is the file where you add all your resources and where you make edits to calendars. A resource pool is just an ordinary Microsoft Project file but you might want to give it a good name like Resource pool.
Then you add all the resources and change the default calendar and all the resources’s calendars. This is covered in earlier parts of this tutorial, but you can find the resource list in View—>Resource Sheet.
Be sure to save. And now you have a resource pool!
When you want to use the resource pool, you create a new project file and save it. You should make all the changes to the settings you normally do on project files: the only thing you don’t have to do is add the resources.
Before you start assigning resources, you need to open the Resource pool file. Then you make sure that the new project is active and then you select Tools—>Share resources. Select Use Resources and the Resource pool in the combo. Confirm by clicking OK.
If you view the Resource sheet in your new project, you can now see the resources from the resource pool, and you can start assigning resources, for example.
This can be done again for multiple projects and in this example, I’ve created yet another project file with the tasks and assignments below (observe that I used the resource pool for both Project files.
If you make any saves when you’re using a resource pool, the dialog box will look slightly different. You will be prompted to save all connected files. And if you have two files connected to a resource pool, you will have opened all three files, which mean that saving affects all three projects. Now you can imagine the problem if you are two project managers…
If you activate the Resource pool, for example using the Window menu, you can see that eventual over allocations are visible in Resource list:
But if you open the Gantt chart, the task list is empty. Most of the time, you want to see all the projects in the Resource pool, so what you do is that you select Insert—>Project:
Select the Project file and confirm with OK.
Now you can see the Project in the Task list and if you expand the Project you can see the individual tasks:
Take a look at the ID column: there are two ID 1. The reason is that the first 1 is row nr 1 in the Resource pool and the second 1 is the first row in the Project file Project1. Confusing…. There is a column for Project so you can see to which project a task belong. And this is important if you have many inserted projects.
Before you add another project, be sure to collapse the current projects, otherwise there is a risk that you insert the new project in the already inserted project…
When you’ve inserted a number of projects, you can start working the file like you were just using a single project. You can insert or edit task, change assignment, etc. You can even make links between tasks in different projects:
If you close everything and then try opening one of the files, you are prompted to specify which files you wish to open. Depending on if you’re opening the resource pool or one of the other projects, the texts might differ, but the important thing is to be able to save changes, you need to open all files.
In this case you should select the second option and confirm.
When you’re using links between tasks in different projects, you can see linked tasks from other projects. They have grey bars in the Gantt chart and if you open the Task Information dialog box, there are some other attributes.
If you work with multiple project files, remember that this means that you should not have the same task names in different files. If you for example have the task Project end in four projects, which one does an external task refer to? Yes, you can view the Project column, but it’s much easier to select better task names.
If you’ve followed the tutorial and understood the previous exercises, I hope you’re starting to feel like you’re getting the tools you need to create a project plan using Microsoft Project. We’ll get into costs and what happens during the project later, but you should be able to use Project for your planning now. So, get cracking. It takes about five project plans before you’re really secure about what you’re doing so be prepared that it will feel hard in the beginning. But hang in there and get back to me if you run into problems!
But, I’m going to cover some really nice tools which are available for you to help during your planning (and also during later stages of your project). We start with the Gantt chart. If you select Window—>Split you can see a form on the bottom part of the screen.
This can be used to change the values on the top selected row. Just select the row you wish to edit, make your changes and confirm by clicking OK. As you can see, this form has a huge advantage over the Assign Resources Dialog box: you can specify the number of hours per resource! So, now you can really play with Duration, Work and Unit. You can also edit the links to predecessors in the right column.
If you right click on the grey area you can change form using the contextual menu. You can for example choose Predecessors and Successors:
This is excellent if you have many tasks with complicated dependencies: you can directly see all connected tasks to the selected task.
Observe that the forms are actually views and besides from seeing the form in the bottom part: you can select the blue line at the absolute left and select another view in the View menu. This can be really confusing for the beginner, so skip that right now and be sure to select Window—>Remove split before leaving the Gantt chart view.
One other view that is really interesting when you’re working with resource planning is the Resource usage view, selectable from the View menu:
Here you can see all the resources on the left. Under each resource you can see which tasks they’ve been assigned to and how many hours are planned. On the right side you can see when these hours are to be spent. Observe that this is a time line so if you double click the dates on the top you can change the scale:
You can also hide the assignments (the tasks under each resource) and get something like this:
Doesn’t that look very much like a weekly schedule? Yes it does… Also, observe that all the white cells are editable, so you can change the assignments on a specific date or week. But remember that if you change a 20 to a 10, you remove 10 hours from that task and you’ll have to add that on some other date if this is applicable.
If a number is red on this list it simply means that on at least one minute of the period, the resource is over allocated. But you shouldn’t stare yourself blind on the color. Look at the numbers instead.
You can also double click rows on the left side. If you double click the row of a resource, you can edit the resource details:
If you instead click one of the assignment rows, you can edit the assignment details instead:
(Yes, we’ll get back to costs later…)
Resource usage view is one of the most useful views, so get to know it. But if you look at the View menu, you can also see that there is a Task Usage view. Let’s take a look on that:
You might have guessed correctly: it’s the same as resource usage view, the only difference is that the grouping is per task instead of resource. Otherwise, it works exactly like Resource Usage.
So, when do you use which View:
- Use Resource Usage when you want to see when the resources are booked or available.
- Use Task Usage when you want to see when we plan to work on specific tasks and when stuff are planned to be finished.
One of the dreams of most project managers starting to work with Microsoft Project is being able to handle part time resources and to be able to get an idea of how much resources are needed. But few get this to work in real life.
Well, because it’s not as easy as you might think. Before you even attempt at this task, be sure to read and understand the concepts of Work, Duration and Unit. This is described in part 1.
To just make clear: Unit is the part of a resource’s time which is spent on a task. This means that if Unit is 50% on a task, that means that the resource spends half of his working time during the duration on that task.
If you remember from part 2, we specify working time in Tools—>Options and Tools—>Change working time dialog boxes. If you’ve skipped this chapter before, read this before you continue. But what we did in that chapter is that we set the default working time for our tasks and resources. But all resources have their own working time. For example, resources are off on holidays during different time periods.
If you select View—>Resource sheet, you can see all the resources and their details:
On the list there are some values you can change:
- Name – should be unique
- Type – specifies if cost is per hour (work) or per item (material). Remember that materials which have an hourly cost is work but items which you buy per item is material. This is why a leased computer can be considered Work while a bought computer is Material.
- Material Label – is set if Type is set to Material. Can be used if you want to use other labels than name.
- Initials – in many cases you can select between viewing the whole resource name and the initials. But make sure the initials are unique for each resource.
- Group – can not be used for assigning to a resource group but can be used for filtering and grouping in print outs and views.
- Max Units – number of resources
- Std rate – cost (per hour if Type is Work) if assigned to task
- Ovt rate – if you manually specify that the overtime rate is to be used, this rate is used on a specific task
- Cost/use – every time you assign a resource to a task, one instance of this sum is added to the task.
- Accure at – is only used if you track how the costs are building up through the project. If Prorated is set, costs are added when they are used. If At start is set, all costs are added upon task starting.
- Base Calendar – which calendar the resource working time is based on
We’ll go into costs later, but if we focus on working time, we have the columns Max Units and Base Calendar. Max units can be used to set how many resources a resource name refers to. This means that if you have the resource Tester, and you have two testers, you can set this value to 200%. In other words, at one given moment, you can have the maximum of 200% total unit assigned without the resource becoming over assigned.
What? Don’t I use this to set if a resource is working part time? Well, you could do that but you won’t be happy if you do so. The reason is how Max Units work. What it does is that it compares total figure of Units at all moments and sees if it’s over or under the value in Max Units. If the sum is more than Max Units, the resource is viewed as red in the resource sheet and you are given the warning that the resource is over allocated. But isn’t that nice? Well, it would be if Microsoft Project looked at whole days or whole weeks. But it looks at minutes. Just test this:
- Add two tasks (not linked, should happen at the same time)
- Set the Duration of the tasks to 1 min
- Assign the same resource to both tasks
- View—>Resource sheet
As you can see, the resource is over allocated. One minute is enough.
So, what happens if you set the Max Units to 50%. That means that each minute, that resource can only participate 30 seconds before she is considered over allocated. You can say that she can only participate on half a meeting.
So, what you do is that you double click the resource and activate the Calendar tab. Here you can set the working time for that resource. So, if a resource is working half time, you might set afternoons off or something like that. Remember that if you change the working time to afternoons, assigning a resource 100% means 100% of that resource calendar time which is the afternoons.
If you have a lot of part time resources, I can be an idea to create specific calendars for part time resources (see part 2) and set the Base calendar of the resources instead. This also makes it easier to see on the Resource Sheet.
Even if a resource is working full time does not mean that you don’t set the individual calendar. You should still add time off so you don’t plan tasks when they are not available.
Complicated? Yes, this is one of the trickier parts of Microsoft Project, and I suggest that you take some time playing with calendars, units and Max Units.
But this chapter was also about Resource groups. The Group attribute on Resource is just an attribute, so if you do have a resource group, you change the Max Units value instead:
Also, you can double click a resource and set different values on Max Units. This is very good if you have different numbers of resources during specific time periods.
If you have a lot of tasks you will probably outline them like this:
Scope is here a heading for the other tasks. To achieve this, you will have to select rows 2-6 in the example below:
The other button is used when you select the subtasks of a heading task you can click . Then the task above will cease to be a heading task. In other words, you can not make a task a heading task but by indenting tasks below, a task turns into a heading task…
Some more tips on outlining: remember that you can have multiple levels! Also, be careful on how you handle heading tasks. You should never assign resources to a heading task and the duration is always calculated on a heading task. If you link a heading task to another task, all the subtasks are affected.
If you want to make heading tasks a little bit more clearer, select Tools—>Options and click on View tab.
You can select Show outline numbers and/or Project Summery task. The result will look something like this Row 0 is the Project summery task):
When I first started using Microsoft Project, I could not understand how the thing worked. I didn’t grasp the database. And since I come from the database world, I started exploring the database.
Microsoft Project is based on a JET database and if you export the thing to Microsoft Access (you can use File—>Save As and select that) you can see which tables and columns are present in the database. But you cannot see the connections and you cannot see how the different columns are calculated.
Right now, that is not important, but if you’re into details you can start exploring the database.
For normal users, you can work from inside Microsoft Project.
If you look at a view (this concept was discussed in Part 6) like Gantt chart view, the view is based on a table in the database. In most cases some of the columns are also visible, like in the Gantt Chart:
If you look at this table you can see that the table has a number of columns and a number of rows. If you double click the column name you can see which column is displayed and how it’s displayed. Observe that the Title is the name which is displayed while the field name is the name in the database. If you for example double click the title Task Name you can see that the column is really called Name and that Task Name is just the label. So, if you go searching for the field, you need to find the column Name.
If you right click a column you can in the contextual menu select Insert Column and Hide Column. Insert is really not a good name: you unhide a column since the table in this case have hundreds of columns. No, I’m not kidding. Scroll the Field name dropdown and see for yourself.
By inserting or really unhiding columns you can see more of the information in the view you are looking at. Some of the columns can be used to enter data manually while others are calculated manually. Many of the columns depend on each other and this is one of the biggest challenges of becoming a Microsoft Project expert: knowing which field to use when and how different fields affect each other. You have seen one example of this in part 1, when we discussed Duration, Work and Unit.
Another way of viewing and changing information in columns is if you double click a row in a table. A dialog box is opened and you can change values. All the fields have responding fields in the table and if you go back to Column Definition you can find all those fields there.
To make it easy to switch between which columns are to be displayed, you can switch between tables in most of the views. These are not database tables but rather a saved list of columns. If you right click the empty area over the ID (where the title of the ID field would have been displayed if it hadn’t been kept empty) you can see a contextual menu where you can select tables. But remember that what you really do is that you fast hides and unhides different columns. You are always viewing the same database table. Another way of changing view table is selecting View—>Table. Here you also have the option of More Tables:
Here you can see a number of extra tables and you can also edit and create copies. If you want to play some with this you can select one row and click Copy:
Here you can change the name, which columns are displayed and how. You can also by selecting Show in Menu make the table more accessible by user not having to go to More Tables dialog box to find the table. Here you can also specify which date format is to be used in this specific table. You can also unmark Lock First column. This is most commonly used if you choose not to display the ID column. If this option is selected, the first column is always printed and non editable (like the ID column). Confirm with OK when you’re ready.
If we go back to the View definition Dialog box, remember that you when you define a view, that you also specify which table is to be displayed.
Before you have some fun playing with the tables, remember that if you insert or hide columns manually, you change the table definition (for database people: not the database table but the view table) so if you insert a column and then check out the table definition, the added column can be found in the definition.