KPI en Agile Testing

  • Autor de la entrada:
  • Categoría de la entrada:Agile

1. ¿Qué es un KPI?

Definición: Un Key Performance Indicator (KPI) es un indicador clave de gestión, utilizado para medir y evaluar el rendimiento de un proceso o actividad específica. En el contexto del testing ágil, los KPI ayudan a controlar, evaluar, informar y tomar decisiones informadas sobre el proceso de pruebas.

Objetivo:

  • Controlar: Monitorear el progreso de las actividades de testing.
  • Evaluar: Analizar la efectividad y eficiencia del proceso de pruebas.
  • Informar: Proporcionar información clara y precisa a los stakeholders.
  • Ayudar a la toma de decisiones: Basar las decisiones en datos concretos y objetivos.

2. Características de un KPI

Medible: Debe ser cuantificable para poder ser evaluado objetivamente. Cuantificable: Los resultados deben ser numéricos o fácilmente convertibles a números. Específico: Debe enfocarse en un aspecto particular del proceso. Temporal: Debe estar vinculado a un período específico para hacer comparaciones temporales. Relevante: Debe ser importante para los objetivos del proyecto y la organización.

Ejemplo en Testing:

  • Medible: Número de casos de prueba ejecutados.
  • Cuantificable: Porcentaje de cobertura de pruebas.
  • Específico: Tasa de defectos críticos encontrados en pruebas de regresión.
  • Temporal: Velocidad de cierre de bugs semanal.
  • Relevante: Impacto de los bugs críticos en la entrega del sprint.

3. ¿Cómo establecer un KPI?

Pasos para Establecer un KPI:

  1. ¿Qué queremos medir?

    • Identificar el aspecto específico del proceso de testing que se desea evaluar.
    • Ejemplo: Queremos medir la eficacia de las pruebas de regresión.
  2. ¿Cuáles son las cotas de las mediciones?

    • Definir los umbrales o valores objetivos para las mediciones.
    • Ejemplo: Queremos que al menos el 95% de las pruebas de regresión pasen sin defectos.
  3. ¿Por qué aplicamos esta medición?

    • Justificar la relevancia y el propósito de la medición.
    • Ejemplo: Asegurar que los cambios en el código no introduzcan errores.
  4. ¿Cómo realizar el seguimiento de los resultados?

    • Establecer un sistema o herramienta para recolectar y analizar los datos.
    • Ejemplo: Usar una herramienta de gestión de pruebas como JIRA o TestRail.
  5. ¿Quién es el responsable de supervisarlo?

    • Asignar responsabilidad a una persona o equipo específico.
    • Ejemplo: El líder del equipo de testing es responsable de supervisar este KPI.
  6. ¿Con qué periodicidad controlamos e informamos?

    • Definir la frecuencia de seguimiento e informes.
    • Ejemplo: Reportes semanales y revisiones mensuales.
  7. ¿Qué acción de mejora podemos sugerir?

    • Identificar acciones correctivas o de mejora basadas en los resultados.
    • Ejemplo: Si la tasa de éxito cae por debajo del 95%, realizar análisis de causa raíz y ajustar los scripts de prueba.

4. Ejemplos de KPI en Testing

1. Backlog de Requerimientos:

  • Definición: Número de requisitos pendientes de ser analizados y convertidos en casos de prueba.
  • Ejemplo: Medir cuántos requisitos nuevos se añaden y cuántos se completan cada sprint.

2. Backlog de Planificación:

  • Definición: Número de casos de prueba planificados pendientes de ejecución.
  • Ejemplo: Medir la cantidad de pruebas planificadas versus las ejecutadas en un sprint.

3. Backlog de Diseño de Casos de Prueba (CPs):

  • Definición: Número de casos de prueba pendientes de ser diseñados.
  • Ejemplo: Evaluar el progreso del diseño de casos de prueba para nuevas funcionalidades.

4. Backlog de Versionados de Software:

  • Definición: Número de versiones de software pendientes de ser probadas.
  • Ejemplo: Monitorear cuántas versiones del software están listas para pruebas de regresión.

