Skip to content
romavolkov999 edited this page Dec 11, 2022 · 4 revisions

Понятие критического пути и алгоритмы его расчета.

Реферат к лекции 4 "Управление сроками"

Выполнил: Волков Роман, ИДБ-19-05.

Проверил: Антипин Данила, ИДБ-19-05.

Критический путь

Критический путь – это самая длинная последовательность задач, от которой зависит весь проект. Это цепочка действий: к следующей задаче нельзя приступить, не закончив предыдущую. Если не пройти эту цепочку, выполнить работу не получится.

Каждая из операций должна быть выполнена точно по графику, чтобы проект можно было завершить к назначенному сроку. Если сдвигается срок одной задачи на критическом пути, сдвигается и срок сдачи всего проекта.

Critical path method позволяет заранее распределить ресурсы так, чтобы вовремя выполнить задачи на критическом пути. Например, менеджер может составить календарный план работ и назначить критическим задачам высокий приоритет. Так исполнители поймут, над чем нужно работать в первую очередь.

Снимок экрана 2022-05-17 в 8 08 19 AM

Рассмотрим путь развития проекта и выполнения его задач.

Это подразумевает создание модели проекта, включающей следующие элементы:

  • список всех операций, необходимых для выполнения проекта;
  • зависимости между этими операциями;
  • период времени, необходимый для выполнения каждой операции (длительность).

Метод критического пути

Метод критического пути — (англ. CPM, Critical path method) — это инструмент планирования расписания и управления сроками проекта.

В основе метода лежит определение наиболее длительной последовательности задач от начала проекта до его окончания с учетом их взаимосвязи. Задачи, лежащие на критическом пути (критические задачи), имеют нулевой резерв времени выполнения, и, в случае изменения их длительности, изменяются сроки всего проекта. В связи с этим, при выполнении проекта критические задачи требуют более тщательного контроля, в частности, своевременного выявления проблем и рисков, влияющих на сроки их выполнения и, следовательно, на сроки выполнения проекта в целом. В процессе выполнения проекта критический путь проекта может меняться, так как при изменении длительности задач некоторые из них могут оказаться на критическом пути.

История возникновения

Использовать метод критического пути начали в 1950-х годах на двух не связанных друг с другом проектах. В обоих случаях работы отставали от графика. Чтобы решить эту проблему, специалисты предложили разбить проект на задачи и для каждой из них определить приоритетность и срок выполнения.

Первый – строительство баллистических ракет флота ВМС США. Второй – реорганизация производства химического концерна E.I. DuPont de Nemours.

Как найти критический путь в любом проекте

Есть классическая схема из шести шагов:

  • Поиск задач. На этом этапе нужно составить список всех работ, которые нужно выполнить для завершения проекта. Цель проекта делят на задачи, их – на подзадачи, подзадачи – на операции. Все операции записывают – из них и будет состоять проект.
  • Поиск зависимостей. Это этап поможет установить правильный порядок выполнения работ. Для этого определите, как работы связаны друг с другом и в какой последовательности их нужно выполнять.
  • Построение сетевой диаграммы. Данный этап позволяет увидеть план проекта. Сетевая диаграмма – визуализация порядка выполнения задач, основанная на зависимостях. У неё всегда есть начальная задача – её выполняют первой, и конечная – её выполняют последней. В проектах могут возникать так называемые плавающие задачи. Это задачи без жёсткой привязки к другим. Плавающие задачи могут влиять на длительность проекта. Если заняться ими в последний момент или выделить на их решение недостаточно ресурсов, есть риск не закончить вовремя. Чтобы снизить риски, нужно избавиться от «плавающих» задач.
  • Расчёт времени. На этом этапе предполагают, сколько времени займёт выполнение каждой операции, и указывают это на сетевой диаграмме. Желательно назначить общую единицу измерения времени (часы, дни, недели – в зависимости от того, сколько будет длиться проект).
  • Определение критического пути. Это поиск самого длинного пути на сетевой диаграмме. Длину определяет не количество задач, а время, потраченное на их выполнение. То есть нужно посчитать, какая последовательность действий займёт больше всего времени. Суммарное время для выполнения всех задач на критическом пути — это и есть срок проекта.
  • Обновление диаграммы. Этот этап необходим, чтобы объективно оценивать ситуацию. Её обновляют каждый раз, когда в проекте что-то меняется или когда задачи, не лежащие на критическом пути, не получается выполнить вовремя. Если изменения значительные, критический путь пересчитывают. Он может стать длиннее, а может сократиться.

Расчёт критического пути

Если начальный момент выполнения проекта положить равным нулю, то сроки окончания у первых работ сетевого графика, то есть работ, выходящих из первого события, будут определяться их продолжительностью. Время наступления любого события следует положить равным самому позднему времени окончания непосредственно входящих в это событие работ: считается, что работа в сетевом графике не может начаться, пока не завершены все предшествующие для неё работы.

