Case Study: Desactivación suave
Desafío
A medida que los productos digitales se vuelven cada vez más complejos, los desarrolladores conscientes del clima están explorando formas en toda la pila para optimizar las aplicaciones con el fin de reducir el consumo de energía y los costos de infraestructura, al tiempo que se mantiene la experiencia del usuario. (link: https://www.linkedin.com/in/vincentoffroy/?originalSubdomain=fr class: mylink lang: de rel: nofollow role: button target: _blank title: Wikipedia text: Vincent Offroy) ha sido pionera en el «(link: https://medium.com/@offroy.vincent.dev/soft-disabling-fr-4fe2121473ce class: mylink lang: de rel: nofollow role: button target: _blank title: Wikipedia text: desactivación suave)», un enfoque de diseño ecológico que desactiva temporalmente las funciones que rara vez se utilizan después de una inactividad prolongada, en lugar de eliminarlas de forma permanente. Los usuarios pueden reactivar estas funciones cuando sea necesario, logrando un equilibrio entre la usabilidad, la sostenibilidad y la rentabilidad. Si las funciones desactivadas de forma temporal siguen sin utilizarse, los equipos de producto pueden considerar su eliminación definitiva.
Las interfaces digitales suelen contener numerosas funciones con un uso limitado. Cada función, especialmente aquellas que requieren llamadas a la API, la obtención de datos en tiempo real o altos recursos computacionales, contribuye a la sobrecarga de la infraestructura. Este enfoque aborda un dilema triple en la gestión de funciones:
- Sobrecarga de la API: las solicitudes de red redundantes aumentan la carga del servidor y el consumo de energía.
- Costes de infraestructura: las funciones siempre activas inflan los gastos de alojamiento y mantenimiento.
- Preocupaciones sobre la experiencia del usuario: la eliminación total de funciones puede alejar a grupos de usuarios específicos.
La desactivación suave se basa en decisiones sólidas basadas en datos para equilibrar estos factores de una manera muy convincente, incluso cuando se cuenta con un mínimo de aceptación por parte de las partes interesadas en iniciativas conscientes del clima.
Objetivos
- Reducir el consumo de energía y los costes de infraestructura desactivando las funciones que se utilizan con poca frecuencia.
- Preservar la experiencia del usuario manteniendo la opción de reactivar las funciones cuando sea necesario.
- Proporcionar información basada en datos para orientar el desarrollo y la obsolescencia de funciones en el futuro.
- Reducir la huella de carbono de la aplicación sin sacrificar la funcionalidad.
- Crear un enfoque sostenible para la gestión del ciclo de vida de las funciones.
Enfoque
La desactivación suave introduce un mecanismo de interfaz adaptable:
- Seguimiento del uso: implementar análisis para supervisar la frecuencia con la que los usuarios interactúan con cada función, estableciendo patrones de uso de referencia e identificando candidatos para la desactivación suave. Asegurarse de que todo el seguimiento cumpla con las normas de privacidad, esté cubierto en los términos de servicio y respete las opciones de consentimiento de los usuarios.
- Proceso de desactivación automatizado: crear mecanismos para ocultar y desactivar automáticamente los recursos de backend de las funciones que permanecen sin usar más allá de un umbral definido (normalmente de 2 a 4 semanas).
- Reactivación fácil de usar: diseñe «llamadas a la acción» (CTA) intuitivas, como botones, que permitan a los usuarios restaurar fácilmente las funciones desactivadas cuando sea necesario, con una fricción mínima en la experiencia del usuario.
- Mensajes de concienciación ecológica: desarrolle mensajes sutiles para informar a los usuarios sobre los beneficios de la desactivación de funciones en materia de sostenibilidad, fomentando la comprensión, la aceptación y el aprecio.
- Pruebas progresivas: implementar la desactivación suave de forma gradual en todos los conjuntos de funciones, probando diferentes umbrales y métodos de reactivación para encontrar el equilibrio óptimo entre el ahorro de recursos y la satisfacción del usuario.
Impacto
La desactivación suave puede aportar importantes beneficios medioambientales y técnicos:
- Mejoras técnicas: reducir las solicitudes innecesarias de API, disminuyendo el consumo de energía. Por ejemplo, al desactivar suavemente una función que solo utiliza el 5 % de los usuarios y que es responsable del 10 % de las llamadas diarias a la API, Vincent estima que este enfoque daría lugar a una reducción del 7 % en el consumo de energía del servidor y del 3 % en los costes de computación en la nube.
- Experiencia del cliente/UX: mejorar el rendimiento y la capacidad de respuesta de la aplicación aligerando la carga de las páginas, lo que se traduce en una experiencia de usuario más rápida.
- Impacto empresarial: reducir los costes de infraestructura mediante un uso más eficiente de los recursos y una escalabilidad más sostenible a medida que crece la base de usuarios. Reducir la deuda técnica derivada del mantenimiento de funciones no utilizadas y generar una mejor comprensión de la popularidad de las funciones y los patrones de uso.
- Sostenibilidad centrada en el usuario: los usuarios tienen el control, lo que garantiza la accesibilidad a las funciones y fomenta un compromiso ecológico.
- Eficiencia en las emisiones de carbono: reducir el consumo de energía del servidor gracias a la disminución de las demandas computacionales y, por lo tanto, reducir la huella de carbono de su producto.
Conclusiones clave
- El diseño ecológico requiere equilibrio: la desactivación suave ofrece un término medio entre mantener las funciones no utilizadas y eliminarlas por completo.
- Las decisiones basadas en datos son esenciales: el seguimiento del uso garantiza que las optimizaciones se basen en patrones de comportamiento reales y no en suposiciones.
- El control por parte del usuario preserva la experiencia: permitir la reactivación mantiene la accesibilidad al tiempo que fomenta la eficiencia de los recursos.
- Las pequeñas optimizaciones tienen un impacto significativo: incluso pequeñas reducciones en el consumo de recursos por usuario pueden producir enormes ganancias de sostenibilidad a gran escala.
- La sostenibilidad puede mejorar la experiencia del usuario: eliminar el desorden y centrarse en las funciones de uso frecuente a menudo mejora la experiencia general del usuario.
- La comunicación con el usuario es importante: una comunicación transparente con los usuarios sobre por qué se desactivan temporalmente las funciones y las ventajas asociadas (por ejemplo, mejora del rendimiento, reducción del impacto medioambiental) puede fomentar la comprensión, la aceptación y el reconocimiento/elogios.
Pasos futuros
¿Qué es lo siguiente para la desactivación suave?
- Desarrollar algoritmos de aprendizaje automático para predecir los umbrales de desactivación óptimos basados en los segmentos de usuarios y los patrones de comportamiento.
- Ampliar la desactivación suave para incluir procesos de backend que consumen más recursos.
- Crear métricas más granulares para medir el impacto medioambiental del uso de las funciones.
- Integrar con los procesos de CI/CD para incorporar métricas de sostenibilidad en los flujos de trabajo de desarrollo.
- Establecer estándares industriales para prácticas de gestión de funciones sostenibles.
Conclusión
La desactivación suave demuestra cómo un diseño bien pensado puede alinear los objetivos de sostenibilidad con los objetivos empresariales y las necesidades de los usuarios. Se trata de una forma excelente de empoderar a los equipos de producto con una estrategia de implementación clara, basada en datos y altamente defendible, incluso cuando se cuenta con un mínimo de aceptación por parte de las partes interesadas en iniciativas conscientes con el clima. Mediante la implementación de una gestión inteligente de las funciones, las organizaciones pueden reducir los residuos digitales al tiempo que mantienen la funcionalidad y la satisfacción de los usuarios. A medida que los productos digitales siguen aumentando en complejidad, enfoques como la desactivación suave cobrarán cada vez más importancia para crear software sostenible que minimice el impacto medioambiental sin comprometer la calidad ni la usabilidad.