
- Por Patricia Bourrillon
- ·
- Publicado 29 Sep 2023
Trunk Based Development: Empezando con éxito
El desarrollo de software es un campo en constante evolución, y las metodologías ágiles han demostrado ser cruciales para mantenerse competitivo en..
El primer paso para definir un objetivo se puede resumir en una pregunta tan básica, y a veces difícil de responder: ¿qué quieres conseguir? El objetivo se establece primero identificando qué se busca lograr y por qué. Esta pregunta a veces no tiene una respuesta sencilla, puede depender del tipo de proyecto que emprendamos o de los stakeholders, pero por muy complicado que sea definirlo, es vital para alcanzar una meta.
Con esta reflexión inició Fran Ávila, Regional Director en Codurance Spain, una charla que ofreció en nuestro meetup para hablar sobre cómo elegir las métricas adecuadas para evaluar el éxito de los objetivos que nos marcamos.
En primer lugar, debemos determinar cuál es el problema que tenemos. Si no somos capaces de plantear un problema no podremos decidir qué pasos tomar.
"Un problema bien planteado es un problema medio resuelto".
- Charles Kettering
Hay que intentar especificar nuestros objetivos de manera concreta. Los objetivos a veces se plantean de manera muy general como: "quiero conseguir una plataforma de buena calidad para los usuarios". Pero la 'buena calidad' puede tener un significado diferente para muchas personas, por lo que debemos ser capaces de definir o desglosar el objetivo en metas claras y alcanzables. Siguiendo con este ejemplo, se podría detallar:
Meta 1: fiabilidad - que el sistema no sufra interrupciones durante su uso.
Meta 2: flexibilidad - que el sistema se adapte a los picos de trabajo.
Meta 3: regulación - que la recolección de datos cumpla con la normativa.
Y así sucesivamente, hasta cumplir con ese gran objetivo que es ofrecer una plataforma de buena calidad para los clientes.
De esta manera, empezamos a concretar dónde está el problema y por qué es necesario resolverlo. Esto nos lleva a puntualizar tres aspectos clave:
"Una métrica es una reducción de la incertidumbre expresada cuantitativamente y basada en una o más observaciones".
- Douglas W. Hubbard
Las métricas deben reducir nuestra incertidumbre respecto a lo que medimos, es decir, deben proporcionar información valiosa que nos interese y nos permita tomar medidas accionables. Así lo afirma Fran: "Si no vas a tomar ninguna decisión con las métricas que tienes, entonces no midas". Primero debes saber hacia dónde se orientan las decisiones que quieres tomar y qué te interesa conocer, y luego medir para obtener los datos que te ayuden a elegir la mejor opción posible.
Una métrica no tiene que ser precisa, sino lo suficientemente indicativa como para permitirnos tomar una decisión. Por ejemplo, si voy a comprar un monitor y debe caber en una mesa, necesito saber que la mesa es más grande que el monitor, pero no necesito medir la mesa en milímetros, basta con saber que es más grande y que será útil para mi objetivo. El coste de la métrica nunca debe ser mayor que el coste de la decisión que vas a tomar.
Entonces: ¿cuál es el valor de una métrica? VI = VSai - VSdi. El valor de la información es igual al valor de la situación antes de tener esa información menos el valor de la situación después de tener esa información. Si no cambia, el valor de la información es cero. Y, en una situación perfecta, eliminaría el valor de la situación anterior. Esto significa que cualquier métrica que no contribuya a eliminar la incertidumbre que tenías antes, es inútil. "Y todo lo que no aporte, no lo hagas", explica Fran.
Fran presentó varias trampas en las que podemos caer al elegir qué datos buscar o medir para tomar decisiones:
Sesgo de confirmación - Buscar información que confirme la decisión que querías tomar o que ya has tomado. Tomar datos que confirmen lo que quieres escuchar. Para superarlo, intenta conseguir información que refute tu teoría y te dé otro punto de vista para tomar una decisión más completa.
Sesgo de procedimiento - Cuando el procedimiento condiciona el resultado de la información que vamos a obtener. Por ejemplo, en los formularios, según cómo se planteen las preguntas o qué personas los contesten, tendremos resultados diferentes. Para evitarlo, hay que permitir que intervengan personas de diferentes contextos y con diversas opiniones.
Falacia de McNamara - No poder medir ciertos datos puede hacernos caer en una simplificación máxima que genera conclusiones sesgadas y erróneas. Así, mi imagen de la realidad se centra sólo en lo que soy capaz de medir:
En resumen, Fran explicó que la forma de utilizar métricas que aporten valor a tus proyectos se puede resumir de la siguiente manera:
Agradecemos a Fran por esta entrega y a la colaboración de la comunidad de Murcia Software Crafters. Te dejamos un enlace para que puedas echar un vistazo a la presentación y el vídeo de la sesión completa por si quieres revisarla y dejarnos tu feedback:
Revisa también nuestro meetup sobre el pensamiento Lean y cómo eliminar desperdicios de manera sistemática en tus desarrollos:
El desarrollo de software es un campo en constante evolución, y las metodologías ágiles han demostrado ser cruciales para mantenerse competitivo en..
Conversamos con un invitado de lujo, Carlos Cabezas, Director de Sistemas de IT de Randstad, sobre cuál fue el proceso de la compañía para migrar al..
Kristian Muñoz, Adrián Muñoz, ambos senior craftsperson, y María Jesús Puertas, senior QA, exponen, en esta primera entrega, cuales son las ventajas..
Suscríbete a nuestra newsletter para que podamos hacerte llegar recomendaciones de expertos y casos prácticos inspiradores
Suscríbete a nuestra newsletter para que podamos hacerte llegar recomendaciones de expertos y casos prácticos inspiradores