Ir al contenido

DORA + DX AI Metrics

Guia de Medicion de Experiencia de Desarrollo con AI (DX AI)

Sección titulada «Guia de Medicion de Experiencia de Desarrollo con AI (DX AI)»

Companion del AI-First Engineering Framework v7.4.0

1. Por Que Medir la Experiencia de Desarrollo con AI

Sección titulada «1. Por Que Medir la Experiencia de Desarrollo con AI»

La adopcion de AI en equipos de ingenieria genera una paradoja recurrente: los desarrolladores sienten que son mas productivos, pero las metricas organizacionales no siempre lo reflejan. El reporte DORA 2025 confirmo que equipos con alta adopcion AI completaron 21% mas tasks individuales, pero las metricas de delivery organizacional se mantuvieron planas.

Sin medicion explicita de la experiencia AI:

  • No sabes si la inversion en herramientas AI tiene ROI real.
  • No puedes diferenciar productividad percibida de productividad real.
  • No detectas cuando la AI introduce deuda tecnica silenciosa.
  • No puedes guiar la adopcion de niveles L1 (autocompletado) a L4 (autonomo).
  • No cumples con los requisitos de transparencia del EU AI Act Art. 50/73.

Principio: Medir DX AI no reemplaza DORA ni SPACE — lo complementa. DORA mide delivery, SPACE mide satisfaccion, DX AI mide el impacto especifico de las herramientas AI en el flujo de trabajo.


┌─────────────────────────────────────────────────────────────┐
│ DX AI METRICS MODEL │
├──────────────────┬──────────────────────────────────────────┤
│ ADOPCION │ ai_adoption_rate │
│ │ % commits con asistencia AI │
├──────────────────┼──────────────────────────────────────────┤
│ COSTO │ ai_cost_per_feature │
│ │ USD promedio por feature completado │
├──────────────────┼──────────────────────────────────────────┤
│ CALIDAD │ ai_quality_impact │
│ │ Ratio rework AI vs humano │
├──────────────────┼──────────────────────────────────────────┤
│ VELOCIDAD │ ai_time_savings │
│ │ Lead time AI vs no-AI │
├──────────────────┼──────────────────────────────────────────┤
│ MADUREZ │ ai_autonomy_trend │
│ │ Progresion L1 → L4 en el tiempo │
└──────────────────┴──────────────────────────────────────────┘

Definicion: Porcentaje de commits que fueron creados con asistencia AI.

Formula:

ai_adoption_rate = commits_con_marcador_ai / total_commits

Marcadores detectados en git history:

  • Co-Authored-By: con mencion de AI (Claude, Copilot, GPT, etc.)
  • Generated by en el mensaje de commit
  • AI-assisted como tag o prefijo
  • checkpoint:, fab:, auto-generated para commits autonomos

Interpretacion:

NivelRangoSignificado
Elite>= 70%AI integrada en flujo diario, FABs activos
High50-69%Adopcion consistente, pair programming con AI
Medium30-49%Uso esporadico, solo autocompletado
Low< 30%Adopcion minima o resistencia activa

Definicion: Costo promedio en USD de tokens/API calls por feature o intent completado.

Formula:

ai_cost_per_feature = total_ai_spend_usd / features_completed

Fuentes de datos:

  • Logs de LLMOps (Langfuse, LangSmith, Helicone)
  • fab-cost-guard.py circuit breaker logs
  • Facturas de API providers (OpenAI, Anthropic, etc.)
  • Intent completion records en progress-tracker.md

Interpretacion:

NivelUSD/FeatureSignificado
Elite<= $5Prompts optimizados, caching efectivo
High$5-$15Buen balance costo/valor
Medium$15-$50Oportunidad de optimizacion
Low> $50Ineficiencia critica, revisar prompts y modelos

Definicion: Ratio de rework en commits generados por AI versus commits puramente humanos.

Formula:

ai_quality_impact = rework_rate_ai_commits / rework_rate_human_commits

Un valor < 1.0 indica que los commits AI requieren menos rework que los humanos. Un valor > 1.0 indica que la AI introduce mas defectos.

