Метод критического пути (CPM)
Метод критического пути (CPM) (англ. Critical Path Method, CPM) — детерминированный метод сетевого планирования и управления проектами, применяемый для расчёта последовательности работ и минимально возможного срока завершения проекта. Критический путь — это самый длинный по длительности путь в сетевой модели; задержка любой работы на этом пути сдвигает окончание всего проекта[1][2].
История
CPM разработан в конце 1950‑х годов Джеймсом Келли (Remington Rand) и Морганом Уокером (DuPont). Их доклад 1959 года положил начало промышленному использованию метода; позднее авторы опубликовали исторический очерк о происхождении CPM[2][3]. Параллельно в США был создан вероятностный метод PERT, с которым CPM часто применяется совместно[1].
Основные понятия
- Работа (activity) — действие с длительностью d и зависимостями от предшественников.
- Событие/веха — момент без длительности, фиксирующий состояние проекта.
- Критический путь — последовательность работ максимальной суммарной длительности между стартом и финишем модели; работы на нём имеют нулевой суммарный резерв[1].
- Предшествование задаётся отношениями FS, SS, FF, SF с возможными лага́ми; на практике используется PDM / AON (работы — узлы), а исторический ADM / AOA встречается реже[4][5][6].
Расчёт дат и резервов
Расчёт выполняется прямым и обратным проходами по сети.
Прямой проход (ранние даты):
- для начальных работ: ES = 0 (или согласно принятой шкале);
- для каждой работы j: ESj = max{ EFi всех предшественников i };
- EF = ES + d.
Обратный проход (поздние даты):
- для завершающих работ: LF равен общему сроку проекта (или раннему финишу финальной вехи);
- для каждой работы j: LS = LF − d; LFj = min{ LSs всех последователей s }[7][8].
Резервы (float/slack):
- Полный резерв (TF): TF = LS − ES = LF − EF — насколько можно задержать работу без сдвига финиша проекта.
- Свободный резерв (FF): FF = min{ ESsucc } − EF — задержка без влияния на ранние старты последователей[9][10].
Связи и лаги
В PDM поддерживаются четыре базовых типа зависимостей: FS (finish‑to‑start), SS (start‑to‑start), FF (finish‑to‑finish), SF (start‑to‑finish). Каждая связь может иметь лаг (положительный или отрицательный), например FS + 2d — начало последователя через два дня после окончания предшественника[6].
Сокращение сроков (crashing, fast‑tracking)
Сокращение длительности проекта возможно:
- Crashing — целенаправленное уменьшение длительности критических работ за счёт дополнительных затрат; предпочтительно сокращать работы с минимальным «склоном» стоимости.
- Склон стоимости (стоимость 1 единицы сокращения): (Ccrash − Cnormal) / (Dnormal − Dcrash)[11].
- Fast‑tracking — перевод допустимых зависимостей в параллельное исполнение (например, FS → SS) с ростом рисков переработок[1].
Области применения
CPM используется для разработки календарных планов в строительстве, энергетике, машиностроении, ИТ‑проектах и НИОКР. Метод является базовым в стандартах управления проектами и системной инженерии (PMI, NASA) и широко поддерживается в программном обеспечении для планирования[1][12][13].
Преимущества
- Чёткая идентификация критического пути и «узких мест»; приоритет внимания менеджера проекта[1].
- Простые правила расчёта ранних/поздних дат и резервов; прозрачность влияния изменений[7].
- Совместимость с PDM/диаграммами Ганта и инструментами анализа вариантов ускорения[4].
Ограничения
- Базовая CPM‑модель не учитывает ресурсные ограничения и стохастическую природу длительностей; для этого применяют ресурсное выравнивание и расширения (например, critical chain)[1].
- При использовании сложных зависимостей и лагов интерпретация резервов может быть нетривиальна; рекомендуется формальное определение и контроль правил вычисления float в контрактных документах[10].
Связь с другими подходами
- PERT — вероятностная оценка длительностей (трёхточечные оценки, β‑приближение); CPM применяет детерминированные длительности.
- Диаграмма Ганта — календарная визуализация расписания, часто используется вместе с CPM/PERT.
- Сетевое планирование — обобщающая группа методов (CPM, PERT, ADM/AOA, PDM/AON).
См. также
- PERT
- Диаграмма Ганта
- Сетевое планирование
Литература
- Kelley, J. E.; Walker, M. R. (1959). Critical‑Path Planning and Scheduling. IRE‑AIEE‑ACM '59 (Eastern). ACM Digital Library. [14]
- Kelley, J. E.; Walker, M. R. (1989). Origins of CPM: A Personal History. PM Network. PMI. [15]
- PMI. PMBOK® Guide. [16]
- NASA. Systems Engineering Handbook (SP‑2016‑6105 Rev2). [17]
- «Critical path method». Wikipedia (en). [18]
- «Precedence diagram method». Wikipedia (en). [19]
- «Dependency (project management)». Wikipedia (en). [20]
- «Arrow diagramming method». Wikipedia (en). [21]
- Baker, S. L. Critical Path Method (CPM) — Analysis Steps. University of South Carolina. [22]
- «Creating an Activity Network Diagram». CSU Pressbooks. [23]
- «Crashing Example». An‑Najah National University (учебный пример). [24]
Примечание
- ↑ 1,0 1,1 1,2 1,3 1,4 1,5 1,6 «Critical path method». Wikipedia (en). [1]
- ↑ 2,0 2,1 Kelley, J. E., Jr.; Walker, M. R. (1959). «Critical-Path Planning and Scheduling». IRE‑AIEE‑ACM '59 (Eastern). ACM Digital Library. [2]
- ↑ Kelley, J. E.; Walker, M. R. (1989). «Origins of CPM: A Personal History». PM Network. Project Management Institute. [3]
- ↑ 4,0 4,1 «Precedence diagram method». Wikipedia (en). [4]
- ↑ «Arrow diagramming method». Wikipedia (en). [5]
- ↑ 6,0 6,1 «Dependency (project management)». Wikipedia (en). [6]
- ↑ 7,0 7,1 Baker, S. L. «Critical Path Method (CPM) — Analysis Steps». University of South Carolina. [7]
- ↑ «Fundamental Scheduling Procedures». Project Management, Carnegie Mellon University. [8]
- ↑ «Creating an Activity Network Diagram». Project Management — Navigating the Complexity. Cleveland State University Pressbooks. [9]
- ↑ 10,0 10,1 «Critical Path Method Calculations». PMI. [10]
- ↑ «Crashing Example». An‑Najah National University (учебный пример). [11]
- ↑ PMI. A Guide to the Project Management Body of Knowledge (PMBOK® Guide). [12]
- ↑ NASA. Systems Engineering Handbook (NASA/SP‑2016‑6105 Rev2). [13]