Lara Design System

Nexti e Orsegups

Um Design System multimarca

Ano

2021 - 2023

Cliente

Nexti e Orsegups

Papel

Design System Specialist e Lead Designer

Design System Specialist e Lead Designer

Categorias

Design System, acessibilidade, teste de usabilidade, tokens e handoff

Impacto

100+

Tokens criados

100+

Tokens criados

30

Componentes criados

30

Componentes criados

6

Padrões criados

6

Padrões criados

18

Critérios de acessibilidade respeitados

18

Critérios de acessibilidade respeitados

100+

Tokens criados

30

Componentes criados

6

Padrões criados

18

Critérios de acessibilidade respeitados

Contexto

Como surgiu o projeto?

No projeto da Ubisafe já existiam dois Design Systems (app e web). A pedido da gestão da Orsegups, “empresa mãe” da UbiSafe e Nexti, foi iniciado o projeto de criar um Design System que atendesse todas as marcas, sem ter a necessidade de criar um ou dois para cada empresa. Por isso, com o Design System multimarcas teríamos apenas um.

No projeto da Ubisafe já existiam dois Design Systems (app e web). A pedido da gestão da Orsegups, “empresa mãe” da UbiSafe e Nexti, foi iniciado o projeto de criar um Design System que atendesse todas as marcas, sem ter a necessidade de criar um ou dois para cada empresa. Por isso, com o Design System multimarcas teríamos apenas um.

3

Designers

3

Desenvolvedores

1

Product Owner

Equipe do projeto (vou usar foto de animais para representar os integrantes e eu)

Imagens de telas antigas

Imagens de telas antigas

Contexto

Como surgiu o projeto?

No projeto da Ubisafe já existiam dois Design Systems (app e web). A pedido da gestão da Orsegups, “empresa mãe” da UbiSafe e Nexti, foi iniciado o projeto de criar um Design System que atendesse todas as marcas, sem ter a necessidade de criar um ou dois para cada empresa. Por isso, com o Design System multimarcas teríamos apenas um.

Organização

Bibliotecas de design

A arquitetura separa o que é estrutura do que é marca. Os componentes base são construídos uma vez só, com os tokens declarados no código de cada variante. Trocar de marca passa a ser trocar a biblioteca de tokens, sem tocar no componente.

Na prática, todos os clientes usam a mesma biblioteca de componentes e cada um mantém liberdade para criar variações, mas consumindo folhas de estilo diferentes. Os tokens ficaram divididos em globais, comuns a todas as marcas, e de marca, que é o que diferencia visualmente cada produto e permite criar temas novos.

A arquitetura separa o que é estrutura do que é marca. Os componentes base são construídos uma vez só, com os tokens declarados no código de cada variante. Trocar de marca passa a ser trocar a biblioteca de tokens, sem tocar no componente.

Na prática, todos os clientes usam a mesma biblioteca de componentes e cada um mantém liberdade para criar variações, mas consumindo folhas de estilo diferentes. Os tokens ficaram divididos em globais, comuns a todas as marcas, e de marca, que é o que diferencia visualmente cada produto e permite criar temas novos.

Estilo & Tokens

Nesse arquivo ficam concentrados todos os Design Tokens globais e os de marca. Deve se usar páginas separadas para cada token. Além disso, deve-se construir um inventário de estilos.

Componentes

Principal biblioteca, além dos componentes deve-se ter instruções de uso.

Ícones e suporte

Uma biblioteca de uso dos designers com alguns elementos que ajudam a construir os outros arquivos e facilitam a manutenção.

Handoff

Arquivo de entrega para o time de Tech. Deve apresentar os Tokens

Estilo & Tokens

Nesse arquivo ficam concentrados todos os Design Tokens globais e os de marca. Deve se usar páginas separadas para cada token. Além disso, deve-se construir um inventário de estilos.

Componentes

Principal biblioteca, além dos componentes deve-se ter instruções de uso.

Ícones e suporte

Uma biblioteca de uso dos designers com alguns elementos que ajudam a construir os outros arquivos e facilitam a manutenção.

Handoff

Arquivo de entrega para o time de Tech. Deve apresentar os Tokens

Print da biblioteca de Estilo & Tokens

Print da biblioteca de Estilo & Tokens

Print da biblioteca de Handoff

Print da biblioteca de Handoff

Priorização

Mapeamento e priorização de componentes

Para decidir o que construir primeiro, montei uma matriz estilo Pugh cruzando dificuldade de criação com necessidade de uso, em pesos de 1 para fácil, 3 para médio e 5 para difícil. A soma organizou os componentes em grupos de A a D.

Dificuldade: o quão difícil é de criar / Priorização: necessidade de uso

Pesos: 1 = Fácil / 3 = Médio / 5 = Díficil

Para decidir o que construir primeiro, montei uma matriz estilo Pugh cruzando dificuldade de criação com necessidade de uso, em pesos de 1 para fácil, 3 para médio e 5 para difícil. A soma organizou os componentes em grupos de A a D.

Dificuldade: o quão difícil é de criar / Priorização: necessidade de uso