Como medir rework: Un commit es “rework” si modifica lineas que fueron cambiadas en los ultimos 14 dias (mismo archivo, mismas funciones).

Interpretacion:

NivelRatioSignificado
Elite<= 0.5AI produce codigo mas estable que humanos
High0.5-0.8AI produce calidad comparable, con ventaja
Medium0.8-1.0Calidad neutra, AI no empeora
Low> 1.0AI introduce defectos — revisar prompts y reviews

Definicion: Reduccion porcentual en lead time para features completados con AI versus sin AI.

Formula:

ai_time_savings = 1 - (lead_time_ai / lead_time_no_ai)

Lead time: Desde la creacion del intent/issue hasta el merge del PR.

Interpretacion:

NivelAhorroSignificado
Elite>= 60%Features AI se entregan 2.5x mas rapido
High40-59%Aceleracion significativa
Medium20-39%Mejora moderada
Low< 20%Beneficio marginal

Definicion: Progresion del equipo en los niveles de autonomia AI a lo largo del tiempo.

Niveles:

NivelDescripcionIndicadores
L1 - AutocompletadoTab-complete, snippetsSolo Co-Authored-By en commits puntuales
L2 - Pair ProgrammingChat con AI, iteracion guiadaSesiones largas, commits con contexto AI
L3 - DelegacionTareas completas delegadas a AIIntents completados end-to-end, PRs generados
L4 - AutonomoFABs ejecutando sin intervencionCommits fab:, checkpoints automaticos

Medicion: Distribucion porcentual de commits por nivel en ventanas de 30 dias.

Mes 1: L1=80% L2=15% L3=5% L4=0%
Mes 3: L1=40% L2=35% L3=20% L4=5%
Mes 6: L1=15% L2=25% L3=40% L4=20%

FuenteMetricasMetodo
Git historyadoption_rate, quality_impactAnalisis de commits (marcadores, rework)
Intent completioncost_per_feature, time_savingsprogress-tracker.md + logs de intents
LLMOps platformcost_per_featureAPI de Langfuse/LangSmith/Helicone
FAB telemetriaautonomy_trend, costfab-feedback-loop.py output
CI/CD pipelinetime_savings, qualityPR timestamps, test results
Ventana de terminal
# Contar commits AI-assisted en los ultimos 30 dias
git log --since="30 days ago" --all --format="%H %s" | \
grep -iE "(Co-Authored-By:.*(claude|copilot|gpt|ai)|Generated by|AI-assisted|checkpoint:|fab:|auto-generated)" | \
wc -l
# Total de commits en el mismo periodo
git log --since="30 days ago" --all --oneline | wc -l

El archivo progress-tracker.md registra:

  • Fecha de inicio y fin de cada intent
  • Costo acumulado (si esta disponible via FAB)
  • Nivel de autonomia utilizado

El script dora-metrics.py incluye atribucion AI automatica:

Ventana de terminal
python3 baseline/scripts/dora-metrics.py \
--project-dir . \
--period 30

Este script:

  1. Analiza git history para detectar commits AI
  2. Calcula DORA metrics estandar (DF, MLT, CFR, MTTR)
  3. Agrega metricas AI DX (adoption_rate, quality_impact)
  4. Genera reporte JSON compatible con dashboards

MetricaEliteHighMediumLowTarget Sugerido
ai_adoption_rate>= 0.700.50-0.690.30-0.49< 0.300.50
ai_cost_per_feature (USD)<= 55-1515-50> 5020
ai_quality_impact (ratio)<= 0.50.5-0.80.8-1.0> 1.00.8
ai_time_savings (%)>= 60%40-59%20-39%< 20%40%
ai_autonomy_levelL4L3L2L1L3

Los thresholds se configuran en project/F09_operations/dx_ai_metrics.yaml:

thresholds:
ai_adoption_rate:
elite: 0.70
high: 0.50
medium: 0.30
low: 0.10
  1. Semana 1-2: Recolectar datos sin targets (baseline)
  2. Semana 3: Establecer targets iniciales basados en la tabla de referencia
  3. Mes 2: Ajustar targets segun contexto del equipo
  4. Trimestre 2: Re-calibrar con datos reales acumulados

Regla de oro: No establecer targets elite desde el inicio. Apuntar a “medium” en el primer trimestre y subir gradualmente.


┌─────────────────────────────────────────────────────────────┐
│ DX AI DASHBOARD │
├─────────────────────────────────┬───────────────────────────┤
│ Adoption Rate (gauge) │ Cost/Feature (trend) │
│ ████████░░ 65% │ $12 ↓ (vs $18 prev) │
├─────────────────────────────────┼───────────────────────────┤
│ Quality Impact (ratio bar) │ Time Savings (bar chart) │
│ AI: 0.6x rework vs human │ AI: 45% faster │
├─────────────────────────────────┴───────────────────────────┤
│ Autonomy Trend (stacked area over time) │
│ L4 ▓▓░░░ L3 ▓▓▓▓░ L2 ▓▓▓░░ L1 ▓░░░░ │
└─────────────────────────────────────────────────────────────┘
HerramientaTipoMejor Para
GrafanaOSSDashboards custom, integracion Prometheus
DatadogSaaSCorrelacion con APM, alertas
MetabaseOSSSQL sobre datos exportados, self-hosted
Google SheetsSaaSEquipos pequenos, prototipado rapido
Factory DashboardFrameworkVista integrada FAB + DORA + DX AI
AlertaCondicionAccion
Adoption dropai_adoption_rate < target por 7 diasInvestigar barreras, revisar tooling
Cost spikeai_cost_per_feature > 2x targetActivar cost guard, revisar prompts
Quality regressionai_quality_impact > 1.2Pausar delegacion, reforzar reviews
Savings plateauai_time_savings sin mejora en 30 diasEvaluar nivel de autonomia, capacitar

El framework incluye un dashboard JSON listo para importar en Grafana 10+.

Archivo: project/F09_operations/grafana_dora_dashboard.json

Pasos para importar:

Ventana de terminal
# 1. Generar metricas en formato JSON
python3 baseline/scripts/dora-metrics.py \
--project-dir . \
--period 30 \
--output json > /tmp/dora-metrics.json
# 2. Importar dashboard en Grafana
# Dashboards > New > Import > Upload JSON file
# Seleccionar: project/F09_operations/grafana_dora_dashboard.json
# Asignar datasource Prometheus o JSON

8 paneles incluidos:

┌──────────────────────┬──────────────────────┬──────────────────────┬──────────────────────┐
│ Deployment Freq. │ Lead Time (series) │ Change Failure Rate │ Rework Rate │
│ [stat] 4.2/sem │ [timeseries] 48h │ [gauge] 8% │ [gauge] 12% │
│ ████████░░ Elite │ ───╲────── │ ▓▓░░░░░░ Elite │ ▓▓▓░░░░░ High │
├──────────────────────┼──────────────────────┼──────────────────────┼──────────────────────┤
│ AI Attribution % │ Autonomous % │ Cost/Session (USD) │ DX Core 4 Score │
│ [stat] 65% │ [stat] 12% │ [bar] $12.40 │ [barchart] │
│ ████████░░ High │ ▓▓░░░░░░ L3 │ █ █ █▄█ █ │ Review ▓▓▓▓░ 80% │
│ │ │ │ Satisf ▓▓▓░░ 72% │
└──────────────────────┴──────────────────────┴──────────────────────┴──────────────────────┘

Variables configurables:

  • $project — Filtrar por proyecto (codename)
  • $period — Ventana de tiempo (7, 14, 30, 90 dias)

Datasource: El template usa ${DS_PROMETHEUS} como placeholder. Compatible con:

  • Prometheus (metricas push via pushgateway o exporter custom)
  • JSON API datasource (lectura directa del output de dora-metrics.py)

El framework incluye definiciones de monitores para alertas automaticas.

