I don’t think these answers are deflecting the request. They are alternative ways to answer the question. The simplest is pointing to Asana’s definition of the feature, and the common definition of the feature and point out they are completely different.
The problem is that your definition - like Asana’s definition of the feature - is conflicting with the real definition of critical path. And I don’t think that’s helpful.
PS:
On a side note… I’ve been active training sailing instructors for many years, and I’ve always found that the oversimplifications that many of my trainees have been taught have been misguiding their understanding of sailing, and hampering of their understanding, application, and teaching of the concepts to others.
I’m confident the same principle holds true here. Simplification is great, but over-simplification gives people a misguided sense that they grasping the mechanics. Many times I have seen these oversimplifications being taught from one generation of instructors to the next, and it’s an uphill battle to set the record straight.
Uh oh. Where does the statement I wrote fall flat in describing what a critical path should be? (Granted it doesn’t tell you how to compute it, but that’s not what @Bastien_Siebman asked for.)
I still stand by my statement as accurate - the critical path is only concerned with the one path that has the least leeway for slippage (technically, the smallest total float). It’s not concerned with other tasks in the project that aren’t in that path; so in the A-B-C-D example we’re discussing, Task C is irrelevant to the critical path.
In essence, the critical path is the bottleneck route. Only by finding ways to shorten jobs along the critical path can the over-all project time be reduced; the time required to perform noncritical jobs is irrelevant from the viewpoint of total project time. The frequent (and costly) practice of “crashing” all jobs in a project in order to reduce total project time is thus unnecessary.
[post removed - I just realized I had responded incorrectly to JR, so to try and avoid even more confusion than is already present in this thread, I’ve removed what I initially said here]
In this case, both A-B-D and A-C-D have 0 float; that is, neither path has any room for delay without impacting the project completion date and thus both are critical paths. (This is actually what @Ka_Nishiyama has illustrated in his post just above this one.)
This contradicts the definition. The sum duration of that path is not equal to the max sum duration, so it cannot be critical path.
This doesn’t hold true in your definition.
A shorter project time can be accomplished without improving path A-C-D, but instead improving B, which is in the critical path A-B-D.
This is exactly why I’m against over-simplifying such a definition. If Asana were to adopt your definition it would still deviate from the textbook definition, and it could lead to falsly concluding a path needs improvement in order to over-all project time.
If you are not convinced I suggest we organise a call.
Not sure if this helps the discussion or not, but below the toggle to enable the critical path, it says “Critical path identifies which dependent tasks are crucial for project completion”. I am curious to see if you believe this is correct, misleading, or wrong ^^
I think it’s not wrong as far as it goes, but it’s so vague, it doesn’t really help you that much.
At a very minimum, I wish it would say “Critical path identifies which dependent tasks can least afford a delay in order to achieve the current completion date.”
I think it’s wrong. Tasks outside the critical path might be just as crucial to complete the project, it’s just that they don’t define the minimum project duration.
A correct description for how Asana functions at the moment is described in the Help center.
The confusion is caused because “the longest chain of dependent tasks” is interpreted by the most time between the start of the first task and the end of the last task. And it is unpredictable which path it chooses when there are multiple options. Asana should instead consider the chain that has the longest sum duration, and not count any float, which is the space in between tasks that are not planned back-to-back.
If I were to make a new attempt at giving a helpful description should Asana function according to the real definition it would be this:
The critical path defines the minimum time it takes to complete a project. Shortening the minimum project duration requires reducing duration of critical path tasks. ()
Perhaps with some extra clickable information:
Find the minimum project duration by planning critical path tasks back to back.
Or even better there would be functionality to automatically (re)plan the project to the shortest duration.