Pesos: 1 = Fácil / 3 = Médio / 5 = Díficil

Matriz de priorização

Matriz de priorização

Metodologia

Criação da metodologia

Metodologia

Criação da metodologia

Para manter coerência no fluxo de trabalho, construímos uma metodologia própria de criação. Cada componente percorre as mesmas etapas, e a última devolve o ciclo ao começo.

Para manter coerência no fluxo de trabalho, construímos uma metodologia própria de criação. Cada componente percorre as mesmas etapas, e a última devolve o ciclo ao começo.

Imersão e definição

Nessa etapa deve-se coletar informações acerca do componente a ser desenvolvido, entendendo suas variações e diferentes aplicações. Com algumas informações sobre o componente, deve-se levar para a equipe Tech e de Design (todos) para que possam avaliar se todos os cenários possíveis de uso foram contemplados. Tal etapa serve para garantir que o componente sofra menos modificações ao longo das etapas.

Desenvolvimento e discussão

O componente é construído a partir das definições extraídas da fase anterior, sempre com o arquivo de Estilos Visuais e Tokens aberto ao lado, porque é dele que saem todos os valores aplicados: padding, spacing, cor, tipografia, opacidade, sombra e borda. Nada é definido no olho, e a construção só fecha quando todas as variantes que o design system vai consumir estão prontas, e não apenas o estado padrão. Em seguida vem o Critical Review, reunião semanal em que quem construiu apresenta o desenvolvimento, os outros designers experimentam o componente por conta própria, as observações vão direto no arquivo e as definições acordadas ficam anotadas para o projeto. Colocar o componente na mão de quem não o desenhou é o que revela cedo aquilo que só faz sentido para quem construiu.

Documentação e revisão técnica

A documentação é construída no Zero Height, retomando as referências levantadas na imersão e organizada em três pilares. O de design cobre as variações do componente e seus tamanhos máximo e mínimo. O de uso é o mais extenso: quando o componente é usado e para quê, como o conteúdo deve ser escrito, um quadro de do e don't vindo do arquivo de suporte, o comportamento em transições e visualização, além de posicionamento e espaçamento. O terceiro pilar é a acessibilidade, com os critérios que se aplicam àquele componente. Fechada a documentação, o arquivo do Figma e a página do Zero Height vão para as líderes de time, e o retorno delas define o que ainda precisa mudar antes da publicação. Só depois disso o componente é anunciado para o time.

Apresentação prévia e final

Antes da publicação, o componente passa por duas exposições ao grupo ampliado. Na apresentação prévia, design e tecnologia visualizam o componente que acabou de sair do review técnico, ainda com espaço para questionar decisões estruturais. Na apresentação final, os dois times veem a versão fechada acompanhada da documentação, que é o que de fato será consumido no dia a dia. Separar os dois momentos evita a situação mais comum em design system, que é o desenvolvimento descobrir o componente só quando ele já está publicado e sem margem para mudança.

Publicação e melhoria contínua

O Design System deve ser adotado como um produto de prática de padronização contínua. O time deve participar ao máximo das escolhas e isso deve refletir no trabalho de todos, gerando menos tempo de desenvolvimento, mais consistência entre os componentes, visão holística do trabalho e melhores práticas.

Acessibilidae

18 critérios de acessibilidade respeitados

WCAG são diretrizes e recomendações organizadas e mantidas pelo W3C que fundamentam a construção de conteúdos digitais com qualidade e acessíveis a qualquer pessoa independentemente de sua deficiência e/ou habilidade.


Todas as cores do projeto passaram por testes de contraste passando nas categorias AA (4:5:1) e AAA (7:1).

WCAG são diretrizes e recomendações organizadas e mantidas pelo W3C que fundamentam a construção de conteúdos digitais com qualidade e acessíveis a qualquer pessoa independentemente de sua deficiência e/ou habilidade.

Todas as cores do projeto passaram por testes de contraste passando nas categorias AA (4:5:1) e AAA (7:1).

WCAG são diretrizes e recomendações organizadas e mantidas pelo W3C que fundamentam a construção de conteúdos digitais com qualidade e acessíveis a qualquer pessoa independentemente de sua deficiência e/ou habilidade.


Todas as cores do projeto passaram por testes de contraste passando nas categorias AA (4:5:1) e AAA (7:1).

Ao relacionar outros componentes dentro do elemento, siga as diretrizes de acessibilidade desses componentes.

Ao relacionar outros componentes dentro do elemento, siga as diretrizes de acessibilidade desses componentes.

Os componentes

Três níveis de complexidade

Os componentes foram organizados em camadas: peças básicas com função única, combinações que resolvem ações mais complexas, e padrões que estruturam fluxos inteiros reaproveitando tudo o que veio antes.

Os componentes foram organizados em camadas: peças básicas com função única, combinações que resolvem ações mais complexas, e padrões que estruturam fluxos inteiros reaproveitando tudo o que veio antes.

Componentes

Simples

Componentes

Simples

Eles servem como base para componentes mais complexos e têm funções específicas.

Eles servem como base para componentes mais complexos e têm funções específicas.

Componentes simples criados

Componentes simples criados

Componentes

Compostos

Componentes

Compostos

Criados a partir de um ou mais componentes, eles são usados para ações mais complexas.

Criados a partir de um ou mais componentes, eles são usados para ações mais complexas.

Componentes compostos criados

Componentes compostos criados

Componentes

Padrões

Componentes

Padrões

Eles têm uma estrutura complexa e normalmente usam outros elementos da biblioteca.

Eles têm uma estrutura complexa e normalmente usam outros elementos da biblioteca.

Padrões criados

Padrões criados

Tokens

Design Tokens

Os Design Tokens ajudam a escalar e minimizar decisões de design, são os responsáveis por garantir a consistência de estilo. Hoje separamos em Global Tokens (aqueles comuns a todas as marcas), Brand Tokens (o que usamos para diferenciar marcas e criar novos temas).

Os Design Tokens ajudam a escalar e minimizar decisões de design, são os responsáveis por garantir a consistência de estilo. Hoje separamos em Global Tokens (aqueles comuns a todas as marcas), Brand Tokens (o que usamos para diferenciar marcas e criar novos temas).

Exemplo da mudança de tokens no componente Date Picker.

Exemplo da mudança de tokens no componente Date Picker.

Os estados dos componentes servem como um feedback ao usuário sobre as ações que estão acontecendo. Uma das intenções do Design System é padronizar os estados para que, independe de qual seja o componente, as características permanecem semelhantes em suas variações.

Pensando numa maneira de tornar o trabalho do time (Design e Tech) mais alinhado possível, foi estabelecida uma diretriz para estilização de cores, afim de tornar os componentes consistentes entre si dentro do DS.

Os estados dos componentes servem como um feedback ao usuário sobre as ações que estão acontecendo. Uma das intenções do Design System é padronizar os estados para que, independe de qual seja o componente, as características permanecem semelhantes em suas variações.

Pensando numa maneira de tornar o trabalho do time (Design e Tech) mais alinhado possível, foi estabelecida uma diretriz para estilização de cores, afim de tornar os componentes consistentes entre si dentro do DS.

Mudança dos tamanhos de tela.

Mudança dos tamanhos de tela.

Fazer os componentes base, declarar os tokens no código de cada variante e mudar as folhas de estilo/bibliotecas de tokens de acordo com cada empresa/tema. Todos os clientes usam a mesma biblioteca de componente e cada um tem a liberdade de criar variações, mas usam bibliotecas de tokens (folhas de estilo) diferentes.

Fazer os componentes base, declarar os tokens no código de cada variante e mudar as folhas de estilo/bibliotecas de tokens de acordo com cada empresa/tema. Todos os clientes usam a mesma biblioteca de componente e cada um tem a liberdade de criar variações, mas usam bibliotecas de tokens (folhas de estilo) diferentes.

Breve demonstração da estilização.

Breve demonstração da estilização.

Validações

Testar o sistema como se fosse produto

Para a validação inicial, rodamos teste de usabilidade com três designers, sendo dois stakeholders no projeto e um designer tester. A tarefa era montar uma tela de login e um formulário usando apenas componentes do design system.

[Falar sobre como foi o teste]

Para a validação inicial, rodamos teste de usabilidade com três designers, sendo dois stakeholders no projeto e um designer tester. A tarefa era montar uma tela de login e um formulário usando apenas componentes do design system.

[Falar sobre como foi o teste]

Limitações do projeto e sistemade usabilidade com designers

Criação de estilos, Figma não era tão atualizado

Falta de métricas, materiais sobre Design System, validação de acessibilidade com usuários reais

O time ainda carecia de métricas no processo para analisar o impacto do DS, o assunto era recente e não havia tempo, nem espaço para validar com usuários reais, dependo só de bibliografias.

Teste de usabilidade com designers

Para a validação inicial do Design System, foram realizados testes de usabilidade com dois designers interessados e um não envolvido no processo. As instruções foram: criar uma tela de login e um formulário e usar apenas componentes do Design System.

Resultados parciais

Após entregar a primeira versão, ela foi entregue às equipes para uso e passamos para a segunda versão, onde melhoramos os componentes tanto no código quanto no design.

Limitações do projeto e sistemade usabilidade com designers

Criação de estilos, Figma não era tão atualizado

Falta de métricas, materiais sobre Design System, validação de acessibilidade com usuários reais

O time ainda carecia de métricas no processo para analisar o impacto do DS, o assunto era recente e não havia tempo, nem espaço para validar com usuários reais, dependo só de bibliografias.

Teste de usabilidade com designers

Para a validação inicial do Design System, foram realizados testes de usabilidade com dois designers interessados e um não envolvido no processo. As instruções foram: criar uma tela de login e um formulário e usar apenas componentes do Design System.

Resultados parciais

Após entregar a primeira versão, ela foi entregue às equipes para uso e passamos para a segunda versão, onde melhoramos os componentes tanto no código quanto no design.