locked
Critical Path Breaks up! RRS feed

  • Question

  • Hello MVPs,

    A challenging problem, for me atleast.

    To put it in simple terms:-

    --- 10 tasks all linked to FS, 5 day duration, 1 resource, Standard calendar & Base calendar (THG_Cal-7 in file) of M-F 5d x 8hrs
    --- All activities in Red critical path, so far so good, please see attached file.

    --- Once I change the calendar of Act-5 in the middle to Cal-2 (20hr x 7d), the critical path breaks up!

    My querries are:-
    1. How does MSP calculates critical path, based on Project Calender, Elapsed time, Task calender?
    2. Is it possible in MSp to allocate calenders to logical links like Primavera P6 or other scheduling software
    3. Why MSP calculates Total slack as 6days for Act-5, which means based on Task calender not Project calender?
    4. Lastly Whats the wayout to indicate correct critical path incase your programme has >1000 activities?

    Your comments would be much appreciated.

    Cheers!


    Friday, February 3, 2012 10:04 AM

Answers

  • Hi LS,

    As I understand what you have done, the initial assignment of Act-5 is with one resource working for 5 days Duration of 8 hours each.  This equals 40 man-hours of Work.  Then you changed the calendar to 20 hours per day, so Project calculates that the original 40 man-hours of Work will now be completed in 2 days Duration using the new calendar. I now suspect that the next task is Constrained to start after the original 5 days Duration had been completed - thus you have 3 by 8-hour days of slack, hence the previous set of tasks are not now critical.  I suspect the constraint was caused by you entering the Start Date of the following task, thus setting a Start No Earlier Than constraint.  Project is doing what it should.  Try inserting a column for Constraint Date and Constraint Type, and delete all constraints from there.  The Start and Finish Dates of all tasks are calculated by Project and should not be entered - the logic links take care of that!.

    FAQs, companion products and other useful Project information can be seen at this web address:  http://project.mvps.org/faqs.htm

    Hope this helps - please let us know how you get on :)

    Mike Glen
    MS Project MVP
    See http://tinyurl.com/2xbhc for my free Project Tutorials

     

    • Marked as answer by Mike Glen Friday, March 9, 2012 5:37 PM
    Saturday, February 4, 2012 5:02 PM

