Когда система окупает себя
Что это такое
Дизайн-система — это вложение. Кто-то должен её спроектировать, задокументировать, построить и поддерживать. А чтобы понять, окупается ли она, придётся посчитать, как часто и сколькими людьми одни и те же паттерны собирают заново, и сравнить эту сумму с ценой создания системы и управления ею.
Почему это важно
Система, построенная слишком рано, замораживает решения, которых ещё не поняли, — и становится тормозом для продукта. Построенная слишком поздно означает, что придётся переписать тридцать кнопок и каждый экран, где они использовались. Оба провала встречаются постоянно, и оба растут из одного: дизайн-систему принимают за вопрос зрелости, а не за арифметику.
Ключевые идеи
Сначала посчитайте дублирование
Перечислите паттерны и посчитайте, в скольких местах каждый из них реализован. Две реализации кнопки — не проблема, одиннадцать — система.
Паттерн Реализаций Расхождений
Кнопка 11 4
Модальное 7 5
Поле формы 9 6
Пустое состояние 3 3
Последняя строка пока систематизации не стоит, а две средние — стоят.
Умножьте на частоту изменений
Паттерн, который никогда не меняется, дёшево дублировать. Однако если он меняется каждый квартал и сразу в одиннадцати местах, стоимость накапливается именно там. Вот почему количество умножают на частоту изменений.
Считайте тех, кто строит, а не экраны
Дизайнеру, который работает в одиночку, нужнее личная привычка, чем общий словарь. Система окупается тогда, когда трое должны сделать одно и то же, не разговаривая друг с другом.
Выберите наименьший объём, который окупается
Набора токенов, кнопки и поля формы может хватить на первые полгода. Система, которая с первого дня покрывает всё, остаётся проектом без обратной связи и с большой поверхностью для управления.
Фаза 1 токены + 3 примитива один квартал, одна команда
Фаза 2 + формы и макет после внедрения фазы 1
Фаза 3 + паттерны и шаблоны только если переиспользование растёт
Скажите «нет», когда арифметика не сходится
Продукту с одним экраном, прототипу или разовому промо-сайту дизайн-система не нужна. Сказать об этом сразу дешевле, чем построить систему, которую никто не станет поддерживать.
Практика
Проведите подсчёт дублирования
Возьмите пять паттернов в своём продукте, посчитайте их реализации и варианты и прикиньте, как часто каждый из них меняется.
Готово, когда: вы можете назвать два паттерна, у которых произведение количества на частоту изменений самое высокое, и сказать, сэкономит ли система больше, чем будет стоить.
Напишите объём на один квартал
Напишите самую маленькую первую фазу: токены и три-пять компонентов, которые покрывают самые переиспользуемые паттерны.
Готово, когда: объём называет компоненты, потребителей и дату, когда вы снова измерите дублирование.
Частые ошибки
- Строить систему, когда систематизировать нечего — большой проект с единственным потребителем; исправить: сначала посчитайте дублирование и частоту изменений.
- Систематизировать всё сразу — большая поверхность для управления, притом что ничего ещё не проверено; исправить: начните с примитивов, у которых количество самое большое.
- Считать экраны, а не тех, кто строит — выгоду от переиспользования предполагают вместо того, чтобы её измерить; исправить: посчитайте людей, которым нужно сделать одно и то же.
- Игнорировать частоту изменений — дешёвый статичный паттерн систематизируют и потом не используют; исправить: взвесьте количество по частоте изменений.
- Никогда не перепроверять арифметику — система растёт уже после того, как дублирование исчезло; исправить: перемеряйте количество каждый квартал и сокращайте объём, если оно падает.
Что читать дальше
- Дизайн-системы (03-design-ux/32-design-systems) — трек, который открывает это первое решение.
- API компонента и документация (03-design-ux/32-design-systems/02-component-api-and-documentation) — что строить, когда ответ «да».
- UI-компоненты (02-frontend/12-ui-components) — практика компонентов, которую это масштабирует.
- Дизайн-токены (03-design-ux/41-design-tokens) — часто первая и самая дешёвая часть системы.