Метод критического пути
Метод критического пути (англ. Critical Path Method, CPM) — это математический алгоритм, используемый для планирования, управления и оптимизации сроков выполнения проектов. Он позволяет определить последовательность задач (операций), которые напрямую влияют на общую продолжительность проекта, а также выявить резервы времени для некритических операций. Метод был разработан в конце 1950-х годов и широко применяется в строительстве, разработке программного обеспечения, производстве и других отраслях, где требуется точное управление временными ресурсами.
История возникновения
Метод критического пути был разработан в 1956–1958 годах американскими инженерами Морганом Уокером из компании DuPont и Джеймсом Келли из Remington Rand. Первоначально он предназначался для планирования строительства химических заводов и ремонтных работ, где требовалось минимизировать время простоя. В 1959 году метод был впервые публично описан в статье «Critical Path Planning and Scheduling» в журнале Operations Research. Практически одновременно с CPM появился метод PERT (Program Evaluation and Review Technique), разработанный для программы «Поларис» ВМС США. Оба метода основаны на построении сетевых графиков, но CPM использует детерминированные оценки длительности операций, тогда как PERT — вероятностные.
В СССР аналогичные разработки велись в 1960-х годах под руководством академика В. М. Глушкова в рамках создания автоматизированных систем управления (АСУ). Метод критического пути стал основой для систем сетевого планирования и управления (СПУ), которые активно применялись в строительстве и оборонной промышленности. В 1970-х годах CPM был стандартизирован в виде ГОСТ 24525.0-80, регламентирующего порядок разработки сетевых моделей.
Основные понятия и определения
Сетевой график
Сетевой график — это ориентированный граф, в котором вершины обозначают события (начало или завершение работ), а дуги — операции (работы). Каждая операция характеризуется длительностью, ресурсами и зависимостями от других операций. Граф строится по правилам:
- каждая операция имеет уникальный код;
- операции не могут начинаться до завершения всех предшествующих;
- в графе не допускается циклов (замкнутых контуров).
Критический путь
Критический путь — это самая длинная последовательность операций от начального до конечного события проекта, определяющая минимально возможное время его завершения. Если любая операция на критическом пути задерживается, то проект в целом задерживается на ту же величину. Операции, не лежащие на критическом пути, имеют резерв времени.
Резервы времени
- Полный резерв (Total Float) — максимальное время, на которое можно задержать выполнение операции без увеличения общей продолжительности проекта. Рассчитывается как разница между поздним и ранним временем начала (или окончания) операции.
- Свободный резерв (Free Float) — время, на которое можно задержать операцию, не влияя на ранние начала последующих операций.
- Независимый резерв (Independent Float) — время, на которое можно задержать операцию, если все предшествующие операции завершены как можно позже, а все последующие начаты как можно раньше.
Ранние и поздние сроки
- Раннее начало (ES) — самый ранний момент, когда операция может начаться.
- Раннее окончание (EF) — ES + длительность операции.
- Позднее начало (LS) — самый поздний момент, когда операция может начаться без задержки проекта.
- Позднее окончание (LF) — LS + длительность операции.
Алгоритм расчёта
Расчёт критического пути выполняется в два этапа — прямой и обратный проходы по сетевому графику.
Прямой проход (Forward Pass)
Определяет ранние сроки выполнения операций. Начинается с начального события (ES = 0). Для каждой операции:
- ES = максимальное значение EF среди всех предшествующих операций;
- EF = ES + длительность операции.
В результате получается раннее время завершения всего проекта (EF конечного события).
Обратный проход (Backward Pass)
Определяет поздние сроки. Начинается с конечного события (LF = EF проекта). Для каждой операции:
- LF = минимальное значение LS среди всех последующих операций;
- LS = LF — длительность операции.
Определение критического пути
Критическими являются операции, для которых полный резерв равен нулю (TF = 0). Последовательность таких операций от начального до конечного события образует критический путь. В проекте может быть несколько критических путей, если несколько последовательностей имеют одинаковую максимальную длительность.
Пример расчёта
Рассмотрим простой проект из четырёх операций:
- A (длительность 5 дней) — не имеет предшественников;
- B (3 дня) — зависит от A;
- C (4 дня) — зависит от A;
- D (2 дня) — зависит от B и C.
Прямой проход:
- A: ES=0, EF=5
- B: ES=5, EF=8
- C: ES=5, EF=9
- D: ES=9 (максимум из EF B и C: 8 и 9), EF=11
Обратный проход:
- D: LF=11, LS=9
- B: LF=9 (минимум из LS D), LS=6
- C: LF=9, LS=5
- A: LF=5 (минимум из LS B и C: 6 и 5), LS=0
Полные резервы:
- A: TF=0 (LS-ES=0)
- B: TF=1 (6-5=1)
- C: TF=0 (5-5=0)
- D: TF=0 (9-9=0)
Критический путь: A → C → D (общая длительность 11 дней). Операция B имеет резерв 1 день.
Применение
Управление проектами
Метод критического пути является основой для:
- Составления календарных планов (графиков Ганта).
- Выявления узких мест и перераспределения ресурсов.
- Оптимизации сроков за счёт ускорения критических операций (например, добавлением ресурсов).
- Контроля хода выполнения проекта и прогнозирования задержек.
Отрасли использования
- Строительство — планирование возведения зданий, мостов, дорог.
- Разработка ПО — управление спринтами и релизами (часто в сочетании с Agile).
- Производство — оптимизация сборочных линий и ремонтных работ.
- Событийный менеджмент — организация конференций, выставок, свадеб.
- Оборонная промышленность — разработка сложных систем (ракеты, самолёты).
Ограничения метода
- CPM предполагает детерминированные длительности операций, что не всегда реалистично (для стохастических задач используется PERT).
- Метод не учитывает ресурсные ограничения (например, доступность рабочих или оборудования). Для этого применяется метод критической цепи (Critical Chain Project Management).
- При большом количестве операций расчёт вручную становится трудоёмким; требуется специализированное ПО (Microsoft Project, Primavera, Jira с плагинами).
Интересные факты
- В 1960-х годах CPM использовался при строительстве небоскрёба «Уиллис-тауэр» в Чикаго, что позволило завершить проект на 6 месяцев раньше плана.
- В СССР метод критического пути применялся при возведении Байкало-Амурской магистрали (БАМ) в 1970-х годах.
- Современные системы управления проектами (например, Oracle Primavera P6) поддерживают расчёт CPM для проектов с десятками тысяч операций.
- В 2018 году метод был включён в учебные программы российских вузов по специальности «Управление проектами» в рамках стандартов PMBoK (Project Management Body of Knowledge).
Критика и альтернативы
Критики CPM отмечают:
- Жёсткость модели — не учитывает неопределённость длительности операций;
- Игнорирование человеческого фактора (например, эффект «студента» — выполнение работы в последний момент);
- Сложность адаптации к изменениям в ходе проекта.
Альтернативами являются:
- PERT — использует три оценки времени (оптимистическую, пессимистическую, наиболее вероятную);
- Метод критической цепи — учитывает ресурсные ограничения и буферы времени;
- Agile/Scrum — итеративный подход с гибким планированием.
Источники
- Kelly J. E., Walker M. R. Critical Path Planning and Scheduling. — Proceedings of the Eastern Joint Computer Conference, 1959.
- Kerzner H. Project Management: A Systems Approach to Planning, Scheduling, and Controlling. — 12th ed., Wiley, 2017.
- ГОСТ 24525.0-80 «Управление производственным объединением и промышленным предприятием. Основные положения».
- Project Management Institute. A Guide to the Project Management Body of Knowledge (PMBoK Guide). — 6th ed., PMI, 2017.
- Мазур И. И., Шапиро В. Д., Ольдерогге Н. Г. Управление проектами. — М.: Омега-Л, 2010.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →