Refactoring design system

Refactoring design system

Refactoring design system

Refactoring design system

Oportunidad a resolver

Aumentando la eficiencia del desarrollo de producto en 59% con un sistema de diseño escalable

Entregables

Design system

UI Design

UX Design

Equipo

Herramientas

Figma

No items found.

Nuestro sistema de diseño presentaba varios problemas que surgieron al escalar el producto digital en el que estábamos trabajando. Entre ellos:

  • Falta de una estructura clara, ya que los componentes estaban colocados en una sola página sin un orden definido.
  • Casos de uso limitados para los componentes, lo que dificultaba la escalabilidad del sistema.
  • Baja adopción del sistema de diseño, ya que algunos desarrolladores lo consideraban solo como una referencia visual, en lugar de una herramienta funcional de la que pudieran extraer código fácilmente implementable en el entorno de desarrollo.
  • Problemas de accesibilidad en algunos componentes clave, los cuales estaban presentes en casi el 100 % de las pantallas del sistema.

Investigación y desarrollo

En la escala de color que utilizábamos anteriormente, se detectaron problemas relacionados con un uso no semántico del color. Es decir, existían distintos estilos que aplicaban color, pero no había documentación que indicara en qué casos debía usarse un color u otro.

Además, la falta de una definición clara de los colores primario, secundario y terciario dificultaba la elección entre ellos. A esto se sumaba que las gamas de color disponibles no eran lo suficientemente amplias para cubrir todos los casos de uso. Por ejemplo, faltaba un tono de gris con menor luminosidad para textos secundarios o aclaraciones, así como un verde amarillento adecuado para alertas y otro tono que pudiera utilizarse en otros contextos específicos.

Anterior sistema de color.

Como mejora, implementamos una nueva escala de color en la que todos los colores cumplen con un ratio de contraste mínimo de AA, según los estándares de la WCAG. Además, se creó una colección de variables que organizan los colores según su luminosidad. Por ejemplo, dentro de la escala de grises, el tono más claro se nombró semánticamente como GREY/20.

Nuevo sistema de color que cumple el requerimiento mínimo de contraste AA según la WCAG

Adicionalmente, cada color se vinculó a un uso semántico específico, haciendo referencia a un token primitivo asociado a su valor HEX. Esto permitió definir con mayor claridad en qué casos debe utilizarse cada color, asegurando coherencia y accesibilidad en el sistema.

Ejemplo gráfico de relación entre los token primitivos y los token semánticos.

Al igual que con el sistema de color, también identificamos la falta de proporcionalidad y consistencia en los diferentes tamaños de fuente. Además, no existía una documentación clara sobre el uso semántico de las distintas variaciones tipográficas en cuanto a pesos, tamaños, kerning, espaciado entre líneas y otros parámetros.

Antigua escala tipográfica.

Para lograr una mayor consistencia en la aplicación de la tipografía dentro del sistema, creamos una escala basada en una proporción de 1.309, utilizando 16px como valor base. Esto nos permitió mantener una jerarquía visual clara y coherente en todas las representaciones del sistema.

Nueva escala tipográfica.

Quisimos dar un paso más allá y abandonamos el antiguo sistema basado en estilos para definir tipografías y colores. En su lugar, implementamos un sistema más flexible y escalable, que nos permitió asignar un uso semántico a cada decisión de diseño mediante el uso de variables.


Nuevas variables tipográficas.

Un aspecto clave a resolver en nuestro sistema de diseño es garantizar que cada componente sea accesible. Para lograr accesibilidad visual, tomamos como referencia los estándares de la WCAG.

Al evaluar el botón primario, un componente presente en más de 30 pantallas de nuestro sistema, detectamos que no cumplía con el requisito mínimo de contraste para un CTA, como se muestra a continuación:

Muestra de antiguo botón primario, que no cumplía con un estándar mínimo de AA

Una vez identificados los problemas de accesibilidad y usabilidad en el botón primario—un elemento clave en cualquier interfaz, ya que guía al usuario sobre la acción a realizar—implementamos las nuevas variables de diseño.

Estas variables no solo garantizan que el botón cumpla con los requisitos mínimos de contraste visual, sino que también establecen un uso semántico para el color de fondo en los CTA, asignándolo como background-button-primary.

A continuación, se muestran los cambios aplicados:

Nuevo componente de botón en el sistema diseño, que cumple con un estándar mínimo de AA.

Se trabajó en la refactorización de varios componentes, ya que algunos presentaban problemas de accesibilidad, como se evidenció en el caso del botón.

