Seguimiento de errores

Mejore las pruebas de software mediante el seguimiento de errores y defectos

Working Late at Night in the Office: Businesswoman Uses Desktop Computer, Analyzing, Using Documents, Solving Problems, Finishing Important Project. Diligent Ambitious Young Worker. Side View

¿Qué es el seguimiento de errores?

El seguimiento de errores es el proceso de registrar y monitorear errores o errores durantepruebas de software. También se conoce como seguimiento de defectos o seguimiento de problemas. Los sistemas grandes pueden tener cientos o miles de defectos. Cada uno debe ser evaluado, monitoreado y priorizado para la depuración. En algunos casos, es posible que sea necesario realizar un seguimiento de los errores durante un período prolongado.

"El seguimiento de defectos es un proceso importante en la ingeniería de software, ya que los sistemas complejos y críticos para el negocio tienen cientos de defectos", dice Tutorials Point. "Uno de los factores desafiantes es gestionar, evaluar y priorizar estos defectos. El número de defectos se multiplica durante un período de tiempo y, para gestionarlos de forma eficaz, se utiliza un sistema de seguimiento de defectos para facilitar el trabajo " 1

.

Cómo funciona el seguimiento de errores

Un error de software ocurre cuando una aplicación o programa no funciona de la forma en que se diseñó. La mayoría de los errores son fallas o errores cometidos por arquitectos, diseñadores o desarrolladores de sistemas. Los equipos de prueba utilizan el seguimiento de errores para monitorear e informar sobre los errores que ocurren a medida que se desarrolla y prueba una aplicación.

"Un componente importante de un sistema de seguimiento de errores es una base de datos que registra datos sobre errores conocidos", informa Wikipedia. "Los hechos pueden incluir la hora en que se informó un error, su gravedad, el comportamiento erróneo del programa y los detalles sobre cómo reproducir el error; así como la identidad de la persona que lo informó y cualquier programador que pueda estar reparándolo" 2

. Durante su vida, un solo defecto puede pasar por varias etapas o estados. Incluyen:

  • Activo: la investigación está en curso
  • Prueba: fijo y listo para probar
  • Verificado: Reprobado y verificado por aseguramiento de la calidad (QA)
  • Cerrado: se puede cerrar después de una nueva prueba de control de calidad o si no se considera un defecto
  • Reabierto: no fijo y reactivado 3

Los errores se gestionan en función de la prioridad y la gravedad. Los niveles de gravedad ayudan a identificar el impacto relativo de un problema en el lanzamiento de un producto. Estas clasificaciones pueden variar en número, pero generalmente incluyen alguna forma de lo siguiente:

  • Catastrófico: Provoca una falla total del software o una pérdida de datos irrecuperable. No existe una solución alternativa y el producto no se puede lanzar.
  • Funcionalidad deteriorada: puede existir una solución, pero no es satisfactoria. El software no se puede lanzar.
  • Fallo de los sistemas no críticos: existe una solución alternativa razonablemente satisfactoria. El producto puede lanzarse, si el error está documentado.
  • Muy menor: hay una solución alternativa o se puede ignorar el problema. No afecta el lanzamiento de un producto.

En la mayoría de los casos, los estados y los niveles de gravedad se controlan en una base de datos de seguimiento de errores. Una buena plataforma de seguimiento también se vincula con desarrollo de software y sistemas de gestión: mejor para evaluar el estado de error y el impacto potencial en la producción general y los plazos.


Por qué es importante el seguimiento de errores

Se estima que los desarrolladores de software cometen de 100 a 150 errores por cada mil líneas de código.4  Según un informe del Consortium for IT Software Quality (CISQ): "Incluso si solo una pequeña fracción, digamos el 10 por ciento, de estos errores son graves, una aplicación relativamente pequeña de 20.000 líneas de código tendrá aproximadamente 200 errores de codificación graves". 5

Las pruebas de software son esenciales para aislar y mitigar errores. Un buen proceso de control de calidad puede descubrir cientos o incluso miles de defectos, y los equipos de prueba deben gestionarlos todos. La integración del seguimiento de errores en el flujo de trabajo de prueba mejora la eficiencia al ayudar a los evaluadores a priorizar, monitorear e informar sobre el estado de cada error.

