Acelerando la calidad del código con las métricas de DORA

Rate this content
Bookmark

¿Cuáles son los beneficios de convertirse en un Intérprete de élite? La respuesta puede ser complicada. Únete a mí hoy para un breve viaje para acelerar la calidad del código con las métricas de DORA de Google y la mejora continua del código para impulsar una mayor entrega de software y rendimiento del equipo.

This talk has been presented at JSNation Live 2021, check out the latest edition of this JavaScript Conference.

FAQ

Las métricas de Dora, desarrolladas por el DevOps Research and Assessment de Google, son indicadores clave utilizados para evaluar y promover mejoras en las prácticas de entrega de software. Estas métricas permiten a las organizaciones medir su rendimiento en términos de frecuencia de despliegue, tiempo de entrega de cambios, tasa de fallos en los cambios y tiempo de restauración de servicios. Ayudan a las empresas a identificar áreas de mejora y a evolucionar hacia niveles de rendimiento más altos.

Los equipos que alcanzan el nivel élite según las métricas de Dora pueden disfrutar de beneficios significativos como la capacidad de desplegar actualizaciones 208 veces más frecuentemente que los de bajo rendimiento, ser 106 veces más rápidos en la entrega de características, y tener una tasa de fallos 7 veces menor. Esto conduce a una mejora notable en la calidad del software y mayores ingresos por la rápida implementación de nuevas funciones.

Para mejorar el rendimiento del equipo de software, es crucial adoptar prácticas de desarrollo ágil, implementar integración y despliegue continuos, automatizar pruebas y restauraciones de servicios, y utilizar métricas de rendimiento como las de Dora para identificar y corregir rápidamente los problemas. Además, la mejora continua del código y la detección proactiva de errores juegan un papel importante en la elevación de la calidad y la eficiencia del equipo.

Rollbar es una plataforma que ofrece visibilidad en tiempo real de los errores en la aplicación, permitiendo a los desarrolladores detectar y corregir fallos rápidamente. Proporciona una 'huella digital' única para cada error, facilitando su rastreo y resolución. Rollbar ayuda a reducir el tiempo dedicado a solucionar problemas y permite a los equipos de desarrollo ser más proactivos en la gestión de la calidad del código.

Para implementar las métricas de Dora, una organización debe comenzar por establecer un sistema de seguimiento que permita recoger datos sobre la frecuencia de despliegues, el tiempo de entrega de cambios, la tasa de fallos y el tiempo de restauración. Estos datos deben analizarse periódicamente para identificar tendencias y áreas de mejora. Es también recomendable utilizar herramientas y plataformas como Rollbar que facilitan la recopilación y análisis de estos datos.

Un rollback en el desarrollo de software es el proceso de revertir un despliegue o actualización a un estado anterior debido a errores o fallos detectados después de la implementación. Sirve como una medida de seguridad para mantener la estabilidad y disponibilidad del servicio mientras se resuelven los problemas. Las herramientas de automatización pueden facilitar los rollbacks rápidos y eficientes, minimizando el impacto negativo en los usuarios finales.

Nico Krüger
Nico Krüger
27 min
09 Jun, 2021

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Esta charla discute las métricas de Dora y su relación con la mejora continua del código. Los intérpretes de alto y élite implementan con más frecuencia y tienen una tasa de fallos en los cambios más baja. La mejora continua del código implica identificar y solucionar errores en tiempo real. Rollbar es una plataforma de mejora continua del código que proporciona visibilidad de errores accionables. Ayuda a las organizaciones a reducir el riesgo de perder clientes y optimizar la productividad de los desarrolladores. Las huellas únicas de errores y las características avanzadas de Rollbar permiten una comprensión más profunda de los problemas y una resolución más rápida.

1. Introduction to Dora Metrics

Short description:

Hola a todos. Mi nombre es Niko Kruger. Hoy voy a hablar sobre cómo acelerar la calidad del código con las métricas de Dora. Exploraremos qué es Dora y su relación con la mejora continua del código. También discutiremos los beneficios de convertirse en un ejecutante de élite y el camino para acelerar la calidad de tu código.

