Запасы и потоки
Stock & Flow Diagrams
02.3 Stock & Flow Diagrams
Диаграмма запасов и потоков (SFD — Stock & Flow Diagram) — следующий уровень детализации после CLD. Если CLD показывает, что на что влияет, SFD показывает точную механику: через что именно происходит накопление и расходование. Это разница между "понимаю, что происходит" и "понимаю, как именно это происходит".
SFD не является обязательным для каждого анализа STAF. Используется тогда, когда точная механика изменения запаса критична для диагноза или проектирования вмешательства.
Когда SFD нужна, а когда достаточно CLD
SFD необходима, когда:
- Нужно понять, как быстро система может изменить своё состояние (темп потока определяет скорость изменения запаса — это нельзя увидеть на CLD)
- Важно различить запас и поток (многие интуитивные ошибки связаны именно с этим смешением)
- Планируется количественная оценка вмешательства — "если мы удвоим поток, за сколько времени запас изменится вдвое?"
- Задержка является критичным элементом — SFD делает задержки явными через вспомогательные запасы и потоки
CLD достаточно, когда:
- Цель — диагностика структуры, а не количественный прогноз
- Вопрос-катализатор касается направления изменений, а не скорости
- Система описывается качественно (слабо измеримые элементы — культура, доверие, репутация)
Нотация SFD
Запас (Stock)
Изображается прямоугольником. Внутри — имя запаса и единица измерения. Запас отражает текущее состояние — "сколько есть прямо сейчас".
Примеры: [Очередь заявок, шт.], [Бюджет проекта, руб.],
[Количество обученных сотрудников, чел.]
Входящий поток (Inflow)
Изображается стрелкой, входящей в прямоугольник запаса, с "краном" (вентилем) на стрелке. Пополняет запас. Темп потока — переменная (может регулироваться).
Примеры: →[кран]→ [Очередь заявок] — "скорость поступления новых заявок".
Исходящий поток (Outflow)
Изображается стрелкой, выходящей из прямоугольника, с "краном". Расходует запас.
Примеры: [Очередь заявок] →[кран]→ — "скорость обработки заявок".
Вспомогательная переменная (Auxiliary Variable)
Изображается кружком или текстом без рамки. Влияет на темп потоков, но сама не является запасом. Это "рычаг" между информацией и темпом изменения.
Облако (Cloud)
Источник или поглотитель, за пределами границы системы. Потоки из облака — внешний приток (новые клиенты, новые заявки). Потоки в облако — элементы, выходящие из системы (закрытые заявки, ушедшие клиенты).
Ключевое правило: запас — это интеграл потоков
Это математический факт с принципиальным практическим следствием: запас нельзя изменить мгновенно, только через изменение потоков во времени.
Примеры, где это не интуитивно:
-
"Мы хотим быстро снизить технический долг" — но технический долг является запасом. Даже если полностью остановить добавление нового долга (поток к нулю), существующий запас не уменьшится без активного потока "выплаты долга". Это требует времени и ресурсов.
-
"Мы нарастили команду в два раза — почему производительность не удвоилась?" — потому что квалификация команды является запасом, который накапливается медленно. Найм создаёт поток, но превратить новых людей в полностью продуктивных — это работа запаса "компетентность команды", растущего со своей скоростью.
-
"Мы исправили продукт — почему репутация не восстановилась?" — репутация является запасом прошлых впечатлений клиентов. Исправление продукта меняет поток (новые впечатления становятся лучше), но запас восстанавливается только по мере того, как положительный поток накапливается.
Задержки в SFD: механика
CLD показывает задержку символом (||) на стрелке. SFD показывает механику задержки: это всегда один или несколько промежуточных запасов.
Например, задержка между "решением нанять сотрудника" и "ростом продуктивности команды" в SFD выглядит как:
// показать ASCII
Решение нанять
↓
[Кандидаты в воронке] → [Нанятые сотрудники] → [Обученные сотрудники]
↑ задержка 1 ↑ задержка 2
(найм занимает (онбординг)
несколько недель)
↓
Продуктивность командыПромежуточные запасы — это то, что делает задержку видимой и управляемой. Их можно измерять, ими можно управлять как самостоятельными объектами. "Число кандидатов в воронке" — это опережающий индикатор будущего роста продуктивности.
SFD и диагностика разрывов
SFD делает видимыми несколько классов разрывов, которые на CLD остаются скрытыми:
Асимметрия потоков. Входящий поток значительно превышает исходящий — запас растёт неуправляемо. Или наоборот: исходящий превышает входящий — запас иссякает. Пример: скорость генерации технического долга (входящий поток) превышает скорость его выплаты (исходящий поток) — накопление неизбежно.
Отсутствие регулятора. Поток существует, но темп потока не зависит ни от какой переменной — он фиксирован. Это означает, что система не регулирует этот аспект своего поведения. Пример: скорость поступления заявок ни от чего не зависит внутри системы — это внешний поток из облака. Но скорость обработки — зависит от численности команды и её загрузки. Если это не отражено в SFD — обратная связь не видна.
Разомкнутый регулятор. Переменная, влияющая на темп потока, не имеет связи с реальным состоянием запаса. Система пытается регулировать поток, но на основе устаревших или неверных данных о запасе.
Практика: с чего начинать SFD
1. Определить центральный запас — то, что является объектом анализа. Обычно это запас, уровень которого и является "проблемой".
2. Задать вопрос для каждого потока: что пополняет этот запас? Что его расходует?
3. Для каждого потока: от чего зависит его темп? Какая переменная его "открывает" или "закрывает"?
4. Для каждой вспомогательной переменной: откуда она получает данные? Это информационная связь (её источник — метрика или другой запас)?
5. Найти петли: есть ли путь от запаса через переменные обратно к темпу потока, изменяющего этот же запас? Это балансирующая петля. Есть ли путь, в котором рост запаса ускоряет поток, пополняющий запас? Это усиливающая петля.
Связь SFD с CLD
SFD и CLD описывают одну и ту же систему с разной степенью детализации:
- CLD показывает все переменные и все причинные связи, включая те, что не связаны с потоками
- SFD показывает только запасы, потоки и то, что напрямую регулирует потоки
На практике CLD строится первой — для понимания структуры. Затем, если нужно, критические части CLD детализируются в SFD для понимания механики и проектирования вмешательств.
STAF 1.0 · SysMindLab · 2026