Design system é o conjunto de decisões de interface que um time deixa de tomar de novo a cada tela. Não é biblioteca de componentes, nem arquivo de design, nem manual de marca: essas são as peças. O sistema é o acordo que faz as peças serem usadas.

Este texto mostra as três camadas que ele tem, a ordem de construir sem desperdício, por que a maioria morre no primeiro ano, o que medir para saber se está vivo e quando é cedo demais para ter um.

As três camadas

Camada O que contém O que ela resolve
Fundações cor, tipografia, espaçamento, raio, sombra, ponto de quebra, todos nomeados acaba a discussão de qual cinza e de quantos pixels
Componentes botão, campo, tabela, modal, aviso, com os estados de erro, carregando e vazio ninguém reconstrói o mesmo elemento com comportamento diferente
Documentação e regras de uso quando usar cada componente, o que não fazer, textos e mensagens padrão gente nova acerta sem perguntar

A terceira camada é a que separa design system de biblioteca. Componente sem regra de uso é reutilizado errado com a mesma facilidade com que é reutilizado certo, e o resultado é uma interface consistente na aparência e incoerente no comportamento.

Existe ainda um detalhe técnico que decide muita coisa: as fundações precisam existir como valores compartilhados entre design e código, não como duas listas mantidas em paralelo. É o desalinhamento entre essas duas listas que produz o sintoma clássico de “no arquivo está certo, no site está diferente”.

A ordem de construir

  1. Inventário do que já existe. Recorte as telas atuais e conte quantos botões, quantos azuis e quantos tamanhos de fonte estão em uso. O número costuma ser absurdo, e ele é o argumento para começar.
  2. Fundações primeiro, com nomes. Cor primária, superfície, texto secundário, espaçamento em escala. Só isso já corta a maior parte da inconsistência.
  3. Os cinco componentes mais repetidos, e nenhum além disso. Botão, campo de texto, seleção, aviso e tabela cobrem quase toda tela de sistema.
  4. Aplique em uma tela real, de preferência uma que esteja sendo refeita. Sistema validado em tela de exemplo não é validado.
  5. Documente o que foi decidido, na hora, com o motivo. Documentação escrita depois nunca é escrita.
  6. Cresça por demanda. Componente novo entra quando aparece pela terceira vez, não quando alguém imagina que será útil.

A regra da terceira vez é o que impede o desperdício mais comum: construir uma biblioteca completa antes de saber quais peças o produto realmente usa. Metade do que se antecipa nunca é usada, e ainda precisa ser mantida. O mesmo raciocínio de recorte vale aqui e em como definir o escopo do primeiro produto digital.

Quem participa, e o custo de cada arranjo

Design system não é entregável de uma pessoa, e o arranjo escolhido determina o resultado mais que a ferramenta:

Arranjo Como funciona Risco
Time dedicado duas ou três pessoas cuidando do sistema como produto só se paga em empresa com muitos produtos; caro e lento demais para o resto
Federado cada time contribui, com um grupo pequeno aprovando funciona bem, e depende de o grupo responder rápido
Guardião único uma pessoa mantém, com tempo reservado na agenda o arranjo mais comum em empresa pequena, e o mais frágil: para quando ela sai
Ninguém o sistema existe no arquivo e no repositório vira documentação histórica em poucos meses

Para a maior parte das empresas, o federado com um guardião de plantão é o arranjo realista: quem constrói a tela propõe o componente, e alguém com contexto aprova em dois dias.

Por que a maioria morre

  • Foi feito por uma pessoa, para ela mesma. Sistema é acordo; sem quem programa participando das decisões, ele vira sugestão.
  • Não tem dono depois do lançamento. Todo sistema apodrece sem alguém responsável por manter, e essa responsabilidade precisa caber no horário de trabalho de alguém.
  • É mais difícil de usar que ignorar. Se copiar o código antigo é mais rápido que achar o componente, o time copia. Facilidade de uso vence disciplina sempre.
  • Fica desatualizado em relação ao produto, e a partir daí ninguém confia nele. Um componente errado na documentação queima a confiança em todos os outros.
  • Foi vendido como economia de tempo imediata. O ganho aparece no terceiro mês; a expectativa errada mata o projeto no primeiro.

Quem decide o que entra

A parte chata e a que determina a sobrevivência. Três decisões precisam ter respostas escritas antes do primeiro componente:

  • Quem aprova componente novo, e em quanto tempo responde. Sem prazo, o time contorna o sistema para não travar a entrega.
  • Como uma exceção é tratada. Exceções vão existir. O caminho saudável é permitir com registro, e revisar o que se repete: exceção que aparece três vezes é componente faltando.
  • Como uma mudança é comunicada, incluindo o que fazer com as telas que usam a versão antiga. Mudança silenciosa em componente compartilhado quebra tela que ninguém estava olhando.

Acessibilidade entra no componente

É o maior ganho pouco anunciado de um design system: resolver contraste, tamanho de área de toque, foco visível de teclado e rótulo de campo uma vez, dentro do componente, em vez de cobrar isso de cada tela em cada revisão.

Feito assim, a acessibilidade deixa de depender de quem está atento no dia e passa a ser o comportamento padrão de quem usa o sistema. É a diferença entre uma regra que se cobra e uma que se herda, e o assunto inteiro está em acessibilidade em projetos digitais.