Hola a todos. Mi nombre es Niko Kruger. Y hoy voy a hablarles sobre cómo acelerar la calidad del código con las métricas de Dora. He pasado los últimos 13 años trabajando con empresas de software en todo el mundo, ayudándolas a mejorar la calidad de su software, enfocándome específicamente en aplicaciones críticas de calidad. Y hoy, me desempeño como Director Senior de Ingeniería de Soluciones aquí en Rollbar. Así que para la agenda de hoy, vamos a ver tres cosas. La primera es echar un vistazo a qué es Dora y cómo se relaciona con la mejora continua del código. También vamos a analizar los beneficios que obtendrás tú y tu organización una vez que te conviertas en un ejecutante de élite, a medida que pases de bajo, medio, alto a la categoría de ejecutante de élite. También vamos a ver el camino para acelerar la calidad del código con la mejora continua del código, y qué beneficios puedes esperar recibir una vez que tu organización alcance ese estatus de alto rendimiento y élite.

Entonces, primero veamos qué son las métricas de Dora. El DevOps Research and Assessment es un equipo de Google que ha dedicado varios años a investigar algunas de las cosas clave que impulsan a las organizaciones de mayor rendimiento en todo el mundo. Y han analizado los procesos técnicos, la medición de la cultura y todas estas capacidades que conforman estos equipos de alto rendimiento. También han analizado no solo los equipos de entrega de software de alto rendimiento, sino también las organizaciones que generan ingresos para sus clientes. Asegurándose de que los productos que lanzan estos equipos de alto rendimiento realmente den resultados tangibles en el negocio. Lo que han analizado, es un conjunto de métricas clave que han identificado y que puedes utilizar en tu organización para comprender dónde te encuentras actualmente y también qué debes hacer para avanzar en esta cadena y convertirte en un ejecutante de élite.

2. Metrics and Benefits of High and Elite Performers

Short description:

El tiempo de entrega de las características a los clientes es una métrica crucial. Desplegar con mayor frecuencia y medir la tasa de fallos en los cambios y el tiempo de restauración de los servicios también es importante. Los ejecutantes de alto y élite despliegan a demanda y múltiples veces al día, mientras que los ejecutantes de bajo rendimiento lo hacen una vez al mes o cada seis meses. Los ejecutantes de alto rendimiento tienen un tiempo de entrega de cambios de menos de un día, mientras que los ejecutantes de bajo rendimiento tardan más de un mes a seis meses. Los ejecutantes de alto y élite tienen una tasa de fallos en los cambios de cero a 15%, mientras que los ejecutantes de bajo rendimiento tienen una tasa del 50 al 60%. Los ejecutantes de alto y élite también tienen un proceso automatizado o semiautomatizado para restaurar los servicios, mientras que los ejecutantes de bajo rendimiento tardan más de una semana. Convertirse en un ejecutante de alto y élite permite desplegar con mayor frecuencia y entregar características a los clientes más rápidamente, lo que proporciona una ventaja competitiva significativa.

La primera es el tiempo de entrega de las características a los clientes. Y lo que eso significa es el tiempo que te lleva desde tener una idea hasta llevarla a través de tu canalización y ponerla en manos de tus clientes. Así les das un valor real para que puedan utilizar estas características de manera muy rápida día tras día y comenzar a darte comentarios sobre cómo funcionan y, obviamente, cómo eso puede afectar, por ejemplo, tus ingresos si es una aplicación orientada a los ingresos.

