Calcular velocidad media y de planificación ágil
Escriba los puntos de historia completados en los últimos sprints y obtenga la velocidad media del equipo y una cifra prudente para planificar: cinco sprints que suman 150 puntos dan una media de 30 y una sugerencia de 26,594123. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Sprints
- 32, 28, 35, 30, 25
- Cantidad de sprints
- 5
- Total de puntos de historia
- 150
- Velocidad media
- 30
- Desviación estándar
- 3,405877
Esta calculadora transforma los puntos de historia terminados en sprints recientes en una referencia transparente para planificar. Muestra la velocidad media del equipo, la desviación estándar poblacional de los sprints indicados y una propuesta prudente igual a la media menos una desviación estándar, nunca inferior a cero. Utilice sprints recientes y comparables para conversar sobre capacidad sin convertir una previsión en promesa ni dejar que una iteración excepcional determine el siguiente compromiso.
Elija datos de sprints representativos del equipo que va a planificar
Comience con los puntos de historia terminados en sprints recientes por un equipo prácticamente estable y con una definición de terminado coherente. Introduzca un total por sprint, preferiblemente en orden cronológico para facilitar la revisión, aunque el orden no cambia el cálculo. Incluya trabajo solo si el equipo lo consideró terminado al cerrar el sprint.
No sume historias parciales, puntos planificados ni trabajo transferido a otro equipo. Un historial amplio suaviza casos aislados, pero uno antiguo puede describir otro equipo, producto o proceso. Entre cinco y diez sprints comparables suele ser una ventana útil, aunque se admite uno solo; en tal caso, la desviación es cero.
Si cambiaron sustancialmente la plantilla, la duración del sprint, la escala de estimación o el flujo, seleccione únicamente observaciones comparables o calcule periodos separados. El dato será más útil si responde a una pregunta precisa: ¿cuántos puntos termina recientemente este equipo por sprint en sus condiciones actuales?
Interprete la media y la propuesta prudente
La velocidad media es la media aritmética: se suman todos los totales terminados y se divide por el número de sprints. Después se calcula la desviación estándar poblacional de esas observaciones. Una desviación pequeña indica resultados próximos a la media; una grande revela mayor variación.
La velocidad sugerida es la media menos una desviación poblacional, con un mínimo de cero. Es una referencia prudente, no una garantía probabilística, un compromiso de servicio ni un intervalo de confianza. Se usa la fórmula poblacional porque la ventana enviada se trata como todo el historial elegido para planificar, no como una muestra que requiera la corrección de Bessel.
Las salidas se redondean a seis decimales para automatizaciones estables, aunque internamente se conserva la precisión numérica. Recuerde la diferencia: la media centra los resultados pasados y la sugerencia incorpora un margen por la variabilidad observada. Si el equipo redondea hacia abajo a puntos enteros, conviene registrar esa decisión local por separado.
Use la velocidad como evidencia, no como objetivo de rendimiento
Lleve el resultado a la planificación junto con disponibilidad, festivos, soporte de producción, dependencias y composición del próximo backlog. Si la sugerencia es 27.4 puntos, puede orientar una conversación en torno a 27, pero no debe imponerse cuando el siguiente sprint sea atípico. Recalcule periódicamente con una ventana móvil coherente y conserve los totales para reproducir el dato.
Un cambio brusco en la desviación puede enseñar más que una variación pequeña de la media, pues invita a revisar interrupciones, historias demasiado grandes, cambios de estimación o alcance inestable. No compare velocidades entre equipos: los puntos son una escala relativa local y cifras iguales no implican la misma producción ni eficacia. Tampoco convierta la sugerencia en cuota individual ni presione para inflar estimaciones.
El objetivo es una previsión compartida, verificable y consciente de su incertidumbre.
Qué puede hacer con ella
Preparar la planificación del sprint
Convierta los totales recientes del equipo actual en una referencia prudente de capacidad antes de revisar el próximo backlog.
Revisar la regularidad de entrega
Compare media y desviación estándar para distinguir un patrón estable de resultados muy variables.
Automatizar una previsión móvil
Envíe los últimos totales desde un informe interno a un cálculo determinista, reproducible y auditable.
Preguntas frecuentes
¿Qué desviación estándar utiliza la calculadora?
Utiliza la desviación poblacional de la ventana exacta enviada y divide las desviaciones cuadráticas por el número de observaciones.
¿Por qué se resta una desviación estándar de la media?
Así se incorpora un margen prudente sencillo para la variación reciente. Es una heurística de planificación, no un mínimo garantizado ni un intervalo de confianza formal.
¿Puede ser negativa la velocidad sugerida?
No. El resultado de media menos desviación tiene un mínimo de cero, pues los puntos terminados negativos no representan capacidad útil.
¿Deben incluirse historias incompletas?
No. Indique únicamente puntos que el equipo consideró terminados al cierre de cada sprint según una definición coherente.
¿Cuántos sprints conviene introducir?
Entre cinco y diez sprints comparables del mismo equipo suele ser una ventana práctica. Se acepta un solo sprint si es todo lo que tiene, pero entonces su desviación estándar será cero.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/date/velocity-average-calculate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"sprints":[32,28,35,30,25]}'const res = await fetch("https://api.kit.forhosting.com/date/velocity-average-calculate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"sprints": [
32,
28,
35,
30,
25
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/velocity-average-calculate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"sprints": [
32,
28,
35,
30,
25
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/velocity-average-calculate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"sprints":[32,28,35,30,25]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"sprints":[32,28,35,30,25]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/velocity-average-calculate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"sprints": [
32,
28,
35,
30,
25
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.velocity_average_calculate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_sprints | 1000 |
max_story_points | 1000000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Use la velocidad como evidencia, no como objetivo de rendimiento
La automatización mediante API cuesta $0.002 por solicitud y el cálculo determinista permite repetirla sin fuentes ocultas.
Preguntas técnicas
¿Qué ocurre si no se aportan datos de sprints?
La solicitud devuelve un error invalid_input, porque no puede calcularse una media sin al menos un sprint terminado.
¿Cuánto cuesta un cálculo mediante API?
Cada solicitud API cuesta $0.002. El cálculo es determinista y no contacta servicios externos.