"El seguimiento de defectos ayuda a garantizar que los errores encontrados en el sistema realmente se solucionen", dijo la consultora de Agile, Yvette Francino. "Las herramientas de seguimiento no solo proporcionan una forma de garantizar el seguimiento, sino que también proporcionan métricas valiosas. Dependiendo de la herramienta que se utilice, el equipo puede vincular los defectos con el código modificado, las pruebas u otros datos que permitan la trazabilidad o el análisis de las tendencias de los defectos. Si un determinado módulo está plagado de defectos, puede que sea el momento de revisar y reescribir ese módulo " 6

. Idealmente, las pruebas deben realizarse lo antes posible, cuando los errores son más fáciles y mucho menos costosos de corregir. Un estudio anterior de IBM descubrió que los defectos encontrados después de la producción o después del lanzamiento pueden costar 15 veces más repararlos en comparación con los errores que se resuelven al principio del desarrollo.

Muchos equipos están utilizando ahora una metodología conocida como pruebas continuas . En este caso, las pruebas de calidad y la retroalimentación se llevan a cabo en todas las etapas del desarrollo, desde el diseño y la codificación hasta la implementación. Las tecnologías modernas como la inteligencia artificial (IA) también pueden ayudar en el proceso de prueba al detectar y analizar errores en las primeras etapas del ciclo de vida.


Pruebas y calidad de la aplicación

Sepa cómo obtener aplicaciones cada vez más complejas para comercializar más rápido, con menos defectos y a un costo menor.


Funciones clave del seguimiento de errores

El control de calidad es fundamental para desarrollar aplicaciones sólidas. Las herramientas de prueba de software, gestión de cambios y seguimiento de errores permiten a los equipos descubrir defectos, medir su alcance e impacto, y resolverlos.

En Harvard Business Review, Nicholas Bowen describe un proceso para gestionar los defectos. El primer paso es clasificar y priorizar: "Generalmente, los equipos priorizarán dos tipos de errores: los que hacen que un sistema se bloquee y los que son menos graves pero que pueden ser generalizados ...A continuación, decida su tiempo de respuesta objetivo para cada nivel de gravedad. Si el sistema de gestión de la calidad es nuevo, el enfoque inicial debería ser corregir los errores más graves en cuestión de horas o días. A medida que usa su sistema, puede recopilar datos sobre dos métricas clave, las tasas de errores entrantes y la productividad de los correctores de errores, y ajustar sus objetivos según sea necesario ". Él dice que las organizaciones también necesitan crear un sistema donde los defectos y el tiempo requerido para resolverlos puedan revisarse en todos los niveles, desde el CEO hacia abajo.7

Un buen sistema de seguimiento de errores puede ayudar en este proceso proporcionando un único flujo de trabajo para el seguimiento de defectos, la generación de informes y la trazabilidad del ciclo de vida. Debería vincularse aún más con otros sistemas de gestión para compartir visibilidad y retroalimentación tanto dentro del desarrollo de software como dentro de la organización en general. IBM Rational ClearQuest, por ejemplo, proporciona una plataforma centralizada para el seguimiento y la generación de informes de errores. Se integra con otros sistemas de gestión de cambios y desarrollo de IBM y ayuda a mejorar la comunicación y la colaboración entre desarrolladores, operaciones y equipos en general.

Además, busque sistemas de prueba y seguimiento que utilicen IA para detectar errores en las primeras etapas del proceso de desarrollo. Puede optimizar la cantidad y los tipos de pruebas que ejecutan los equipos, automatizar el proceso de prueba y utilizar la inteligencia artificial para analizar defectos pasados y prevenirlos en el futuro.


Soluciones relacionadas

IBM Rational ClearQuest

Software de gestión de cambios que ayuda a mejorar la productividad de los desarrolladores al tiempo que se adapta a las metodologías, procesos y herramientas que mejor se adaptan al proyecto y al equipo.


Pruebas de software

Entregue los resultados de prueba al desarrollo más rápido. Reduzca los riesgos y los costos realizando la corrección de defectos más temprano.


DevOps Insights

Obtenga información completa de las populares herramientas de integración continua y entrega continua para aumentar la velocidad, la calidad y el control de sus aplicaciones.