La siguiente parte es, por supuesto, desplegar con mayor frecuencia. Así que hemos analizado cómo estas organizaciones están desplegando, con qué frecuencia lo hacen y, una vez que lo hacen, ¿cuál es su tasa de fallos en los cambios? ¿Con qué frecuencia fallan estos lanzamientos? Por ejemplo, si comienzas a lanzar más, ¿fallas más a menudo o no? Y para esos fallos, también se analiza el tiempo de restauración de estos servicios. ¿Cuánto tiempo te lleva realmente revertir un despliegue fallido y ponerlo en funcionamiento nuevamente para que tus clientes vuelvan a utilizar tu solución? También está, por supuesto, la disponibilidad, pero eso no forma parte de las métricas de la discusión de hoy. Entonces, ¿qué medimos realmente cuando se trata de las métricas de Dora? Hay realmente un par de categorías aquí para esas cuatro métricas clave. Si echamos un vistazo a la frecuencia de despliegue, nuestros ejecutantes de bajo rendimiento realmente buscan hacer esto una vez al mes o cada seis meses. Y si avanzas hacia los ejecutantes de alto y élite, nuestros ejecutantes de élite realmente lo hacen a demanda y múltiples veces al día. De hecho, en Rollbar, hemos visto a algunos de nuestros clientes lanzar más de 4,000 veces en una semana determinada. Y eso solo te da una idea de lo rápido y con qué frecuencia pueden realizar cambios y características y ponerlos en manos de sus clientes. Y realmente, eso te ayuda a entender si tomas cambios más pequeños y los llevas a los clientes, ¿qué valor están obteniendo de ello? ¿Es algo de valor para ellos y ayudará a tu aplicación o negocio a avanzar? Para esos ejecutantes de menor rendimiento, eso, por supuesto, es un ciclo muy largo y, de hecho, tienes que agrupar muchos despliegues grandes y a menudo ni siquiera cambios grandes en estos pocos despliegues al año.

Ahora, por supuesto, si comenzamos a ver cuánto tiempo nos lleva llevar estos cambios a las manos de nuestros clientes, observamos el tiempo de entrega de cambios y, nuevamente, nuestros ejecutantes de alto rendimiento pueden hacer esto en algunos casos en menos de un día. Ahora, por supuesto, eso depende de qué tan grande sea un cambio o solicitud de características, pero, por supuesto, estos equipos de élite están dividiendo esto en partes más pequeñas de trabajo que están entregando a los clientes muy, muy rápidamente. Para aquellos en la escala de bajo rendimiento, nuevamente, lleva más de un mes a seis meses llevar estos cambios hasta el final de la canalización, probarlos, validarlos y ponerlos en manos de sus clientes. Y, por supuesto, eso puede afectar negativamente los ingresos, ya que tus clientes tienen que esperar más tiempo. Y, de hecho, tus competidores podrían estar innovando más que tú, ya sabes, en una proporción de 10 a 1. Y, por supuesto, a medida que estamos implementando más estos cambios en vivo, a menudo se puede esperar que nuestra tasa de fallos en los cambios sea muy alta, pero eso no fue realmente cierto. Entonces, nuestros ejecutantes de alto y élite tenían una tasa de fallos en los cambios de cero a 15%, en comparación con los ejecutantes de menor rendimiento, que tenían una tasa de fallos de aproximadamente el 50 al 60%. Entonces, por supuesto, cuanto más tiempo pasamos implementando, en realidad, mejoramos en ello. Y el tiempo de restauración fue realmente un reflejo de esto. Entonces, los ejecutantes de alto y élite tenían un proceso casi idéntico para restaurar sus servicios si algo sale mal. Y para los ejecutantes de alto y élite, esto está automatizado en cierta medida, si no completamente automatizado, mientras que nuestros ejecutantes de bajo rendimiento tardan más de una semana en recuperar estos servicios. Y fue un proceso muy manual volver a poner en funcionamiento estos elementos. Entonces, si comenzamos a analizar estas métricas, a medir a tu equipo, ¿cuáles son algunos de los beneficios que puedes esperar una vez que te conviertas en un ejecutante de alto y élite? Entonces, el grupo DORA encontró en realidad un par de beneficios bastante fenomenales que estos equipos de élite y alto rendimiento estaban obteniendo. Entonces, el primero es que en realidad estaban implementando 208 veces más frecuentemente que aquellos en el extremo inferior de la escala. Y eso nos dice que en realidad tienen la capacidad de impulsar características y capacidades en manos de los clientes más rápido. Y eso significa que son aproximadamente 106 veces más rápidos que los ejecutantes de bajo rendimiento. Eso significa que pueden poner características y partes valiosas que generan ingresos de la aplicación en manos de sus clientes. Entonces, nuevamente, eso es algo a tener en cuenta si quieres superar a tus competidores en el mercado actual.

