Bug vs defecto vs issue vs error: ¿cuál es la diferencia? (2026)

Un bug es la palabra informal para un defecto; un defecto es el término formal para cualquier falla en la que el software no cumple su requisito. Un issue es el término paraguas que cubre defectos, peticiones de funcionalidad, tareas y dudas. En la práctica describen lo mismo con distinto nivel de ceremonia — y lo que genera confusión es mezclarlos dentro de un mismo equipo. Las diferencias importan menos en la conversación y más en tres sitios: qué mides, qué prometes por contrato y qué le pides a quien reporta. Esta página propone una separación defendible, para ponerla en un glosario y dejar de discutirla.

La respuesta corta

Término Alcance Dónde se ve
Bug Palabra informal para defecto. Suele ser algo que antes funcionaba o que claramente debería funcionar Dailies, chat, «hay un bug en el pago»
Defecto Término formal: cualquier desviación entre comportamiento real y esperado, haya funcionado antes o no Informes de QA, auditorías, contratos, métricas
Issue Término paraguas: todo lo que exige una decisión — defecto, petición, tarea, duda Trackers, IDs de ticket, notas de versión
Error Una acción humana que produce un resultado incorrecto Análisis de causa raíz, post-mortems
Fault La instrucción o dato erróneo dentro del software que provoca el fallo Discusión de ingeniería, estándares
Failure El evento observable: el sistema no hace lo que debe Revisiones de incidentes, monitorización
Si solo recuerdas una línea: error → fault → failure es una cadena causal, y defecto es lo que registras, normalmente un fault. Bug es lo que la gente dice en voz alta.

La cadena: error, fault, failure

El modelo clásico, todavía usado en estándares y útil en post-mortems:
  • Error — una persona se equivoca: requisito mal entendido, supuesto falso, comprobación omitida.
  • Fault — ese error se convierte en un defecto concreto en código, configuración o datos.
  • Failure — el fault se ejecuta en las condiciones adecuadas y se hace visible: la página rompe, el total está mal, el guardado falla en silencio.
  • Esta cadena explica por qué «error humano» nunca es causa raíz por sí solo: explica el origen del defecto, no por qué llegó a producción. Para la vista de QA sobre clasificación y priorización, ver la guía de triaje de defectos.

    Por qué «issue» es mejor palabra para tu tracker

    Un tracker guarda más que defectos. Nombra el objeto issue — y mantén «bug» como palabra cotidiana — y tendrás un solo sitio para:
    • defectos (el comportamiento es incorrecto),
    • peticiones de funcionalidad (el comportamiento falta a propósito),
    • tareas (trabajo sin comportamiento asociado),
    • dudas (no se espera cambio de código).
    La trampa es un tracker con un único tipo «bug». Los equipos meten entonces peticiones como bugs para entrar en la cola, lo que corrompe permanentemente tus métricas de defectos: ya no puedes saber si la calidad mejora o si solo se cambiaron las etiquetas. Si estás eligiendo herramienta, la guía de issue tracking systems cubre los criterios más amplios; para el ciclo de vida de QA, ver software de gestión de defectos.

    Donde la distinción gana dinero

    1. Contratos y SLA. Un acuerdo que promete «defectos críticos corregidos en 24 horas» necesita una definición escrita de defecto y crítico. Sin ella, cada discusión es una negociación. «Bug» en un contrato suele ser demasiado vago para exigirlo. 2. Métricas. Densidad de defectos, tasa de fuga y tasa de reapertura solo significan algo si la población es estable. Si la mitad de tus «bugs» son peticiones, ningún número se sostiene. 3. Auditoría y cumplimiento. Los productos regulados suelen necesitar un registro de defecto trazable con severidad, verificación y evidencia de cierre. Es un artefacto formal: la palabra defecto señala esa formalidad.

    ¿Bug o petición de funcionalidad?

    La frontera que más discusiones genera:
    Es un defecto si… Es una petición si…
    El comportamiento contradice un requisito escrito o el diseño documentado No existe requisito y ese comportamiento nunca se prometió
    Los usuarios no pueden completar una tarea que antes completaban Pueden completarla, solo que no como preferirían
    El estado del sistema se vuelve inconsistente o se pierden datos El sistema es consistente; la salida simplemente no es la deseada
    Afecta accesibilidad, seguridad o integridad de datos Es una preferencia de maquetación, texto o flujo
    Los casos difíciles son los «esperados por convención». Un botón deshabilitado que no da ninguna respuesta es un defecto en la mayoría de design systems, aunque ningún requisito lo diga. Resuélvelos con una regla escrita o los rediscutirás cada sprint.

    ¿Bug o «error» (el mensaje en pantalla)?

    Un mensaje de error en pantalla no es un defecto por sí mismo. «El formato del email no es válido» es comportamiento correcto. El defecto es cuando el mensaje está mal, falta, o aparece cuando no debe. Y el error de «Console error» se refiere a una excepción registrada por el runtime, que puede ser un defecto o no (muchos errores registrados son esperados y gestionados). Por eso un informe debe adjuntar la salida de Console como texto y no como captura: quien triaja necesita el texto, la pila y la frecuencia, no una imagen.

    Elige un vocabulario y escríbelo

    La recomendación con la que la mayoría de equipos puede vivir:
    • Issue es el objeto del tracker. Todos los tipos viven debajo.
    • Defecto es el tipo «comportamiento incorrecto» y la palabra de métricas, contratos e informes.
    • Bug se queda como palabra hablada. Fuera de los dashboards.
    • Error / Fault / Failure solo en análisis de causa raíz, en ese orden.
    Luego ponlo en un glosario de cinco líneas en tu documento de QA, junto con la regla defecto vs petición. El objetivo no es pureza lingüística: un vocabulario estable hace que un informe sea reutilizable y una métrica comparable mes a mes.

    Qué implica para el informe

    Se llame como se llame, los campos que necesita quien triaja son idénticos:
    • la página o endpoint exacto,
    • qué se hizo, qué se esperaba y qué ocurrió,
    • la evidencia: captura, errores de Console, peticiones fallidas,
    • el entorno: navegador, OS, viewport, marca de tiempo.
    Esa es la diferencia entre un informe clasificable en dos minutos y un interrogatorio de quince. El formato de informe de bug cubre cada campo y los ejemplos de títulos muestran cómo hacer la primera línea buscable.

    Preguntas frecuentes

    ¿Bug y defecto son lo mismo? En el uso diario, sí. Formalmente, el defecto es la desviación del comportamiento esperado y bug es su nombre coloquial. Contratos y auditorías usan defecto porque está definido; los equipos dicen bug porque es corto. ¿Defecto y failure son lo mismo? No. Un defecto es una falla que existe en el software; un failure es el evento observable cuando se ejecuta en las condiciones adecuadas. Un defecto puede estar años en el código sin causar nunca un failure. ¿Nuestro tracker debe decir «bug» o «issue»? Objeto issue, con defecto como un tipo. Un tracker con solo el tipo «bug» empuja las peticiones a la cola de defectos y corrompe las métricas de calidad. ¿Dónde encaja «error»? Un error es una acción humana que introduce un fault. Es una causa, no una categoría de ticket. «Error humano» como causa raíz detiene el análisis un paso demasiado pronto. ¿Hay que imponerlo con la herramienta? Solo ligeramente. Un campo obligatorio «tipo» y una definición escrita de defecto frente a petición bastan. Más taxonomía suele documentar mejor la cosa equivocada.