Crashing — вторая техника сжатия графика (Schedule Compression). В отличие от параллельного запуска задач (Fast Tracking), она всегда требует дополнительного бюджета.
Закон Брукса
«Добавление людей к опаздывающему программному проекту задерживает его ещё сильнее» — Фред Брукс, 1975. У сжатия сроков есть жёсткие пределы:
- Новых людей нужно вводить в курс дела, и это отнимает время у тех, кто уже работает.
- Растут накладные расходы на общение: n × (n − 1) / 2 каналов связи.
- Не всё поддаётся распараллеливанию: девять женщин не родят ребёнка за один месяц.
Когда приём работает
- Задача легко делится на параллельные части.
- Новые люди достаточно квалифицированы.
- Ввод в курс дела занимает меньше времени, чем даёт выигрыш.
Размен «стоимость — время»
Для каждой задачи считают стоимость ускорения на один день. Сжимают в первую очередь те задачи, где это отношение минимально: меньше денег за каждый выигранный день.
- Нужно срочно сократить сроки
- Есть бюджет на дополнительные ресурсы
- Задача допускает распараллеливание
- Творческая задача — написание плана, проектирование, дизайн: она не масштабируется числом людей
- Бюджет ограничен — дешевле распараллелить задачи (Fast Tracking)
Тестирование занимает 5 дней силами двух инженеров QA. Его можно сжать до 3 дней, если добавить ещё двух: 2 человека × 3 дня × 50 000 ₽ в день дают 300 000 ₽ сверх плана. Если задача лежит на критическом пути и проект уже опаздывает, такие деньги могут окупиться.
Прежде чем сжимать сроки, разберитесь, какие задачи реально ускоряются людьми. Не пытайтесь так ускорить «думательные» задачи — архитектуру, проектирование, дизайн: здесь закон Брукса срабатывает почти всегда.