A continuación, se muestra un ejemplo de los diferentes estados y tipos generados para cubrir la mayoría de los casos de uso. En algunas excepciones, no se añadieron los mismos tipos y estados, ya que no eran necesarios para ese componente en particular.

En la siguiente muestra de los estados y tipos del botón dentro de nuestro sistema de diseño, se pueden identificar problemas de accesibilidad visual en ciertos estados, debido a un contraste insuficiente para cumplir con el mínimo AA establecido en las WCAG:

Antiguo componente de botón dentro del sistema de diseño.

En contraste con el botón anterior, creamos diferentes estados para el componente, asegurándonos de que cada uno cumpliera con el contraste mínimo AA según el estándar WCAG, mejorando así la accesibilidad visual.

A continuación, se muestran los cambios aplicados:

Nuevo componente de botón dentro del sistema de diseño.

Además de la refactorización del sistema de diseño, realizamos encuentros 1:1 con los desarrolladores del equipo para fomentar una comunicación más cercana entre diseño y desarrollo. Durante estas sesiones, los guiamos a través del diseño y exploramos las posibilidades que ofrece el Dev Mode de Figma.

El objetivo de estas acciones fue incrementar la adopción del sistema de diseño, no solo dentro del equipo de diseño, sino también entre los desarrolladores, asegurando que pudieran aprovecharlo de manera efectiva en su flujo de trabajo.

Guía para la Adopción del Sistema de Diseño

Además de la refactorización del sistema de diseño, organizamos encuentros 1:1 con los desarrolladores del equipo para fomentar una comunicación más fluida entre diseño y desarrollo. Durante estas sesiones, guiamos a los desarrolladores a través de los diseños y las capacidades del Dev Mode de Figma, lo que les permitió comprender mejor cómo utilizar las herramientas y componentes disponibles.

El objetivo de estas acciones fue incrementar la adopción del sistema de diseño, asegurando que no solo el equipo de diseño, sino también el equipo de desarrollo, pudiera aprovechar y utilizar eficazmente el sistema en su flujo de trabajo diario.

Gobernanza del Sistema de Diseño

Para garantizar una administración ordenada del sistema de diseño, establecimos procedimientos de mantenimiento y solicitudes para modificarlo. Se designó un responsable único, encargado de recibir y evaluar las solicitudes del equipo de diseño y desarrollo, relacionadas con la creación o modificación de componentes en el sistema de diseño.

Para adoptar o actualizar un componente, definimos una serie de criterios que deben evaluarse tanto en su aceptación como en la priorización de la actualización o incorporación de nuevos componentes en el sistema de diseño. Estos son:

  • Impacto del componente: Evaluado según la cantidad de pantallas del sistema en las que aparece.
  • Complejidad del componente: Medida en función del tiempo requerido para su actualización o desarrollo.

Impacto en el ROI

Además de mejorar la adopción del sistema de diseño dentro del equipo de producto, uno de los objetivos principales de un sistema de diseño es optimizar la eficiencia del equipo al agilizar los tiempos de desarrollo. Utilizando la calculadora de knapsack y las siguientes variables:

  • $40,000 costo anual por empleado
  • 7 usuarios del sistema de diseño
  • 20% de mejora en la eficiencia del proceso de desarrollo de producto

El resultado fue un ahorro potencial de $56,000 anuales.

Ahorros potenciales estimados del sistema de diseño.

Si traducimos este impacto a la eficiencia en la implementación de un nuevo componente, tomando en cuenta:

  • 16 horas en diseño, codificación y mantenimiento por componente sin un sistema de diseño.
  • 10 horas en diseño, codificación y mantenimiento por componente con un sistema de diseño.
  • 20 componentes creados en total.

Esto nos llevó a los siguientes resultados:

  • 320 horas de implementación sin un sistema de diseño.
  • 130 horas de implementación con un sistema de diseño.
  • 190 horas ahorradas, lo que representa un incremento del 59% en la eficiencia en desarrollo.

Este ahorro de tiempo impacta directamente en la velocidad de entrega y la optimización de recursos dentro del equipo.

03

Zona Running

2020
Web design
Ver más
Ver más
Ver más
Ver más

Crear una solución digital que democratice el acceso al bienestar físico y mental.

Diseño UX
Diseño UI
Desarrollo web
01

Event flow

2025
Thumbnail redesign event registration flow
Ver más
Ver más
Ver más
Ver más

Rediseñando la experiencia de usuario de un flujo de registro de eventos.

UI Design
UX Design