La verdad sobre los errores de software: el mito del software sin errores

Índice de Contenido
  1. El mito del software sin errores
  2. Los sospechosos habituales
  3. Solución de problemas vs. Depuración
  4. Documentar errores
  5. Estimación de correcciones de errores
  6. Técnicas de depuración probadas y verdaderas
    1. Imprime cosas: Muchas cosas
    2. Lee el mensaje de error
    3. Comienza con el código que ya funciona
    4. Ejecuta tu código cada vez que realices un cambio
    5. Divide y vencerás
  7. Depuración con pato de goma

El mito del software sin errores

Todo el software tiene errores. Este es un hecho que cualquier persona que haya estado en el negocio del desarrollo de software sabe. Sería increíblemente costoso tratar de eliminar cada pequeño defecto en una aplicación de cualquier complejidad. Sin mencionar que las pruebas de software solo demuestran la existencia de problemas, no su ausencia. Dicho esto, hay ciertos tipos de defectos o errores de software que deben corregirse.

VER: Kit de contratación: Desarrollador de backend (Newsmatic Premium)

Los sospechosos habituales

Hay varios factores que contribuyen a los errores del software. A continuación se enumeran algunos de los más comunes:

  • Ambigüedad en el comportamiento esperado
  • Subsistemas o componentes externos
  • Pruebas y plazos insuficientes
  • Errores de programación

Independientemente del culpable, en algún momento de tu carrera, ya sea que lo decidas tú o alguien decida por ti, será necesario solucionar un defecto. La forma en que se toma esta determinación puede variar, pero generalmente es una combinación de comportamiento, acciones o tolerancia y minimización de pérdidas por parte del cliente. La mayoría de los desarrolladores de software competentes pueden solucionar un problema una vez que se ha descubierto la causa. El proceso de descubrir la causa se conoce como solución de problemas o depuración.

Solución de problemas vs. Depuración

En términos más simples, la depuración es un subconjunto de la solución de problemas. Puedes solucionar problemas sin depurar, pero no puedes depurar sin solucionar problemas. Si esto suena confuso, es porque lo es.

La solución de problemas tiende a suceder a un nivel más abstracto que la depuración y se aplica a muchos componentes del sistema. Es el proceso de identificar y aislar el componente o los componentes de un sistema que están causando problemas. La solución de problemas se puede aplicar a cualquier sistema y no implica que se corrija el problema, sino que se centra en encontrar y comprender la causa raíz.

Descubre las sorpresas de KDE Plasma 5.25

La depuración, por otro lado, se aplica específicamente al código informático. Como desarrollador, si se te asigna depurar algún módulo de software, se te está pidiendo que encuentres las instrucciones que están causando el comportamiento indeseado y las corrijas, preferiblemente en la misma sesión si es posible.

Documentar errores

El primer paso para solucionar problemas y depurar comportamientos no deseados en el software es asegurarse de documentar adecuadamente el problema. Esto garantizará que todas las partes involucradas tengan la misma comprensión y ayudará a informar los pasos posteriores en el proceso. Como mínimo, un error documentado correctamente deberá incluir lo siguiente:

  • Descripción
  • Pasos para reproducir
  • Tasa de reproducción
  • Resultados esperados
  • Resultados reales
  • Entorno y versión

Estimación de correcciones de errores

Como desarrollador, a menudo se te pedirá que estimes cuánto tiempo te llevará encontrar y solucionar un error. Desafortunadamente, no hay una respuesta definitiva. Una práctica recomendada es establecer un límite de tiempo inicial de 4 horas o medio día. Durante esta sesión inicial, debes concentrarte en descubrir algunos aspectos clave de información.

  • ¿Puedes reproducir el problema?
  • ¿Conoces la causa raíz?
  • ¿Has limitado el problema a un área o componente?

Si puedes encontrar y solucionar el problema dentro del tiempo asignado, felicidades. Si no es así, es apropiado proporcionar alguna estimación de tamaño basada en tu esfuerzo de depuración inicial a las partes interesadas. A continuación se ofrece una guía general, pero ten en cuenta que los resultados pueden variar:

  • Pequeño: Requiere de 4 a 8 horas para solucionar.
  • Mediano: Requiere de 2 a 3 días para solucionar.
  • Grande: Puede requerir una semana o más para solucionar.
  • Muy grande: Requerirá más miembros del equipo y/o planificación para solucionar.

