теория

Cynefin: пять миров для одного решения

Прежде чем разнимать спорщиков, давай честно договоримся, что вообще значит слово «сложно». Сложность — это : сколько всего приходится держать в голове, чтобы понять систему, предсказать её поведение и — главное — безопасно её менять. И тут прячется то, что легко упустить: сложность субъективна. Поломка машины, на которую у тебя уйдёт неделя, для механика — час работы. «Сложно» всегда значит «сложно для кого-то».

А теперь удобная рамка, чтобы говорить о сложности точно, — (валлийское слово, читается «кеневин»). Она не раздаёт готовых ответов, зато подсказывает, каким способом ответ искать. Всё держится на одном вопросе: насколько связаны причина и следствие?

ДоменПричина ↔ следствиеЧего не хватаетКак решать
Clearжёстко связаны, очевидноничего: правила известныsense → categorize → respond: применяй правило (светофор)
Complicatedжёстко связаны, но неочевидно: знаешь, чего не знаешьsense → analyze → respond: найди эксперта (автомеханик)
Complexсвязаны слабо (loosely ): эксперта нетprobe → sense → respond: безопасный эксперимент, потом решение
Chaoticне связаны (decoupled)знание «unknowable»act → sense → respond: действуй, выводи ситуацию в complex
Disorderнеизвестнонепонятно, в каком ты доменепервым делом категоризировать ситуацию

Три уточнения, на которых всё держится, — и они-то обычно и спасают:

  • Complex ≠ complicated. Если есть эксперт, способный предсказать последствия, — это complicated, какой бы высокой ни была когнитивная нагрузка. Complex — когда нужного знания нет ни у кого, а общие best practices бессильны: исход зависит от твоего конкретного контекста.
  • В complex-домене исход виден только задним числом. Поэтому там решают серией безопасных проб. A/B-тест — классический probe: никто заранее не скажет, какой цвет кнопки даст больше кликов, а эксперимент — покажет. Неудачные пробы тут не брак, а плановая часть обучения, поэтому каждая обязана быть дешёвой и обратимой.
  • Chaotic — это когда пробовать некогда. Прод горит прямо сейчас, причина и следствие распались — и надо действовать первым же движением, чтобы вывести систему хотя бы в предсказуемый хаос (complex). Отличие от complex не в сложности, а во времени: complex даёт ставить эксперименты, chaotic — нет.
  • Домены — не приговор. Удачный эксперимент переводит ситуацию из complex в complicated: эксперт теперь есть — это ты, и следующему достаточно тебя спросить. А chaos отличается от complex тем, что эксперименты бесполезны: одинаковые действия дают разные результаты — как бросок кубика или сервис за балансировщиком, где половина машин крутит другую версию.
← назад