Гантика
ФункцииЦеныСравненияДля командБаза знанийБлог
ВойтиПопробовать бесплатноНачать
База знаний
Как добавлять связи между задачамиТипы связей: FS, SS, FF, SFВ чём отличия типов связейЛаг и опережение в связяхЦвета линий связей на диаграмме
База знанийСвязи и зависимости

В чём отличия типов связей

Гантика поддерживает четыре типа связей между задачами: FS, SS, FF и SF. Каждый тип определяет свою логику взаимодействия между предшественником и последователем. В этой статье мы подробно сравним все типы, разберём их отличия и поможем выбрать правильный тип для каждой ситуации.

Главная таблица сравнения

ХарактеристикаFSSSFFSF
Полное названиеFinish-to-StartStart-to-StartFinish-to-FinishStart-to-Finish
ПереводОкончание–НачалоНачало–НачалоОкончание–ОкончаниеНачало–Окончание
Что ограничиваетНачало последователяНачало последователяОкончание последователяОкончание последователя
Что является триггеромОкончание предшественникаНачало предшественникаОкончание предшественникаНачало предшественника
Параллельное выполнениеНет (строго последовательно)Да (параллельный старт)Да (параллельное завершение)Да (инверсная логика)
Частота использования~85%~10%~4%~1%
Цвет линииСерый (#64748b)Зелёный (#059669)Оранжевый (#d97706)Фиолетовый (#7c3aed)
Сложность пониманияПростойСреднийСреднийСложный

Ключевые отличия между типами

FS vs SS: последовательность или параллельность

Главное отличие между FS и SS — в возможности параллельного выполнения. FS создаёт строгую последовательность: пока предшественник не завершён, последователь не может начаться. SS позволяет задачам выполняться параллельно — последователь стартует одновременно с предшественником или через заданный лаг.

Пример: Если «Разработка модуля» длится 10 дней, а «Тестирование модуля» — 5 дней, то при связи FS общая длительность составит 15 дней. При связи SS с лагом 3 дня тестирование начнётся на 4-й день разработки, и общая длительность сократится до 12 дней.

Совет: Замена FS на SS с лагом — один из основных способов сжатия расписания проекта. Это называется «быстрый проход» (fast tracking).

FS vs FF: контроль начала или окончания

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

Пример: Задачи «Написание кода» и «Написание документации» связаны типом FF. Документация может начаться раньше кода, но не может быть финализирована, пока код не дописан — ведь в документации нужно описать финальную версию.

SS vs FF: параллельный старт или параллельный финиш

SS синхронизирует начало задач — они стартуют вместе. FF синхронизирует окончание — они завершаются вместе. На практике SS и FF часто используются в паре для полной синхронизации параллельных работ.

Пример: «Разработка фронтенда» и «Разработка бэкенда» могут иметь связь SS (начинаются вместе) и одновременно связь FF (должны завершиться к одному сроку для интеграции).

SF — особый случай

SF стоит особняком от остальных типов. В нём начало предшественника разрешает завершение последователя. Эта логика инвертирована по сравнению с FS и применяется крайне редко.

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

Влияние на длительность проекта

Тип связиВлияние на срокиВозможность сжатия
FSУвеличивает общую длительность — задачи строго последовательныМожно добавить отрицательный лаг для перекрытия
SSСокращает длительность — задачи идут параллельноЛаг регулирует степень параллельности
FFСинхронизирует окончание, может как сократить, так и удлинитьОтрицательный лаг позволяет завершить раньше
SFСпецифическое влияние, зависит от контекстаРедко используется для оптимизации

Как типы связей влияют на критический путь

Все четыре типа связей учитываются при расчёте критического пути (КПМ). Формулы прямого прохода различаются:

  • FS: ES(B) = EF(A) + lag — самая простая формула
  • SS: ES(B) = ES(A) + lag — позволяет параллелизм
  • FF: EF(B) = EF(A) + lag — ограничивает окончание
  • SF: EF(B) = ES(A) + lag — инверсная логика

Задачи с нулевым резервом (float) находятся на критическом пути независимо от типа связи. Однако тип связи определяет, какие задачи попадут на критический путь и как будет выглядеть сетевой граф.

Практические рекомендации

Начните с FS

Если вы только начинаете работать со связями, используйте FS для всех зависимостей. Это самый интуитивный тип, и он подходит для большинства случаев. По мере освоения добавляйте SS и FF для оптимизации расписания.

Используйте SS для сжатия сроков

Когда проект нужно ускорить, пересмотрите связи FS. Если последователь может начаться до полного завершения предшественника — замените FS на SS с лагом. Это позволит выполнять задачи параллельно.

FF для синхронизации дедлайнов

Когда несколько задач должны завершиться к одной дате (например, все компоненты к релизу), используйте FF. Это гарантирует, что зависимые задачи не завершатся раньше ключевой.

Избегайте SF без необходимости

SF — экзотический тип. Используйте его только если точно понимаете, зачем он нужен. В 99% случаев задачу можно решить с помощью FS, SS или FF.

В Гантике тип связи можно изменить в любой момент: откройте панель деталей задачи, перейдите на вкладку «Связи» и выберите нужный тип в выпадающем списке. Изменение типа мгновенно пересчитает расписание.

Частые ошибки при выборе типа связи

  • Использование только FS: Приводит к искусственному удлинению проекта. Многие задачи можно выполнять параллельно с SS.
  • SS без лага: Если задачи начинаются одновременно, но одна зависит от промежуточных результатов другой — добавьте лаг.
  • Путаница направления: Убедитесь, что предшественник и последователь выбраны правильно. Перепутанное направление полностью меняет логику связи.
  • Использование SF вместо FS: Если вам кажется, что нужен SF — попробуйте поменять предшественника и последователя местами и использовать FS.
← ПредыдущаяТипы связей: FS, SS, FF, SFСледующая →Лаг и опережение в связях