O que medir

  1. Adoção, ou seja, a fração de telas que usam os componentes do sistema. É o único indicador que diz se ele existe de fato.
  2. Tempo para montar uma tela nova, comparado com antes. É o argumento que convence quem paga.
  3. Quantidade de variações fora do padrão, que deve cair mês a mês e nunca chegar a zero.
  4. Tempo de resposta a um pedido de componente novo, porque demora é o que faz o time abandonar o sistema.
  5. Defeitos de interface repetidos, que deveriam desaparecer quando o conserto acontece no componente e não na tela.

Quando é cedo demais

Design system tem custo de manutenção permanente, e ele só se paga quando existe repetição. É cedo quando o produto tem poucas telas e um único desenvolvedor, quando a interface ainda muda de rumo toda semana, ou quando não há ninguém que possa manter o sistema depois de construído.

Nesses casos a versão útil é bem menor: um arquivo com as cores nomeadas, a escala de espaçamento e três componentes. Isso resolve quase toda a inconsistência e custa quase nada para manter, e o sistema completo pode esperar até o momento em que duas pessoas passem a discordar sobre a mesma tela. A forma de organizar essa construção no time aparece em desenvolvimento de software, e a base do que a interface precisa entregar antes de qualquer padronização está em a importância do mobile first.

Perguntas frequentes

O que é um design system?

É o conjunto de decisões de interface que um time deixa de tomar de novo a cada tela. Biblioteca de componentes, arquivo de design e manual de marca são peças dele; o sistema é o acordo que faz essas peças serem usadas. Ele tem três camadas: fundações, com cor, tipografia e espaçamento nomeados; componentes, com seus estados; e documentação com regras de uso.

Qual a diferença entre design system e biblioteca de componentes?

A biblioteca é a camada dos componentes. O design system inclui as fundações e, principalmente, as regras de uso: quando usar cada componente e o que não fazer. Componente sem regra de uso é reutilizado errado com a mesma facilidade com que é reutilizado certo, e o resultado é uma interface consistente na aparência e incoerente no comportamento.

Como implementar um design system?

Em seis passos: inventário do que já existe, contando quantos botões e quantos azuis estão em uso; fundações primeiro, com nomes; os cinco componentes mais repetidos e nenhum além disso; aplicação em uma tela real, de preferência uma que esteja sendo refeita; documentação escrita na hora, com o motivo; e crescimento por demanda, com a regra de só criar componente que já apareceu três vezes.

Por que a maioria dos design systems morre?

Porque foi feito por uma pessoa para ela mesma, sem quem programa participando. Porque não tem dono depois do lançamento e ninguém com tempo reservado para manter. Porque é mais difícil de usar que ignorar, e facilidade vence disciplina sempre. Porque fica desatualizado e um componente errado na documentação queima a confiança em todos. E porque foi vendido como economia imediata, quando o ganho aparece no terceiro mês.

Quem deve manter o design system?

Time dedicado só se paga em empresa com muitos produtos. O arranjo federado, em que cada time contribui e um grupo pequeno aprova, funciona bem desde que o grupo responda rápido. Guardião único é o mais comum em empresa pequena e o mais frágil, porque para quando a pessoa sai. Para a maior parte das empresas, federado com um guardião de plantão é o arranjo realista.

Como decidir se um componente novo entra no sistema?

Pela regra da terceira vez: entra quando o padrão já apareceu três vezes, não quando alguém imagina que será útil. Metade do que se antecipa nunca é usada e ainda precisa ser mantida. É preciso também definir quem aprova e em quanto tempo responde, porque sem prazo o time contorna o sistema para não travar a entrega, e como as exceções são registradas e revisadas.

Como o design system ajuda na acessibilidade?

É o ganho menos anunciado: contraste, tamanho de área de toque, foco visível de teclado e rótulo de campo são resolvidos uma vez, dentro do componente, em vez de cobrados de cada tela em cada revisão. Feito assim, a acessibilidade deixa de depender de quem está atento no dia e passa a ser o comportamento padrão de quem usa o sistema.

O que medir em um design system?

Adoção, ou seja, a fração de telas que usam os componentes, que é o único indicador que diz se ele existe de fato. Tempo para montar uma tela nova comparado com antes, que é o argumento para quem paga. Quantidade de variações fora do padrão, que deve cair mês a mês. Tempo de resposta a um pedido de componente novo. E defeitos de interface repetidos, que deveriam desaparecer.

Quando é cedo demais para ter um design system?

Quando o produto tem poucas telas e um único desenvolvedor, quando a interface ainda muda de rumo toda semana, ou quando não há ninguém que possa manter o sistema depois de construído. Nesses casos a versão útil é bem menor: um arquivo com as cores nomeadas, a escala de espaçamento e três componentes, que resolve quase toda a inconsistência e custa quase nada.

Por que o design não fica igual ao que está no ar?

Quase sempre porque as fundações existem como duas listas mantidas em paralelo, uma no arquivo de design e outra no código. Enquanto cor, espaçamento e tipografia não forem valores compartilhados entre os dois lados, o desalinhamento volta a cada entrega, e o sintoma é sempre o mesmo: no arquivo está certo e no site está diferente.