CPM, or Critical Path Method, has been around since the 1960s. So has falling production rates. Coincidence?
The critical path, the basis for the whole method, states that there is a chain, or series, of tasks all linked to each other from day one to completion. If one of those tasks is delayed, even one day, then the entire project will be late. This means during your project you can't afford a single mishap, a crazy expectation especially for construction.
As a planner you can't just say you'll do something on a given day. In CPM software, like P6, you need to indicate a task's predecessors (other tasks it depends on). This makes sense, in theory, but in the real world there are too many moving parts and shit just happens. Materials don't arrive until Thursday, and the scaffolding is being used by the painters until Friday..
Here we go. Of course you want your project built as soon as possible, especially tasks in the Critical Path. CPM makes all your tasks start as soon as possible. If you have tasks that don't need to start for 2 months but could technically start now, it doesn't matter, CPM only understands as soon as possible. You're left packing your job-site with labor and materials for no reason other than thats's what your scheduling software allows.
Because of most of the reasons in this list, planners and project managers need to give themselves some wiggle room. Shit happens, why not give yourself a couple extra days for each of your tasks. Don't believe us? We know you've heard contractors finished something in 2 days that was supposed to take 2 weeks? That is fluff.
Parkinson's Law states a task will take exactly the amount of time that was allocated. Since subcontractors need to pad their tasks with extra time, according to Parkinson's Law, that was just the right amount of time.
Hard logic are things that must be true, i.e. you can't paint a wall until the drywall has been hung and finished. CPM only recognizes hard logic. In real life there are more choices: soft logic. Soft logic is preference, i.e. I prefer to paint these walls before these walls, or I prefer to wait until the power is on before we paint. The thing about soft logic is it changes all the time, shit happens, so things need to move around. There is no way to differentiate between hard and soft logic in CPM, planners are left with spaghetti schedules that are broken the moment boots hit the ground.
CPM makes you plan tasks at such a granular level 2 years out or more. If you've seen a schedule that predicts you'll be you'll be getting a certain inspection on a specific day 3 years from now you're already in trouble. The chances of you hitting that day are slim to none, so on day one you're planning for failure.
CPM wasn't made for collaboration. Its a one-way form of communication. Some project managers use "data collection sheets", but they still create a plan that is — for trade contractors — more reactive than proactive.
When tasks are finally executed the person in charge of the CPM just asks for actual dates, and nothing else matters? Do we not care about why things were held up or by who? There's no record, if a trend begins to emerge for why tasks get delayed, you won't find it in the CPM.
CPM wasn't made to gather and organize historical data. If you look back at an old project, all you know is how long things took. You don't get production numbers, you don't get a report of obstacles, you don't which of your subcontractors were causing the biggest headaches.
Every project is different, but typically we find most projects get "schedule updates" every week or every 2 weeks. This ritual usually involves a manager telling another manager when tasks actually happened. The problem is we don't usually remember what exactly happened 2 weeks ago. Do you? In the meantime, your foremen are creating daily logs in another app and that's somehow unrelated?
Baselines are good because they tell you what your original plan was, and what your plan looked like at any other certain point of time. But if you forgot to create a baseline, then that info is gone forever.
If you have a group of tasks for "Buildout" and the very first task was to Frame Walls, but the framer shows up 5 days late, does that mean Buildout doesn't start until 5 days later? Does that mean Buildout automatically finishes 5 days later? In CPM it does, in real-life: "Hell No!"
As project managers we like to give our subcontractors more space, so we give them some lag.. some argue that lag, the time between 2 related tasks is just a third task in disguise , but just as often its really soft logic (preference) in disguise. For example, typically you might find Finish Floor lag a week behind Install Sub Floor, but shit happens and the Install Sub Floor task starts a couple days late, if you're on the Critical Path path this should mean your entire project is behind schedule, in reality you just give the Install Sub Floor task less of a head start.
CPM issues have become so prevalent that there is a new business model for quality checks. Run your schedule through one of these programs and it'll tell you if it meets best practices. However, what these QC tools don't tell you is if the logic works. We've seen a schedules pass these checks with flying colors yet be so broken that they planned to have plumbing fixtures installed on a floor that didn't exist yet.
In CPM, milestones are treated no different than tasks. Their dates are determined by the tasks that proceed them. We think that's completely wrong. We think Milestones should drive tasks, period.
CPM seems to be synonymous with Gantt charts, we don't know why, but if you look at every scheduling tool they all have the Gantt chart UI and Gantt chart report. There are so many issues with the Gantt chart that we just had to create another list: 20 Reasons Gantt Charts fail us in Construction