Critical Path - predecessor only based on resource RRS feed

  • Question

  • Hi,

    I'm trying to build a plan in which the CP (Critical Path) gets visible. The way I've set it up now, the only task belonging to the CP is the last task (not the end milestone), with the latest finish date. I understand why this is happening. All tasks between the first and last one should have at least a predecessor and a successor. 'Problem' is that the task don't really are dependent of eachother and most of them in a summary could start at the same time. I will try to explain.

    The start of each task or even summary of tasks is dependent of one of two things: a milestone (in which another company delivered all the info needed so the resource can start with the task) or the availlability of a resource. The last meaning a resource can't work on two tasks fulltime at the same time and therefore have to be scheduled after eachother. My thoughts were to link the task based on the resource. This link will represent the problem of a delay during the first task very well, since the second task gets delayed as well. Problem is when I assign another resource to the second task. Because of the link the task wont get rescheduled earlier (if possible).

    Basically I have 5 summaries with tasks and one summary with 3 milestones. Milestone one starts summary 1 and 2, milestone 2 starts summary 3 and 4, and milestone 3 starts summary 5. I have 3 resources for the total of 25 tasks. So the tasks are not only dependent on the milestone, but also on the availlability of resources. The summaries are nog dependent of eacht other, just on the milestones.

    • Edited by Peperbusse Wednesday, November 26, 2014 12:05 PM
    Wednesday, November 26, 2014 11:22 AM