QnA

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Un Marco para Gestionar la Deuda Técnica
TechLead Conference 2023TechLead Conference 2023
35 min
Un Marco para Gestionar la Deuda Técnica
Top Content
Today's Talk discusses the importance of managing technical debt through refactoring practices, prioritization, and planning. Successful refactoring requires establishing guidelines, maintaining an inventory, and implementing a process. Celebrating success and ensuring resilience are key to building a strong refactoring culture. Visibility, support, and transparent communication are crucial for addressing technical debt effectively. The team's responsibilities, operating style, and availability should be transparent to product managers.
Principios para Escalar el Desarrollo de Aplicaciones Frontend
React Summit 2023React Summit 2023
26 min
Principios para Escalar el Desarrollo de Aplicaciones Frontend
Top Content
This Talk discusses scaling front-end applications through principles such as tearing down barriers, sharing code in a monorepo, and making it easy to delete code. It also emphasizes incremental migration, embracing lack of knowledge, and eliminating systematic complexity. The Talk highlights the use of automation in code migration and the importance of removing barriers to enable smoother code migration.
Luchando contra la Deuda Técnica con la Refactorización Continua
React Day Berlin 2022React Day Berlin 2022
29 min
Luchando contra la Deuda Técnica con la Refactorización Continua
Top Content
This Talk discusses the importance of refactoring in software development and engineering. It introduces a framework called the three pillars of refactoring: practices, inventory, and process. The Talk emphasizes the need for clear practices, understanding of technical debt, and a well-defined process for successful refactoring. It also highlights the importance of visibility, reward, and resilience in the refactoring process. The Talk concludes by discussing the role of ownership, management, and prioritization in managing technical debt and refactoring efforts.
Construyendo equipos interculturales de alto rendimiento
React Day Berlin 2022React Day Berlin 2022
25 min
Construyendo equipos interculturales de alto rendimiento
The Talk discusses the importance of effective communication and collaboration in cross-cultural teams. It emphasizes the impact of culture on communication and performance evaluation. The speaker highlights the differences between low-context and high-context communication styles and the need to understand cultural nuances. It also explores the challenges of giving feedback in multicultural teams and suggests ways to improve communication and create a feedback culture. The influence of language on communication and the importance of transparency and honesty in feedback are also discussed.
Escala tu aplicación de React sin micro-frontends
React Summit 2022React Summit 2022
21 min
Escala tu aplicación de React sin micro-frontends
This Talk discusses scaling a React app without micro-frontend and the challenges of a growing codebase. Annex is introduced as a tool for smart rebuilds and computation caching. The importance of libraries in organizing code and promoting clean architecture is emphasized. The use of caching, NxCloud, and incremental build for optimization is explored. Updating dependencies and utilizing profiling tools are suggested for further performance improvements. Splitting the app into libraries and the benefits of a build system like NX are highlighted.
Una Guía Rápida y Completa para Medir tu Deuda Técnica y Utilizar los Resultados
TechLead Conference 2023TechLead Conference 2023
27 min
Una Guía Rápida y Completa para Medir tu Deuda Técnica y Utilizar los Resultados
This Talk discusses the measurement and interpretation of tech lead, focusing on tech debt. Tech debt is a tool to temporarily speed up development but can have negative consequences if not managed properly. Various tech debt metrics, including heuristic metrics and second-tier metrics, can help identify and manage tech debt. Tech debt interest is crucial for measuring the impact of tech debt and allows for prioritization. It is important to collect and analyze tech debt metrics to ensure software and team health.

Workshops on related topic