All replies

  • Critical Tasks are identified by Microsoft Project as being Critical if they have zero or negative total slack.

    You cannot apply a calendar to a dependency - you can however show lag periods using elapsed duration, add the e prefix to the lag duration. For example FS+2ed would be finish to start with a lag of two elapsed days. The e prefix ignores non-working time, be it evenings weekends or any other non-working time in the base calendar for the project.

    Watch out when it comes to task calendars - Microsoft Project applies task calendars to the task and also to any lag the task may have from predecessors which can sometimes cause real problems. If you want to employ elapsed durations in dependencies you may have to use " dummy milestones" to sit between the predecessor and the task with the calendar assigned to it.

    I have not had a chance to figure out what you have a peculiar total slack figure on Act5.

    The Critical path is not a function of the volume of tasks in your schedule, sometimes the critical path can diverge and converge or even be interrupted due to task calendars and constraints. If you have paralell sequences of tasks in your project electing to have project calculate multiple paths may be a good idea, it will highlight where you may have tasks with no clear successor. This option is available from the Options>Calculate tab in Project 2007 or File>Options>Advanced in Project 2010


    Dominic Moss MAPM Microsoft Certified Technology Specialist Wellingtone Ltd - Your Project Management Partner - Certified Microsoft Partner Specialising in EPM/PPM - Corporate Members of the Association for Project Management [APM] - Members of the Recruitment & Employment Confederation [REC] www.wellingtone.co.uk http://www.wellingtone.co.uk/blog Subscribe to The Wellingtone Project Management Newsletter Join the thousands of project management professionals who receive practical, straight forward advice, templates, tips and expert articles every month.
    Friday, February 3, 2012 10:57 AM
  • Hi,

    First, let me expolain that when a task has either a Resource attached (which inevitably has a resource calendar) and/or a task calendar, Project calendar will no longer influence the planning of the task: it will simply no longer be active.

    Project calculates critical path based on the applicable calendars, the links AND THE CONSTRAINTS you put on the tasks.

    And although you hide the indicator column in the view you publish, I'm pretty sure you put a consraint or a task calendar on Act 6 (maybe by entering a start date); if not the start of Act 6 would closely follow the finish of Act 5 - there must be a reason for the gap. This gap, in turn, implies that Act 5 can finish later than its current plan, so it has slack, and so have its predecessor, hence the critical path is "broken"

    For question 2: it is possible to use tak caledars and resource calendars, not calendars on links. Why? Because that is how it is programmed :-(

    Lastly, Project calculates the "correct" critical path within its logical rules, even for large files. Positive slack means not critical (unless in the options you set a positive limit for total slack)

    Greetings,

    Friday, February 3, 2012 11:11 AM
  • LS786,

    Let me add to discussion regarding Project's method of calculating the critical path.  Unfortunately, this is the Achilles heel of MS Project.  The definition of "critical path" is "the longest path through the network diagram, which completes the project in the least amount of time, and has the the least amount of float" (usually zero).

    MS Project does not always identify the complete critical path, it identifies critical tasks.  As Dominic pointed out, by default this is set to marking tasks as critical that have zero days (or less) of total slack (float), but you have the option of setting this to any whole number.  You also have the option of Project to calculate multiple critical paths (which I recommend should always be turned on). 

    There are a couple of add-ins on the market that you can use to ID the true critical "path."  I have not used any of them so I cannot comment on their effectiveness.  I will say that this is where an experienced project manager earns their pay - knowing the difference between what MS Project says and reality.

    Regards,


    Gregg D. Richie, PMP, MCTS; Author, Microsoft Project 2010, Microsoft Official Academic Course Series
    • Proposed as answer by ScrumSmart Monday, May 12, 2014 4:28 PM
    Friday, February 3, 2012 6:26 PM
  • Gregg,

    I am intrigued by the statement that Project does not always correctly calculate the critical path. Having read your post I guess there could be a degree of hair splitting on the difference between Critical Tasks and Critical Path. For expediency I rely upon the following definition:

    "Critical tasks are the tasks that together determine the overall duration OR the end date of your project, they are the tasks that if delayed dealy completion and conversely if they finish earlier can result in an earlier completion date. The Critical path is not fixed and can change if change is introduced to the schedule."

    Consequently there may not be a Critical "path", if you had a task late in the schedule that is constrained and cannot start before a specific date it and its successor tasks could be critical whereas predecessors would not be critical as they could be delayed up to the constrained date without affecting the end date of the project.

    I would be interested to learn more from you about the deficiencies of Microsoft Project in its calculation of the Critical Path.

     


    Dominic Moss MAPM Microsoft Certified Technology Specialist Wellingtone Ltd - Your Project Management Partner - Certified Microsoft Partner Specialising in EPM/PPM - Corporate Members of the Association for Project Management [APM] - Members of the Recruitment & Employment Confederation [REC] www.wellingtone.co.uk http://www.wellingtone.co.uk/blog Subscribe to The Wellingtone Project Management Newsletter Join the thousands of project management professionals who receive practical, straight forward advice, templates, tips and expert articles every month.
    Saturday, February 4, 2012 10:16 AM
  • Hi LS,

    As I understand what you have done, the initial assignment of Act-5 is with one resource working for 5 days Duration of 8 hours each.  This equals 40 man-hours of Work.  Then you changed the calendar to 20 hours per day, so Project calculates that the original 40 man-hours of Work will now be completed in 2 days Duration using the new calendar. I now suspect that the next task is Constrained to start after the original 5 days Duration had been completed - thus you have 3 by 8-hour days of slack, hence the previous set of tasks are not now critical.  I suspect the constraint was caused by you entering the Start Date of the following task, thus setting a Start No Earlier Than constraint.  Project is doing what it should.  Try inserting a column for Constraint Date and Constraint Type, and delete all constraints from there.  The Start and Finish Dates of all tasks are calculated by Project and should not be entered - the logic links take care of that!.

    FAQs, companion products and other useful Project information can be seen at this web address:  http://project.mvps.org/faqs.htm

    Hope this helps - please let us know how you get on :)

    Mike Glen
    MS Project MVP
    See http://tinyurl.com/2xbhc for my free Project Tutorials

     

    • Marked as answer by Mike Glen Friday, March 9, 2012 5:37 PM
    Saturday, February 4, 2012 5:02 PM
  • LS786,

    To continue the discussion with respect to question 3 your scenario is to some extent possible.

    Presuming that your working times for THG_Cal-7 is 08:00-17:00 and the 20hrs THG_Cal-2 is from 18:00 til next day 17:00 with a total of 3 hrs break somewhere in between (the start at 18:00 and finish at 17:00 for Act-5 indicates these values) you will get 6.63 days of total slack for Act-5 without any constraints at all.

    This is caused by the way how a day is defined in your Options (under Schedule) and in this case it is 8 hrs. Nothing to do with calendars. Slack values are purely stated - not calculated - by how many hours a day is defined. In your case you can delay Act-5 52 hrs (6.5x8), whereof 40 hrs (=5 days) is to be found on Saturday (20hrs) and Sunday (20hrs) and the remaining 12 hours somewhere in the night between Fri. and Sat. + Sun and Mon.

    The problem I have with your 6.5 days and not 6.63 days is that the numbers of hrs. from 17:00 to 08:00 next morning is 15 and 15/24=0.63, not 0.5.

    Maybe you can give the working times for both calendars so this - hopefully - could be explained.

    Regards,

    BJ   

    Monday, February 6, 2012 12:54 PM
  • Dominic Moss,

    The idea that Critical Path iquals zero float is something that was created when there was found the first solutions to the problem: How long will my project take to be finished;

    Later analysis discovered that are many situations not covered by the way CPM calculates FLOATS, based in the step-backwards from last date and only through a series of tasks connected between each other.

    Therefore, in several situations - in special when there are resource leveling - MS-Project looses the ability to perform the Critical Path identification as it does exclusively with the Critical Path definition from the CPM.

    I have been debating this topic for over 10 years! There is never a consensus.

    However, there is a proof that the concept of Critical Path is broader than before when you see the late changes from PMBOK from 3rd edition to 5th edition.

    Third Edition says:

    “Critical Path. Generally, but not always, the sequence of schedule activities that determines the duration of the Project. Generally, it is the longest path through the project. However, a critical path can end, as an example, on a schedule milestone that is in the middle of the project schedule and that has a finish-no-later-than imposed date schedule constraint.” (pag. 357)

    So, it is what MS-Project performs and then in several situations you have a "broken" or "interrupted" Critical Path.

    However, in Fifth Edition, a lot based in findings from the Practice Standard of Scheduling, we have:

    “Critical Path. The sequence of activities that represent the longest path through a project, which determines the shortest possible duration.” (pag. 536)

    The RULE that it must have zero float is taken away from this definition.

    If you run MS-Project Add-ins that perform Resource Critical Path, you will find a Critical Path calculated with zero float BASED in resource restrictions, not task dependencies. This will solve 90% of the problem.

    But you will also find external dependencies and some strange interactions of calendars and types of dependencies that will break both CPM and RCP calculations.

    So, you will actually find certain situations in which the PROJECT Critical Path may have floats.

    To fix these situations, there is an attempted rule from Primavera and there are other manual considerations that can be made, that are expressend in a document from AACE

    AACE International Recommended Practice No. 49R-06
    IDENTIFYING THE CRITICAL PATH

    There, you will find FOUR different methods, in all we have commont the principle that the Critical Path is always the longest path, not necessarily the one defined by floats.

    “There are several accepted methods for determining the critical path. The four most frequently used methods include the following:

    1. Lowest Total Float – The activities with the lowest total float (sometimes abbreviated as “TF”) values may be considered critical path activities. This calculated value may be a positive number, zero, or even a negative number.  
    2. Negative Total Float – Using this classification method, any activity that has negative float is considered critical, even if other activities have a lower negative float value. Under this classification, if an activity is contributing to late project completion then it is worthy of inclusion on the critical path list regardless of its direct contribution to delayed project completion. Another way of framing this concept is to say that any work is understood to be critical if it scheduled to be completed after the date required for a timely project completion.  
    3. Longest Path – The concept and term, “longest path” has existed since the beginning of formal CPM theory. Commercial implementation of this process into a defined algorithm has only recently been made and is recommended for projects that use multiple calendars and activity constraints.  The longest path calculation begins by identifying the activities that have an early finish equal to the latest calculated early finish for the project and then identifies all driving relationships for these activities and traces them back to the project start date. This special calculation scheme is currently only instituted in Primavera scheduling software products. When discussing the theory of longest path, we will use the phrase using lower-case letters. When describing the Primavera software  feature called, “Longest Path,” we will use upper-case to distinguish the implementation from the theory.
    4. Longest Path Value Method - The principle of longest path value differs from the approach used by Primavera in that, instead of just noting activity inclusion or exclusion from the longest path, a numerical value is calculated for each activity that describes the degree of longest path much like float describes the degree of criticality. Other principles are also enforced that will be described below. “

    In other words:

    - Use MS-Project with an add-in (Complete Critical Path can be found in Google)

    - Use other tools (Spider Project, Primavera, and some others)

    - Always double check the paths, and consider the activities with LESS float (Gregg´s response) in some parts of your schedule.

    Regards,


    Peter Mello, PMP, PMI-SP,SpS

    • Proposed as answer by ScrumSmart Monday, May 12, 2014 4:39 PM
    Monday, May 12, 2014 4:38 PM
  • I am guessing that your task 7 has a start no earlier than date constraint. You could see if this was the case by displaying the indicators column or the advanced tab of the task information box. Otherwise, it would be useful if you could show us a screenshot of the working days report (reports, overview, working days) which will show the calendar details.

    1000 tasks is not a large number by any means. In a construction project it would represent about $1M worth of project cost, so the number of tasks has no bearing on the critical path. However, it is always useful to display the schedule table which shows the early and late starts and finishes and the free and total slack.

    Monday, May 12, 2014 10:12 PM
  • We have renamed 'Complete Critical Path' to 'PathsPro' and you can find it on the website ProjectProCorp.com. It is an add-in for Microsoft Project that can find the longest-path (most-critical path) in all situations that are known to "break" the Critical Path:

    - constraint dates

    - elapsed durations

    - resource calendars

    - task calendars

    - external predecessors

    - resource workload leveling

    In my textbooks 'Forecast Scheduling' I explain in detail why each of these "break" the Critical Path. Hope this helps.

    Eric Uyttewaal, President ProjectProCorp

    Wednesday, February 27, 2019 9:06 PM