Nota de honestidad intelectual. Este artículo distingue de forma explícita entre hecho citado (con fuente primaria), inferencia, decisión de diseño y opinión. Los números de Nexo Finanzas son datos ilustrativos ficticios, no mediciones reales. Nada de lo que sigue es asesoramiento legal, regulatorio ni de cumplimiento.
1. Escena inicial: la release que nadie puede aprobar
Viernes, 16:40. La rama release/2.14 está lista para producción en Nexo Finanzas. El feature es una nueva pantalla de transferencias entre cuentas propias. El tablero está en verde, el pipeline pasó, y sin embargo nadie hace merge.
La razón es incómoda de decir en voz alta: “esperemos a que vuelva Mariana, ella es la única que sabe si esto está realmente listo”. Mariana es la QA Senior del equipo. Está de licencia. La release se congela tres días.
Esto no es un problema de Mariana. Es un problema de operating model. Cuando el conocimiento de “listo o no listo” vive en una persona en lugar de vivir en un sistema de acuerdos, evidencia y feedback, el liderazgo de calidad se transforma en su opuesto: un cuello de botella. La persona más capaz del equipo se vuelve el punto único de fallo.
La tesis de este artículo es directa:
Un líder de calidad aumenta la autonomía y la capacidad de decisión del equipo mediante contexto compartido, feedback rápido, límites explícitos y evidencia reproducible —no revisando cada caso de prueba personalmente.
Liderazgo aquí no significa autoridad jerárquica ni “aprobar” cada cosa. Significa diseñar el sistema para que Desarrollo, QA Manual, Producto y DevOps puedan decidir bien sin depender de una sola cabeza.
Prerrequisitos y glosario mínimo
Para seguir este artículo conviene tener frescos:
- Historias de usuario, criterios de aceptación y refinamiento (backlog refinement).
- Git, pull requests, revisión de código y CI/CD básico.
- Tipos de prueba, análisis de riesgo y gestión de defectos.
- Comunicación escrita y facilitación de reuniones cortas.
Glosario que usaremos:
| Término | Definición operativa que usamos aquí |
|---|---|
| Operating model de calidad | El conjunto de acuerdos, artefactos, ciclos y métricas que definen cómo un equipo produce y verifica calidad, y quién decide qué. |
| Ownership (propiedad) | Quién se hace cargo de que algo suceda y se mantenga. Es distribuible. |
| Accountability | Ante quién se rinde cuentas del resultado. No se diluye: siempre hay alguien responsable de que exista una decisión, aunque muchos participen. |
| Quality gate | Un punto de control con criterios explícitos que autoriza o bloquea un avance. Debe ser proporcional al riesgo, no un ritual. |
| Definition of Ready / Done (DoR/DoD) | Acuerdos revisables sobre cuándo algo está listo para empezar y listo para considerarse terminado. |
2. Qué es —y qué no es— un operating model de calidad
Un operating model de calidad es la respuesta explícita y escrita a cinco preguntas:
- ¿Qué riesgos del producto justifican cuánto esfuerzo de verificación? (proporcionalidad)
- ¿Qué significa “listo” en cada frontera del flujo? (acuerdos)
- ¿Quién decide, con qué evidencia, y quién queda enterado? (decisiones visibles)
- ¿Cómo aprendemos de los fallos sin buscar culpables? (aprendizaje seguro)
- ¿Cómo sabemos si el sistema está mejorando? (métricas honestas)
Lo que NO es (y conviene decirlo para desarmar expectativas):
- No es una metodología ágil presentada como única solución. Scrum, Kanban o un híbrido son contenedores; el operating model vive dentro de cualquiera de ellos.
- No es una promesa de “cero bugs” ni de “100% de cobertura”. Ambas son metas absolutas que degradan la conversación de riesgo. (Opinión fundamentada, ver §8 y el artículo satélite de métricas.)
- No es un puesto de control donde QA firma al final. Ese modelo es exactamente el cuello de botella que queremos evitar.
Decisión de diseño. Tratamos todo artefacto (charter, DoR, DoD, política de defectos) como acuerdo revisable con dueño y fecha de revisión, no como norma perpetua. Un acuerdo que no se puede discutir se vuelve burocracia; uno que nadie mantiene se vuelve folclore.
3. Cinco principios que sostienen el modelo
3.1 Propiedad compartida, accountability clara
La calidad es responsabilidad de todo el equipo, pero “responsabilidad de todos” sin dueño explícito termina siendo responsabilidad de nadie. La salida no es centralizar: es nombrar dueño por tipo de riesgo (ver §6) y mantener accountability trazable.
3.2 Decisiones visibles
Toda decisión relevante de calidad se escribe donde el equipo la pueda encontrar: un ADR (Architecture Decision Record), una sección en el PR, una nota en el runbook. Una decisión que solo existe en la cabeza de alguien no es un acuerdo; es un rumor.
3.3 Automatización con propósito
Automatizamos para acortar el feedback sobre riesgos que importan, no para inflar la cantidad de casos. El enfoque BDD de Cucumber es útil aquí porque parte de ejemplos de comportamiento acordados con negocio, no de scripts sueltos. La automatización sin conversación previa reproduce malentendidos más rápido.
3.4 Aprendizaje seguro (blameless)
Los fallos se analizan sin buscar culpables. Esto no es blandura: es una condición técnica para obtener información honesta. La cultura de postmortem sin culpa de Google SRE parte de una premisa verificable: un postmortem escrito sin culpa asume que todos actuaron con la mejor información disponible en ese momento. Si el sistema castiga al que reporta, deja de reportar.
3.5 Evidencia reproducible
Una afirmación de calidad vale lo que vale su evidencia. Un badge verde no prueba cobertura, una captura no prueba reproducibilidad y una métrica sin definición no informa nada. Preferimos artefactos que el pipeline publica de forma automática, como los reportes de artefactos de CI/CD de GitLab, que se suben independientemente de si el job pasó o falló.
4. Artefactos mínimos: el mapa que hace visible el método
Estos son los artefactos que convierten “lo que Mariana sabe” en “lo que el equipo puede usar, discutir y mejorar”. El diagrama muestra cómo se relacionan; ninguno existe por decoración.
| Artefacto | Qué decide | Dueño colaborativo | Archivo sugerido |
|---|---|---|---|
| Quality charter | Propósito, alcance y principios de calidad del producto | Líder de calidad + Producto | docs/quality/quality-charter.md |
| Mapa de riesgos | Qué puede salir mal y cuánto duele | Equipo completo | docs/quality/risk-matrix.md |
| Definition of Ready | Cuándo una historia está lista para empezar | Producto + Dev + QA | docs/quality/definition-of-ready.md |
| Definition of Done | Cuándo un cambio se considera terminado | Dev + QA + DevOps | docs/quality/definition-of-done.md |
| Estrategia de pruebas | Qué se verifica, en qué capa y por qué | Líder de calidad | docs/quality/test-strategy.md |
| Política de defectos | Cómo se clasifican y triagean los fallos | Equipo completo | docs/runbooks/incident-triage.md |
| ADRs | Decisiones técnicas con contexto y consecuencias | Quien propone | docs/adr/NNNN-*.md |
| Runbooks | Cómo operar y recuperar ante incidentes | DevOps + QA | docs/runbooks/*.md |
Por qué esto es liderazgo y no simple documentación. Estos archivos hacen visible un método que otros pueden usar, cuestionar y mejorar. No falsifican experiencia de gestión ni inventan resultados: exponen decisiones. La diferencia entre documentación que narra pasos y documentación que enseña decisiones es la diferencia entre un manual y un mapa. (Opinión fundamentada.)
El detalle de DoR/DoD y quality gates proporcionales al riesgo se desarrolla en el artículo satélite “DoR y DoD como acuerdos vivos”; la política de triage, en “Triage de defectos sin culpables”.
5. El ciclo de trabajo: de discovery a post-release
El operating model se ejecuta en un ciclo. Cada etapa tiene un feedback más corto que la anterior en la etapa equivocada: es más barato descubrir un malentendido en refinamiento que en producción.
Advertencia sobre el diagrama (importante): este flujo no implica que QA sea un gatekeeper al final. La flecha L[Release con evidencia] no es “QA firma”; es “existe evidencia suficiente y el dueño del riesgo decide”. La responsabilidad cambia según el tipo de riesgo (una regla de negocio la valida quien la escribió con negocio; una regresión visual la valida quien tocó la UI), pero la propiedad se comparte y la accountability queda registrada. El bucle O → D es el punto: la observabilidad de producción alimenta el próximo discovery.
| Etapa | Feedback que produce | Quién lidera la conversación |
|---|---|---|
| Discovery y riesgos | Qué puede salir mal antes de escribir código | Producto + calidad |
| Refinamiento | Criterios de aceptación y ejemplos (DoR) | Equipo |
| Implementación | Tests unitarios/componentes cerca del cambio | Dev |
| Pull request | Revisión + evidencia + riesgos declarados | Dev que abre el PR |
| Entorno de integración | Contratos, E2E acotados, seguridad de autorización | Quien tocó la frontera |
| Release con evidencia | DoD cumplida, rollback probado | Dueño del cambio |
| Observabilidad | Señales reales de uso y error | DevOps + calidad |
6. Distribuir responsabilidad sin diluir accountability
Este es el corazón del modelo y el punto donde más equipos se equivocan. Distribuir mal produce dos patologías simétricas: el cuello de botella (todo pasa por una persona) y la difusión (“era responsabilidad de todos” = de nadie).
La salida es asignar dueño inicial por tipo de riesgo, con accountability explícita:
| Tipo de riesgo | Dueño inicial de la verificación | Accountability final | Nota |
|---|---|---|---|
| Regla de negocio (p. ej. límite de transferencia) | Dev que la implementa + Producto | Product Owner | La verifica quien la escribió con negocio, no QA “por si acaso”. |
| Autorización / acceso a datos ajenos | Dev + rol de seguridad | Líder técnico | Se apoya en threat modeling; ver artículo 08 de la colección. |
| Regresión cross-channel | QA de automatización | Líder de calidad | Suite de regresión, no revisión manual caso por caso. |
| Estabilidad bajo carga | DevOps + performance | SRE / DevOps lead | SLOs, no “probamos que anda”. |
| Flakiness de la suite | Dueño de la suite | Líder de calidad | Es deuda, no ruido de fondo. |
Regla práctica. Ownership se reparte; accountability se nombra. Para cada cambio riesgoso, alguien debe poder responder “¿quién decidió que esto estaba listo y con qué evidencia?”. Si la respuesta es “nadie” o “todos”, el modelo está roto.
Anti-patrón a desmontar: QA como única puerta de aprobación. Consecuencia: la velocidad del equipo queda limitada por la agenda de una persona, y el resto pierde el músculo de decidir. Alternativa concreta: mover la decisión al dueño del riesgo, con la evidencia definida en la DoD, y reservar al líder de calidad para diseñar el sistema y desatascar casos ambiguos —no para aprobar los rutinarios.
7. Triage de fallos: una foto, no un juicio
Cuando algo falla, la primera pregunta útil no es “¿de quién es la culpa?” sino “¿qué tipo de fallo es y cuál es el próximo paso?”. Clasificar el fallo desbloquea la acción:
| Tipo de fallo | Señal típica | Próximo paso |
|---|---|---|
| Producto (bug real) | Falla determinística contra criterio de aceptación | Defecto priorizado |
| Ambiente | Falla al desplegar/conectar, no en la lógica | Arreglar entorno, no el test |
| Datos | Falla por dato inconsistente o expirado | Revisar fixtures/semillas |
| Automatización | Falla el test, no el sistema | Corregir selector/aserción |
| Dependencia externa | Falla un tercero (gateway, IdP) | Aislar con contrato/stub |
| Flakiness | Falla intermitente sin cambio | Cuarentena + causa raíz |
Este es solo el resumen. El runbook completo de triage sin culpables, con severidad, evidencia mínima y dueño inicial, está en el artículo satélite “Triage de defectos sin culpables” y se materializa en docs/runbooks/incident-triage.md.
8. Métricas que enseñan y métricas que dañan
Una métrica mal elegida no es neutra: cambia el comportamiento del equipo hacia el número, no hacia la calidad (una lectura práctica de la ley de Goodhart). Dos ejemplos opuestos:
- Métrica dañina: “cantidad de casos automatizados”. Premia agregar tests, no cubrir riesgo. Un equipo puede duplicar la cifra y empeorar el diagnóstico.
- Métrica útil: flakiness por suite en una ventana temporal, con fórmula, exclusiones y acción esperada. Mide salud del sistema de feedback, no productividad individual.
Para señales de entrega y estabilidad a nivel de sistema, la investigación de DORA ofrece un marco discutido y reproducible: sus cuatro métricas clave son frecuencia de despliegue, lead time for changes, change failure rate y tiempo de recuperación ante fallo (dora.dev). (Hecho citado, con matiz: el reporte 2024 de DORA incorporó una quinta señal —rework rate—; conviene citar la versión vigente al publicar, no congelar el número.)
Anti-patrón: usar métricas de productividad individual para “medir calidad”. Consecuencia: se optimiza la apariencia (más commits, más casos) y se penaliza reportar problemas. Alternativa: medir salud del sistema (flakiness, lead time, tasa de fallo de cambios) a nivel de equipo, nunca de persona.
El desarrollo completo —fórmula de flakiness con exclusiones, DORA en detalle y la lista de métricas de vanidad a evitar— está en el satélite “Métricas de calidad que enseñan y métricas que dañan”.
9. Plan de adopción 30/60/90 para Nexo Finanzas
No proponemos una “transformación”: proponemos experimentos con hipótesis y revisión. Cada bloque termina en una retro donde el equipo decide seguir, ajustar o descartar. (Los estados son ilustrativos.)
Días 0–30 — Hacer visible lo implícito.
- Escribir el
quality-charter.mden una página, revisado por Producto. - Extraer la DoD real (la que el equipo ya usa de forma tácita) a
definition-of-done.md. - Instrumentar el pipeline para publicar evidencia (reportes de test como artefactos).
- Hipótesis a validar: “si la DoD es explícita, más de un rol puede aprobar una release rutinaria”. Señal: releases aprobadas sin depender de una sola persona.
Días 31–60 — Mover la decisión al dueño del riesgo.
- Adoptar la plantilla de PR con secciones de riesgo/evidencia/rollback.
- Introducir triage sin culpables y la taxonomía de fallos.
- Empezar a medir flakiness por suite (línea base honesta, sin objetivo aún).
Días 61–90 — Cerrar el bucle de aprendizaje.
- Postmortems blameless para incidentes relevantes, con acciones dueñas y fechas.
- Comunidad de práctica quincenal (30 min) para revisar acuerdos.
- Trazabilidad Jira/Xray de lo crítico, sin burocracia: solo lo que reduce riesgo o acelera diagnóstico (Xray Cloud).
Trade-off honesto. Todo esto tiene costo: escribir acuerdos consume tiempo que no produce features esta semana. El retorno es diferido (menos releases congeladas, onboarding más rápido, menos dependencia de héroes). Si el equipo es muy chico o el producto muy simple, hacer menos es la decisión correcta: un charter de media página y una DoD pueden bastar.
10. Checklist de madurez del operating model
- Existe un quality charter de una página, con dueño y fecha de revisión.
- La DoD cambia según el riesgo del cambio (no es una lista fija).
- Cualquier release rutinaria puede aprobarse sin depender de una sola persona.
- Las decisiones de calidad relevantes están escritas (ADR/PR/runbook).
- El triage clasifica el fallo antes de asignar dueño; no busca culpables.
- Las métricas miden salud del sistema, no productividad individual.
- El pipeline publica evidencia reproducible de forma automática.
- Hay un runbook de incidentes y al menos un postmortem blameless hecho.
- Cada acuerdo tiene dueño y se revisa periódicamente.
Ejercicio para el lector. Tomá tu última release congelada. Escribí en tres líneas: (1) qué decisión faltaba, (2) qué evidencia la hubiera desbloqueado, (3) quién debería haber sido el dueño de esa decisión. Eso es el primer borrador de tu DoD.
Qué aprendimos y próximos pasos
- El liderazgo de calidad se mide por cuánta autonomía habilita, no por cuántas cosas aprueba.
- Los artefactos existen para hacer visible el método, no para burocratizar.
- Ownership se reparte; accountability se nombra; la evidencia decide.
- Publicar menos pero más honesto es una señal de criterio Senior.
Enlaces internos (misma colección):
- Artículo 2 — DoR y DoD como acuerdos vivos: quality gates proporcionales al riesgo — profundiza §4 y §5.
- Artículo 3 — Triage de defectos sin culpables — profundiza §7.
- Artículo 4 — Métricas de calidad que enseñan y métricas que dañan — profundiza §8.
Otras colecciones del blog:
- 01 — Arquitectura de Quality Engineering
- 04 — CI/CD y continuous quality
- 07 — Observabilidad para Quality Engineering
- 13 — Quality Engineering en fintech
Conexión con el portfolio Nexo Finanzas
Repositorio ancla: nexo-quality-platform. Archivos que demuestran este método:
docs/quality/quality-charter.md
docs/quality/risk-matrix.md
docs/quality/definition-of-ready.md
docs/quality/definition-of-done.md
docs/quality/test-strategy.md
docs/runbooks/incident-triage.md
docs/adr/0001-ownership-por-tipo-de-riesgo.md
CONTRIBUTING.md
.github/pull_request_template.md
Fuentes
- The Scrum Guide (ed. 2020, vigente a 2026-07): https://scrumguides.org/scrum-guide.html
- Cucumber — Behaviour-Driven Development: https://cucumber.io/docs/bdd/
- Google SRE — Postmortem Culture: https://sre.google/sre-book/postmortem-culture/
- Google SRE — Service Best Practices: https://sre.google/sre-book/service-best-practices/
- GitLab — CI/CD
artifacts:reports: https://docs.gitlab.com/ci/yaml/artifacts_reports/ - DORA (métricas de entrega/estabilidad): https://dora.dev/
- Xray Cloud Documentation: https://getxraydocs.atlassian.net/wiki/spaces/XRAYCLOUD/overview
Diagramas Mermaid: sintaxis flowchart estándar; etiquetas en ASCII para máxima compatibilidad de renderer. Validar en el motor de destino antes de publicar.