En este punto, es posible que te preguntes por qué proporcionar alguna estimación si la estimación de correcciones de errores es una ciencia tan inexacta. La verdad es que se trata de proporcionar transparencia tanto para ayudar a gestionar las expectativas de las partes interesadas como para brindar opciones a los propietarios de productos en caso de que sea evidente que no hacer nada hasta que la solución esté disponible no es una opción. Albert Einstein se le atribuye la siguiente cita: "No podemos resolver nuestros problemas con el mismo pensamiento que usamos cuando los creamos".

Técnicas de depuración probadas y verdaderas

Todo entorno de desarrollo moderno tiene una gran cantidad de opciones de depuración. Por lo general, estas opciones son específicas del entorno de programación que estás utilizando y están destinadas a facilitar tu vida como desarrollador. Dicho esto, no descartes lo básico.

Cómo instalar y utilizar Jitsi

Imprime cosas: Muchas cosas

El registro sigue siendo una de las formas más efectivas de solucionar problemas en un sistema. Te sorprenderá la cantidad de veces que el registro revela que el código que has estado investigando ni siquiera se está ejecutando.

Lee el mensaje de error

Buscar un error en Internet es una excelente manera de ver cómo aquellos que vinieron antes que tú pueden haber resuelto algo, pero asegúrate de tomarte el tiempo para leer detenidamente el mensaje de error primero. La mayoría de los lenguajes y marcos modernos te darán una buena idea de cuál es el error y muchos sugerirán soluciones específicas para tu situación en el momento exacto en que se encontró el error.

Comienza con el código que ya funciona

Los desarrolladores utilizan el control de versiones por una razón. Cada vez que puedas volver a una versión que funciona y luego comparar las bases de código, podrás identificar más rápidamente la sección de código problemática. Incluso si el error se descubrió recientemente, con frecuencia puedes retroceder varias versiones y luego aplicar actualizaciones una por una hasta que el comportamiento no deseado regrese y obtener información sobre el problema.

Ejecuta tu código cada vez que realices un cambio

Suena tedioso, pero en serio, ejecutar el código y verificar el cambio de comportamiento con la mayor frecuencia posible puede ahorrarte tener que retroceder en tus pasos de solución de problemas.

Divide y vencerás

A menudo se pasa por alto, pero simplemente comentar el código hasta que el problema desaparezca puede ser una forma rápida y sencilla de encontrar las instrucciones problemáticas.

Depuración con pato de goma

A veces, solucionar problemas de software se convierte en un deporte de equipo y requiere pensamiento creativo. Una técnica conocida como "depuración con pato de goma" se basa en la premisa de que a veces, cuando solucionamos problemas de software, debemos reducir la velocidad para avanzar más rápido. Los pasos para la depuración con pato de goma se describen a continuación:

Las 12 mejores IDEs para programadores en 2022

VER: Kit de contratación: Desarrollador de Python (Newsmatic Premium)

  1. Consigue, pide prestado, roba, compra, fabrica o de cualquier otra forma obtén un pato de goma (preferiblemente el que se usa en la bañera).
  2. Coloca el pato de goma en tu escritorio e infórmale que vas a repasar algo de código con él, si es que no le importa.
  3. Explícale al pato qué se supone que debe hacer tu código y luego entra en detalles y explica tu código línea por línea.
  4. En algún momento, le estarás explicando al pato lo que tu código hace, y te darás cuenta de que en realidad no es lo que tu código hace. El pato te mirará con suficiencia.
  5. ¡Agradece al pato por su tiempo y arregla el código!

No entres en pánico. Al igual que la mayoría de las cosas que hacemos en la vida, solucionar problemas de software se vuelve más fácil con la experiencia y la práctica. La clave es ser transparente con las partes interesadas durante todo el proceso, mantener un enfoque organizado y metódico, y no tener miedo de pedir ayuda a tus compañeros programadores.

Amplía tus habilidades de TI y domina la programación con estos recursos de Newsmatic Academy:

  • The Coding 101 Bootcamp Beginners Bundle
  • The Linux & Docker Coding Bundle
  • Coding with Python: The Ultimate Training for Aspiring Developers Bundle
  • The All-in-One Coding Skills Bundle

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a La verdad sobre los errores de software: el mito del software sin errores , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.