All replies

  • Hi Peperbusse,

    The issue here is that the CP calculation assumes that there are no resource constraints, and this is clearly not applicable for resource loaded schedules.  Have a look at Projec Pro's Resource Constrained CP tool. 

    Ben Howard [MVP] | web | blog | book | P2O

    Wednesday, November 26, 2014 12:26 PM
  • Hi Ben,

    Thanks for your response. Do you mean that Project (without addin) doesn't handle the critical path well when there are resource constraints?

    Is there a method to build my plan otherwise so it is possible to show a correct CP?

    • Edited by Peperbusse Wednesday, November 26, 2014 12:45 PM
    Wednesday, November 26, 2014 12:43 PM
  • Let's be clear, in the Critical Path Standard v1.0, resources are not discussed.  CP is a function of duration and sequencing, so Project is doing exactly what the standard defines here.    

    Project Pro Corp have been instrumental in driving for Critical Path Standard v2.0, and have written this addin tool for Project.  I'm not sure of whether CP2.0 standard is ratified.  

    Ben Howard [MVP] | web | blog | book | P2O

    Wednesday, November 26, 2014 12:48 PM
  • You are mis-understanding what the critical path method is. It only has two inputs which are duration estimates and predecessors/successors. Resources don't come into it. This is not a deficiency or a defect of the CPM, it is just the way it is. It is important to establish the shortest possible duration for the project if resource limitations are not an input. This is what the CPM is for. The next stage of the problem is to account for the resource limitations, and this can best be done with leveling.

    Thursday, November 27, 2014 1:16 AM
  • Hi Peperbusse,

    As mentionned by my colleagues, the critical path is just about duration, dependencies and constraints. If you add the resource dimension then we are talking about the critical chain method, also called CCPM or Critical Chain Project Management (google "Eli Goldratt" and "Theory of Constraints fame", you'll find a lot of reference on Internet).

    Honestly I haven't heard of any CCPM implementation with Project, or at least I did not do it and don't see an easy way to do it.

    Hope this helps,

    Guillaume Rouyre, MBA, MVP, P-Seller |

    Thursday, November 27, 2014 2:26 AM
  • So I have a summary with 3 milestones, 5 summaries with 5 tasks each (so 25 tasks total) and an end milestone. Each summary with 5 tasks is dependent on one of 3 milestones, say milestone 1 for summary 1 and 2, milestone 2 for summary 3 and 4 and milestone 3 for summary 5. The end milestone is dependent on task 25 (last task in summary 5). I have 3 resources to do all the tasks, so after leveling all tasks start on difertent dates. This situation reflects my situation best. When I understand correct, there isn't a CP?!
    Thursday, November 27, 2014 11:08 AM
  • Hi Peperbusse,

    What to say, there is always a CP in a project, but resource levelling won't have anything to do with it. Perhaps you can post a image of your gantt chart, with the columns similar to the one below..  You'll see below that T1 and T2 have been resource levelled, but only T2 is critical.  T3 and T4 haven't been resource levelled, rather I have linked them, and both are critical.

    Ben Howard [MVP] | web | blog | book | P2O

    Thursday, November 27, 2014 11:18 AM
  • Hi,

    I can't upload images or links on this forum because I'm not verified?!? So I'll paste a chopped link here. Just remove the space in between: i62.tinypic. com/zvx944.jpg

    This is how I've got it all planned right now. As you can see, only the latest milestone is part of the critical path. I understand why.

    Is the only right conclusion here that Project isn't the right software here and I need to look for CCPM software instead?

    • Edited by Peperbusse Thursday, November 27, 2014 12:49 PM
    Thursday, November 27, 2014 12:27 PM
  • hi, so for everyone's benefit, here is the image.

    There is a CP, but it only consists of task 35 (the End Milestone).  Ultimately because you have no dependencies, you cannot use the CP method to obtain what you want because the activities are not dependent on each other.  You need to look at the theory of constraints as discussed earlier.  However, if you review the activities performed by AWK, these form the longest path through the network.  You can review this by applying a filter for each resource in turn.

    Ben Howard [MVP] | web | blog | book | P2O

    Thursday, November 27, 2014 1:00 PM
  • Hi Ben,

    Thanks for your updates! The longest path of activities by the same resource doesn't tell me that much I guess.

    I did some reading on CCPM and was confronted with a loth of other project management methods. That's certainly making things no easier for me. I see that the way I set up my plan in Project now doesn't give me any valuable information. I'm struggling to see if another method and/or software would suit the company's method of working better. I'm refusing to believe that the lack of dependecies between the tasks is reason I can't make a plan that gives me the information I want: which tasks can delay without delaying the end deadline? 

    Thursday, November 27, 2014 2:46 PM
  • Hi Peperbusse,

    If I was to approach this, I would do the following - but, this will take some learning on your side and an open mind. 

    1. Click on the Format Tab, and select Project Summary Task.  This gives you the current scheduled end date of the project.

    2. Remove the end milestone, UNLESS there really is a dependency between Group5/Task5 and the End task.

    3. Use the Filter "Using Resource" and select a resource.

    4. Compare the latest finish date of the last task in the resource list, with the Project Finish date as shown on the Project Summary task.  The difference in between the dates shows the duration of which ANY of those tasks can be delayed, without impacting the end date of the project.  If the difference is 0, then the tasks you are seeing cannot be delayed; make a note of this resource.  Now, using the autofilter feature, select all of the other resources.  This gives you the list of tasks you can delay without delaying the end date...

    5. There are further refinements you can make, and you could automate this date calculation, you could automate the filters, you could show each resource in a separate Window within MS Project.  There are lots of options, but we are going beyond the sort of help we can give for free in this forum.

    Ben Howard [MVP] | web | blog | book | P2O

    Thursday, November 27, 2014 4:18 PM
  • Hi,

    Your final question is intriguing because the answer is: "you can remove ANY task without delaying project finish.. as long as you can use the time freed up to usefully occupy the resource". Indeed, finish is defined as total work by the reource divided by its availability and simply does not depend on the sequence!

    Use Resource leveling to see realistic end dates. That's as good as it gets. Since sequence is not relevant, there is no such thing as "a path" I'm afraid.


    Thursday, November 27, 2014 8:42 PM
  • No. The only right conclusion here is to not make the mistake of linking the summaries. Even though the software allows it, it is not a good idea. The summaries are only a way to organise the tasks into appropriate groups of task. Only a task can be a predecessor or a successor. Your CPM network has to consist of tasks linked to tasks, which is what you will see in any textbook or any example which pops up when you search for CPM on Google.

    One thing we can't see is the date constraints which I am sure are in there. Date constraints will obscure or distort the critical path for sure. Constraint type and constraint date can be inserted into the table as columns.

    I can reproduce this in 5 minutes with the correct predecessor links and if you send an email address I will send it to you. I will do it now and post the image.

    Friday, November 28, 2014 5:00 AM
  • I totally understand all the comments. Thank you all!

    @Trevor: I know I need to constrain the tasks by linking them to eachtother. Fact is that say milestone 1 is not necessarily the start date for just task 1 of summary 1. It's the start for all those task. They could start at the same time, were it that we don't have/want the resource capability to do just that. We need to spread the work, because otherwise the resource don't have anything to do for the periods between the projects. I'm very curious what you'll come up with. I'm at my work right now and can't download anything, so my mail wont make much of a difference. I guess a picture will do the job and want to thank you in advance.

    Friday, November 28, 2014 6:29 AM
  • Almost a perfect match, except I think there are some date constraints and some exception days that I need to know from your file.


    Friday, November 28, 2014 9:18 AM
  • Hi Trevor,

    You miss the holidays. But your point is taken. I tried this aproach too this morning and a critical path does show. Only downside with this is when replacing a resource. It keeps linked to the previous end of the task that was performed by the resource before the change, while it could start earlier. Leveling wont make any difference then. But I think I can manage to make clear to te projectmanagers they need to change the link after they assigned a new/extra resource. Guess it will have to do. Thanks so much for your time and effort.

    Friday, November 28, 2014 10:01 AM
  • Trever's example mimics what you already have....  But, as you said previously, each group of tasks can only start when an external company has delivered info to you.  If you represent these external constraints and Milestones, and create a dependency to this MS to the tasks in the group (and for good practice, link these to an output or finish milestone, and then Level across all resources, you will have an effective schedule, which you can update by changing the input milestone start dates, and then relevelling.  If you don't want a task to be levelled (because the resource has already started it or whatever, set it's priority to 1000). The only constraints you should have in your plan are the input milestones, and levelling will respect any dependencies.

    Ben Howard [MVP] | web | blog | book | P2O

    Friday, November 28, 2014 10:04 AM
  • Hi Ben,

    I'm gonna find out which way suits me best. Thanks a lot for your effort!

    I posted a new thread also, about capacity planning. Guess I allready know the answer, but want to be sure.

    Friday, November 28, 2014 10:59 AM
  • Show me the calendar so I can see the holidays, and then I will make the necessary allowance for them.

    Also, I will remove all of the date constraints. I am guessing that 1,2,3 are the events when you expect to receive the information from the other party, which makes the tasks 1 - 5 in groups 1 - 5 possible. Also, the tasks in the groups are not predecessors/successors of each other, so should not be linked. This will indeed mean that tasks 1 - 5 in each group will be scheduled to start asap immediately after their common predecessor, and there will be resource over-allocation. Then you can level, choosing the raw leveling without any of the fine tuning options, or with some combination of the fine tuning options. Generally, I go for the raw leveling first.

    This is what you have before leveling.

    A... and this is what you have after leveling, without any options checked and no priorities assigned:

    Friday, November 28, 2014 11:14 AM
  • Hi Trevor,

    The holidays are from 12-22-2014 till 1-2-2015 (Christmas holiday) and from 7-13-2015 till 8-7-2015 (summer holiday).  Working days from monday till friday, weekends off. 8 hour workdays. Can't upload anything so this is the fastest solution to give you the info you need. Thanks again!

    Friday, November 28, 2014 12:03 PM
  • Holidays marked as exceptions in the project calendar ("copy of standard", assigned as project calendar in project information).

    Leveling by priority with all fine tuning options off.

    Friday, November 28, 2014 1:25 PM
  • Hi Trevor,

    I'm having hard time to see what I gain with your approach. I still don't have a critical path, except for that red task which has the latest finish date. So I think we can conclude that with this kind of task, with a lack of indepencies between them, wont ever be able to show a CP. I guess that's the reality after all.

    There's one other thing. The end milestone is successor of all tasks and milestones (except summaries). It's a lot of work to fill this out and I really can't see any advantage.

    I know this might not be the right place to ask this, but is there any project management software for professional use that can do this kind of resource loaded planning/critical chain things and also has the ability to do capacity planning?

    I want to thank you and all the others for all your effort and time! Great to have people like you on a 'forum' like this.

    • Edited by Peperbusse Friday, November 28, 2014 1:52 PM
    Friday, November 28, 2014 1:32 PM
  • Yes, it's MSP university in here.

    Point by point: The original CP is there, it takes a starting milestone and a finish milestone to see it. In yours it is just a bit different looking, mainly because of those two date constraints at line 3 and 4 so 3 is on the CP and there is just the milestone and the one task at line 33 that are on it. And I see now I did not light it up or show the slack column. You have the CP before you level. Once you level, tasks get scheduled according to resource availability, ie delayed later than their CP dates, rather than according to the durations and strict predecessor/successor relationship. So you could say that the CP disappears, but the CP is still buried in there after you level, it's still the same as it was to start with, and you still have to pay attention to it. You end up with two versions of the file, leveled and unleveled. Knowing the unleveled CP offers the chance to swap out resources so that leveling does not cause such severe leveling delay, which means you get closer to executing the project at the CP, approach it but never get to it if there is any over-allocation. If there was no resource over-allocation, you could work right at the CP.

    The finish milestone with the full set of tasks as predecessors is just something I do, to make double sure that every task is on a path from the start to the finish. You can't be sure of the CP if you don't do this. It is very quick to do, I just type in the full list, separated by commas, into the cell, left hand on the comma and right hand on the number pad: number comma number comma. I had a beginner working with me and he couldn't see the advantage either but he went ahead and did it anyway and now he sees the advantage.

    I am not a fan of Critical Chain.

    Please explain what capacity planning is. All planning is ultimately about ensuring that the resources get assigned to get the tasks done. Where does capacity come in?

    Friday, November 28, 2014 3:45 PM
  • This is grouped by resource and sorted by start. It says something about "capacity", and "capacity planning" follows from CPM, and it makes sense that it only makes sense to address resources assignment and over-allocation after the CP network is correct. It is obvious that if AWK can be replaced by AdD and AS on the later half of AWK's tasks this project could be finished sooner, but still not as early as it could if there was no resource over-allocation and you could work on the CP, and to the CP earliest finish 30/01/2015.

    Saturday, November 29, 2014 12:27 AM
  • Thanks for your responses Trevor.

    You asked about the capacity plan. They used to make a spreadsheet in Excel in which they filled out all the work to be done and estimated how much time each week it would consume without assigning a resource. If you sum up all the hours during the same week, it was visible how much FTE were needed. Off course they knew how much FTE they really have availlable so they could compare the two and decide to call in some on-call employees or send some home. I found out that this overview could still be done with Task Usage f.e. If you make a timescale of weeks and use the hours format for work, you only have to devide by 40 to see the amount of FTE needed. Advantage in this for Excel is that you can just do this by a formula.

    Monday, December 1, 2014 6:39 AM
  • Hi Peperbusse,

    In the Project Options, set the Work to Days, and you'll find the Work value displayed in Days, which for you will define FTE.

    Ben Howard [MVP] | web | blog | book | P2O

    Monday, December 1, 2014 6:48 AM
  • Actually, if I set it to weeks it will show me FTE. Like 2 weeks of work is 2 FTE (40 hours/1 week each).

    • Edited by Peperbusse Monday, December 1, 2014 7:23 AM
    Monday, December 1, 2014 7:18 AM
  • Hi,

    Maybe I was being too helpful.  I thought your issue from the previous post was that "Advantage in this for Excel is that you can just do this by a formula."  By switching the work to display in Days, this is also done for you in Project, regardless of the timescale being set to days/weeks/months etc.  Also if you switch to Resource Usage view you will find that this is displayed by Resource.

    Ben Howard [MVP] | web | blog | book | P2O

    Monday, December 1, 2014 7:37 AM