Archivo: project/F09_operations/datadog_dora_monitors.yaml

Pasos para aplicar:

Ventana de terminal
# 1. Publicar metricas a Datadog
python3 baseline/scripts/dora-metrics.py \
--project-dir . \
--period 30 \
--output json | \
curl -X POST "https://api.datadoghq.com/api/v1/series" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-d @-
# 2. Sincronizar monitores
pip install datadog-ci
datadog-ci monitors sync \
--config project/F09_operations/datadog_dora_monitors.yaml

5 monitores incluidos:

MonitorTipoUmbral WarningUmbral Critical
Deployment Frequency Lowwarning< 2/sem< 1/sem
Change Failure Rate Highcritical> 10%> 15%
Rework Rate Highcritical> 15%> 20%
Cost per Session Highcritical> $30> $50
AI Attribution Lowwarning< 50%< 30%

Cada monitor envia notificacion al canal Slack configurado ({{ALERT_CHANNEL}}).

5.6 Pipeline: dora-metrics.py → Dashboards

Sección titulada «5.6 Pipeline: dora-metrics.py → Dashboards»

El script dora-metrics.py es la fuente de datos para ambas plataformas. El flujo completo:

┌─────────────────┐ ┌──────────────────┐ ┌─────────────────────┐
│ Git History │────►│ dora-metrics.py │────►│ JSON Output │
│ + FAB Logs │ │ --output json │ │ (metricas DORA + │
│ + Intent Logs │ │ --period 30 │ │ AI attribution) │
└─────────────────┘ └──────────────────┘ └────────┬────────────┘
┌───────────────┼───────────────┐
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌────────────┐
│ Prometheus │ │ Datadog │ │ JSON File │
│ pushgateway │ │ API │ │ (backup) │
└──────┬─────┘ └──────┬─────┘ └────────────┘
▼ ▼
┌────────────┐ ┌────────────┐
│ Grafana │ │ Datadog │
│ Dashboard │ │ Monitors │
└────────────┘ └────────────┘

Metricas exportadas por dora-metrics.py (—output json):

Metrica JSONPanel GrafanaMonitor Datadog
deployment_frequencyDeployment Frequency (stat)deployment_frequency_low
lead_time_hoursLead Time (timeseries)
change_failure_rateChange Failure Rate (gauge)change_failure_rate_high
rework_rateRework Rate (gauge)rework_rate_high
ai_attribution_rateAI Attribution % (stat)ai_attribution_low
autonomous_rateAutonomous % (stat)
cost_per_session_usdCost per Session (bar)cost_per_session_high
dx_core4_*DX Core 4 Score (barchart)

Automatizacion recomendada: Usar el workflow CI/CD de la seccion 8.3 para generar el JSON semanalmente y publicar a la plataforma elegida.


┌──────────┐ ┌──────────┐ ┌──────────┐
│ DORA │ │ SPACE │ │ DX AI │
│ │ │ │ │ │
│ DF, MLT │◄──►│ Satisf. │◄──►│ Adoption │
│ CFR, MTTR│ │ Activity │ │ Cost │
│ │ │ Communic.│ │ Quality │
│ Delivery │ │ Efficien.│ │ Speed │
│ metrics │ │ Perceptn.│ │ Autonomy │
└──────────┘ └──────────┘ └──────────┘
│ │ │
└───────────────┴───────────────┘
Vista Integrada
PreguntaDORASPACEDX AI
Entregamos rapido?MLT, DFActivityai_time_savings
Con calidad?CFRSatisfactionai_quality_impact
A buen costo?-Efficiencyai_cost_per_feature
El equipo adopta AI?--ai_adoption_rate
Hacia donde vamos?--ai_autonomy_trend

DX AI no reemplaza DORA. Un equipo puede tener:

  • Alto ai_adoption_rate + bajo DORA DF: Usan AI pero no entregan frecuentemente (proceso bloqueado fuera del codigo).
  • Alto ai_time_savings + alto CFR: Entregan rapido pero con defectos (falta de review en outputs AI).
  • Alto autonomy_trend + bajo SPACE Satisfaction: FABs activos pero el equipo se siente desplazado.