De Ingeniero a Líder: Un Masterclass para Líderes Tecnológicos Primerizos
TechLead Conference 2024TechLead Conference 2024
144 min
De Ingeniero a Líder: Un Masterclass para Líderes Tecnológicos Primerizos
Workshop
Andrew Murphy
Andrew Murphy
Transicionar de un rol de contribuidor individual a una posición de liderazgo, especialmente en la industria tecnológica de ritmo acelerado, es enormemente desafiante. La mayoría de los nuevos líderes no reciben ningún tipo de capacitación en los primeros 10 años de sus nuevas responsabilidades.Nuestro completo masterclass está diseñado para ayudar a los nuevos y emergentes líderes tecnológicos a comprender sus nuevos roles y adquirir las habilidades para convertirse en líderes seguros, felices y efectivos.
Aporta Calidad y Seguridad al pipeline de CI/CD
DevOps.js Conf 2022DevOps.js Conf 2022
76 min
Aporta Calidad y Seguridad al pipeline de CI/CD
WorkshopFree
Elena Vilchik
Elena Vilchik
En esta masterclass repasaremos todos los aspectos y etapas al integrar tu proyecto en el ecosistema de Calidad y Seguridad del Código. Tomaremos una aplicación web simple como punto de partida y crearemos un pipeline de CI que active el monitoreo de calidad del código. Realizaremos un ciclo completo de desarrollo, comenzando desde la codificación en el IDE y abriendo una Pull Request, y te mostraré cómo puedes controlar la calidad en esas etapas. Al final de la masterclass, estarás listo para habilitar esta integración en tus propios proyectos.
Managers Are From Mars, Devs Are From Venus
TechLead Conference 2024TechLead Conference 2024
111 min
Managers Are From Mars, Devs Are From Venus
Workshop
Mo Khazali
Mo Khazali
Una Guía para Desarrolladores sobre Cómo Comunicar, Convencer y Colaborar Efectivamente con los Stakeholders
Es una historia tan antigua como el tiempo: la colaboración entre desarrolladores y stakeholders de negocios ha sido durante mucho tiempo un desafío, con una falta de comunicación clara que a menudo deja a ambas partes frustradas. Los mejores desarrolladores pueden comprender profundamente las necesidades de sus contrapartes de negocios, comunicar efectivamente la estrategia técnica sin perder a la audiencia no técnica y convencer al negocio de tomar las decisiones correctas. Trabajando en una consultoría, he fallado y tenido éxito en arquitectar y “vender” visiones técnicas, aprendiendo muchas lecciones en el camino.Ya sea que trabajes en una empresa de productos, seas consultor/freelancer, o quieras aventurarte más allá de ser solo un desarrollador, la capacidad de convencer y comunicar claramente con los stakeholders puede diferenciarte en la industria tecnológica. Esto se vuelve aún más importante con el auge de GenAI y el mercado de desarrolladores cada vez más competitivo, ya que la resolución de problemas y la comunicación efectiva son clave para posicionarte.En esta masterclass, compartiré ejemplos del mundo real, tanto buenos como malos, y te guiaré a través de poner la teoría en práctica mediante dojos.
Fuera de la sartén, al fuego: Guía para gerentes sobre cómo ayudar a los nuevos desarrolladores a prosperar
TechLead Conference 2024TechLead Conference 2024
35 min
Fuera de la sartén, al fuego: Guía para gerentes sobre cómo ayudar a los nuevos desarrolladores a prosperar
Workshop
Andrew Coleburn
Andrew Coleburn
Integrarse a un nuevo proyecto puede ser difícil, sin importar tu experiencia y antecedentes. Pero puede ser especialmente desafiante para los nuevos desarrolladores recién salidos de la escuela o de un bootcamp de programación. Basándose en su experiencia personal como graduado de un bootcamp y consultor de JavaScript, esta charla discutirá consejos y estrategias para que los gerentes ayuden a los nuevos desarrolladores de sus equipos a familiarizarse con un código desconocido, para que puedan tener un impacto más rápido y efectivo.