5. Backlog de Ejecución de Casos de Prueba:

  • Definición: Número de casos de prueba pendientes de ejecución.
  • Ejemplo: Medir la cantidad de pruebas ejecutadas y las pendientes en cada ciclo de pruebas.

6. Backlog de Bugs:

  • Definición: Número de bugs pendientes de resolución.
  • Ejemplo: Evaluar la cantidad de bugs abiertos, cerrados y la tasa de resolución por sprint.

7. Calidad de Casos de Prueba (CPs):

  • Definición: Medir la efectividad y cobertura de los casos de prueba.
  • Ejemplo: Evaluar la tasa de fallos detectados por los casos de prueba versus los fallos encontrados en producción.

5. ¿Cómo Formular un KPI?

Formato de KPI:

  1. Nombre del KPI: Debe ser claro y descriptivo.
  2. Descripción: Explicar qué mide y por qué es importante.
  3. Objetivo: El valor que se desea alcanzar.
  4. Método de Medición: Cómo se recolectarán y analizarán los datos.
  5. Frecuencia de Medición: Cuán a menudo se evaluará el KPI.
  6. Responsable: Quién será responsable del seguimiento y reporte.
  7. Acciones Correctivas: Qué se hará si no se alcanza el objetivo.

Ejemplo:

  • Nombre del KPI: Tasa de Resolución de Bugs
  • Descripción: Mide la cantidad de bugs resueltos en comparación con los bugs abiertos durante un sprint.
  • Objetivo: Resolver al menos el 80% de los bugs abiertos en cada sprint.
  • Método de Medición: Usar el sistema de seguimiento de bugs para contar los bugs abiertos y resueltos.
  • Frecuencia de Medición: Semanalmente y al final de cada sprint.
  • Responsable: Líder del equipo de desarrollo.
  • Acciones Correctivas: Si la tasa de resolución cae por debajo del 80%, realizar una revisión del proceso de resolución de bugs y ajustar recursos si es necesario.

6. Resumen Mensual y Anual

Resumen Mensual:

  • Objetivo: Revisar el rendimiento del equipo de testing cada mes.
  • Contenido: KPI alcanzados, desviaciones, acciones correctivas implementadas y resultados preliminares.
  • Ejemplo: «Este mes, el equipo resolvió el 85% de los bugs abiertos, superando el objetivo del 80%. Sin embargo, la tasa de cobertura de pruebas cayó al 70%, por lo que se incrementaron los recursos para el diseño de pruebas.»

Resumen Anual:

  • Objetivo: Evaluar el rendimiento del equipo de testing a lo largo del año.
  • Contenido: Resumen de los KPI mensuales, tendencias observadas, mejoras implementadas, y planes futuros.
  • Ejemplo: «En el año, el equipo mantuvo una tasa de resolución de bugs del 82% en promedio. Se observó una mejora continua en la cobertura de pruebas, alcanzando un 85% en el último trimestre. Se planifican entrenamientos adicionales en automatización de pruebas para el próximo año.»

Conclusión

Los KPI son herramientas esenciales en el testing ágil para monitorear y mejorar el rendimiento del equipo. Al establecer KPI claros, medibles y relevantes, los testers pueden asegurarse de que el proceso de pruebas sea eficiente y efectivo, proporcionando datos valiosos para la toma de decisiones y la mejora continua del proyecto.

Referencia en el Syllabus del ISTQB CTFL v4.0

1.4.4. Trazabilidad entre la Base de Prueba y el Testware

Para implementar un monitoreo y control de prueba efectivos, es importante establecer y mantener la
trazabilidad durante todo el proceso de prueba entre los elementos de base de la prueba, el testware
asociado con estos elementos (por ejemplo, condiciones de prueba, riesgos, casos de prueba),
resultados de la prueba y defectos detectados.

La trazabilidad precisa respalda la evaluación de la cobertura, por lo que es muy útil si se definen
criterios de cobertura medibles en la base de la prueba. Los criterios de cobertura pueden funcionar
como indicadores clave de rendimiento para impulsar las actividades que muestran en qué medida se
han alcanzado los objetivos de la prueba (véase la sección 1.1.1).

 

Gus Terrera

Apasionado por el agile testing y la ia.