Las tres vistas juntas dan la imagen completa.


El reporte DORA 2025 documento una paradoja critica:

  • Desarrolladores individuales con herramientas AI completaron 21% mas tasks.
  • Sin embargo, las metricas de delivery organizacional (DF, MLT, CFR) se mantuvieron planas.
  • La satisfaccion del desarrollador con AI era alta, pero el throughput del equipo no mejoro proporcionalmente.
CausaDescripcionMetrica DX AI que detecta
Complejidad absorbidaAI permite abordar tareas mas complejas, el ahorro se “reinvierte”ai_time_savings estancado pese a alto adoption
Review bottleneckMas codigo generado = mas codigo que revisarai_quality_impact subiendo
Context switchingHerramientas AI fragmentan el flujoai_adoption_rate alto pero inconsistente
Rework ocultoCodigo AI requiere ajustes no trackeadosai_quality_impact > 1.0
Overhead de coordinacionMas output individual no se traduce en deliveryDORA DF plano vs ai_time_savings alto
  1. No asumir que mas AI = mas delivery. Usar las 5 metricas para validar.
  2. Medir rework explicitamente. Si ai_quality_impact > 1.0, la AI esta creando mas trabajo del que ahorra.
  3. Balancear adopcion con proceso. Subir de L2 a L3 requiere ajustar code review, testing, y CI/CD.
  4. Trackear autonomy_trend, no solo adoption_rate. Adopcion sin progresion de autonomia indica estancamiento.
  5. Correlacionar DX AI con DORA trimestralmente. Buscar divergencias entre productividad individual y organizacional.

Ventana de terminal
# Metricas de los ultimos 30 dias
python3 baseline/scripts/dora-metrics.py \
--project-dir . \
--period 30
# Metricas de los ultimos 90 dias con output JSON
python3 baseline/scripts/dora-metrics.py \
--project-dir . \
--period 90 \
--output json

El script genera un reporte que incluye:

=== DORA Metrics (Last 30 days) ===
Deployment Frequency: 4.2/week (Elite)
Mean Lead Time: 2.1 days (High)
Change Failure Rate: 8% (Elite)
MTTR: 1.5 hours (Elite)
=== AI Attribution ===
AI-Assisted Commits: 127/195 (65%)
Autonomous Commits: 23/195 (12%)
AI Adoption Rate: 0.65 (High)
=== AI Quality Impact ===
Rework Rate (AI): 4.2%
Rework Rate (Human): 6.8%
Quality Impact Ratio: 0.62 (Elite)

Agregar al pipeline para tracking continuo:

.github/workflows/dx-metrics.yml
name: DX AI Metrics
on:
schedule:
- cron: '0 6 * * 1' # Lunes 6am
jobs:
metrics:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Necesario para git history completo
- run: |
python3 baseline/scripts/dora-metrics.py \
--project-dir . \
--period 7 \
--output json > metrics-report.json
- uses: actions/upload-artifact@v4
with:
name: dx-ai-metrics
path: metrics-report.json

RecursoURL / Ubicacion
DORA 2025 Reportdora.dev/research
SPACE FrameworkMicrosoft Research (2021)
EU AI Act Art. 50/73Transparencia y registro de sistemas AI
Framework Observability Guideframework/guides/Observability_FinOps_Implementation_Guide.md
DORA Metrics Scriptscripts/dora-metrics.py
DX AI Metrics Configproject-template/project/F09_operations/dx_ai_metrics.yaml
Grafana Dashboard Templateproject-template/project/F09_operations/grafana_dora_dashboard.json
Datadog Monitors Templateproject-template/project/F09_operations/datadog_dora_monitors.yaml
FAB Feedback Loopscripts/fab-feedback-loop.py
FAB Cost Guardscripts/fab-cost-guard.py
Context Engineering Guideframework/guides/Context_Engineering_Guide.md
Evals Framework Guideframework/guides/Evals_Framework_Guide.md