В процессе решения – методом «эстафеты» – просматриваются все дуги сетевого графика. Пусть очередная просматриваемая дуга связывает вершины i и j. Если для вершины i определено предположительное время его свершения и это время плюс продолжительность работы больше предположительного времени наступления события j, тогда для вершины j устанавливается новое предположительное время наступления, равное предположительному времени наступления события i плюс продолжительность работы рассматриваемой дуги. Решение заканчивается, когда очередной просмотр дуг не вызывает ни одного исправления предположительного значения времени начала/окончания работ/событий. В результате может быть определено событие с самым поздним временем наступления, и путь от начальной вершины в эту конечную будет считаться критическим и определять продолжительность выполнения проекта. Наряду с общей продолжительностью выполнения проекта, критический путь определяет другие характеристики сетевого графика, играющие важную роль при планировании реализации нововведения, минимизации сроков и расходов на разработку.

Суть решения задачи сокращения сетевого графика сводится к привлечению дополнительных ресурсов к выполнению работ, лежащих на критическом пути, снятием работ, не лежащих на критическом пути, запараллеливанием работ.

Пример расчёта критического пути

Пусть дана сеть. Для каждого события I определим наиболее ранний срок его наступления TP(I) По следующему правилу:

Снимок экрана 2022-05-17 в 8 35 46 AM
  1. TP(0)=0;
  2. Для I >0 TP(I) равно продолжительности самого длинного (0, I)-пути.

Значения Tp(I) определяют последовательно, переходя от источника к стоку. Так, для рассматриваемого примера находим:

TP(0) = 0, TP(1) = 1, TP(2) = 5, TP(3) = 11, TP (4) = 11, TP(5) = 16.

Эти значения находятся из соотношения: TP(I) = max{ TP(K) + Tki }, Т. е. для всех дуг (K, I), для которых I является концом, необходимо вычислить TP(K) + Tki и выбрать наибольшее значение.

Итак, в нашем примере время выполнения проекта равно 16. Чтобы получить критический путь, будем передвигаться в обратном направлении, от стока к источнику, по тем ребрам (K, I), которые определяли значения TP(I), т. е. для которых выполняется равенство TP(I) - Tki = TP(K) .

В примере это ребра: (3, 5); (2, 3); (2,0). Таким образом, (0, 2, 3, 5) - это критический путь.

Программный способ расчёта критического пути

Существуют программы, направленные на поддержание жизнедеятельности проекта и облегчающие владельцу нахождение критического пути.

Например, специальный планировщик от Microsoft MS Project. В нем представлен целый спектр инструментов, которые помогают контролировать ход реализации проекта любой сложности.

Посмотреть критический путь в MS Project можно несколькими способами. Отображение данного параметра возможно как в диаграмме Ганта в MS Project, так и в других представлениях задач. При этом критический путь может рассчитываться как для главного проекта, так и для его подпроектов.

Пример отображения критического пути в Microsoft MS Project на рисунке ниже.

Снимок экрана 2022-05-17 в 8 46 28 AM

Плюсы и минусы метода критического пути

Метод помогает:

  • Определить самые важные задачи, чтобы понимать, на что нужно обратить больше внимания. Если сроки хотя бы одной важной задачи задать неправильно, то от этого пострадает весь проект.
  • Сократить время работы над проектом. Определив задачи, которые вместе складываются в общий временной резерв, будет видно, где можно найти «лишнее время».
  • Оценить риски. Если знать, как задачи связаны друг с другом, проще предсказать влияние сорванного дедлайна одной задачи на результат следующей.
  • Сравнить план с реальностью. Определив критический путь, получается подробнейший план, которому нужно следовать. Благодаря этому очень просто следить, насколько реальная работа над проектом отклоняется от запланированной. Сможешь определить проблемные места и избавиться от них.

Недостатки метода вытекают из его преимуществ:

  • Задачи в проекте занимают всё отведённое на них время.
  • Если закончить одну задачу раньше срока, не всегда получится раньше срока закончить весь проект.
  • Общий резерв времени обязательно будет иметь место, избавиться от него и сократить срок выполнения проекта нельзя.
  • Сложность применения методики в решении творческих задач – тяжело прогнозировать сроки проекта из-за огромного количества нестабильных переменных

Поиск и анализ критического пути можно использовать в любом проекте: от разработки ПО до строительства. Но в творческих проектах или стартапах, где очень много неопределённостей, использовать метод критического пути не получится.

Метод критического пути подойдёт, если действия, которые нужно будет совершить в рамках проекта известны, упорядочены и выполняются последовательно, могут быть остановлены и начаты независимо друг от друга, в пределах цепочки задач.

Внедрять метод полностью вовсе не обязательно. Если видна польза для проекта в каких-то отдельных элементах метода критического пути, можно без проблем интегрировать их в процесс управления проектом.

Источники:

  1. Управление проектами
  2. Алгоритм поиска критического пути
  3. MS Project
  4. Skillbox
  5. Weeek
Clone this wiki locally