Error de programa

Error de software  ( error de jerga ) - significa un error en el programa o en el sistema, por lo que el programa produce un comportamiento inesperado y, como resultado, el resultado. La mayoría de los errores de software surgen de errores cometidos por los desarrolladores del programa en su código fuente o en su diseño. Además, se producen algunos errores debido al funcionamiento incorrecto de las herramientas de desarrollo, por ejemplo, debido a un compilador que genera un código incorrecto.

El término "error de software" se usa generalmente para referirse a errores que se manifiestan en la etapa de operación del programa, a diferencia de, por ejemplo, errores de diseño o errores de sintaxis. Un informe que contiene información sobre un error también se denomina informe de error  . Un informe sobre un problema crítico ( eng. crash ) que hace que el programa se bloquee se denomina informe de bloqueo ( eng. crash report ).   

Los errores de software se localizan y eliminan en el proceso de prueba y depuración del programa.

La etimología del término "bicho"

En el sentido de " error técnico elusivo ", la palabra "error" ( eng.  bug ) fue utilizada mucho antes de la llegada de las computadoras por el personal de la compañía telefónica y de telégrafos en relación con problemas con equipos eléctricos e ingeniería de radio. En 1878 , Thomas Edison escribió [1] :

“Así fue con todos mis inventos. El primer paso es la intuición, que llega como un relámpago, luego surgen las dificultades: el dispositivo se niega a funcionar, y ahí es cuando aparecen los "errores", como se llama a estos pequeños errores y dificultades, y lleva meses de observación minuciosa, investigación y esfuerzo antes de que llegue al éxito o al fracaso comercial".

Texto original  (inglés)[ mostrarocultar] Así ha sido en todos mis inventos. El primer paso es una intuición, y viene con un estallido, luego surgen las dificultades: esta cosa cede y [es] entonces cuando los "Bichos", como se llaman esas pequeñas fallas y dificultades, se muestran y meses de intensa observación, estudio. y el trabajo son requisitos antes de que se alcance el éxito o el fracaso comercial.

Durante la Segunda Guerra Mundial , los errores se utilizaron para referirse a problemas con la electrónica del radar.

Según una versión, este término fue aplicado por primera vez a un error de software el 9 de septiembre de 1947 [2] por Grace Hopper , quien trabajaba en la Universidad de Harvard con una computadora Harvard Mark II .. Habiendo rastreado el error en el programa hasta el relé electromecánico de la máquina, encontró una polilla quemada entre los contactos cerrados. El insecto recuperado se grabó en un diario técnico con una inscripción irónica que lo acompañaba: " Se encuentra el primer caso real de error " [3] . 

Significado y clasificación de errores de software

Dependiendo de la etapa de desarrollo del software en la que se detecte el error, existen:

Por importancia:

Por tiempo de aparición:

Por lugar y destino:

Según la naturaleza del error, el programa y el entorno de ejecución, el error puede aparecer de inmediato o viceversa, pasar desapercibido durante mucho tiempo (por ejemplo , Problema 2038 ).

Asimismo, el error puede manifestarse como una vulnerabilidad que permite el acceso no autorizado al sistema o un ataque DoS .

Variedades

Encontrar y corregir errores

Para depurar un programa ( ing.  depuración ), los desarrolladores de software utilizan programas especiales de depuración ( ing.  depurador ). Por ejemplo, en un sistema operativo Windows , puede usar el programa WinDbg del paquete Herramientas de depuración de Microsoft para Windows. Para GNU/Linux y otros sistemas operativos similares a UNIX , existe el depurador GDB (GNU Debugger).

Informes de errores

La mayor parte de los errores generalmente se depuran en la etapa de compilación y prueba del programa. Sin embargo, algunos de los errores aún ingresan a la versión publicada y aparecen en las computadoras de los usuarios finales durante la operación del software. Para mejorar la calidad del software, se utilizan programas especiales, cuyo propósito es detectar un error en la aplicación de destino, recopilar la información necesaria sobre sus síntomas y enviar un informe a través de Internet a los desarrolladores de este software.

Por ejemplo , la Dra. Watson , que por defecto detecta errores en las aplicaciones de los usuarios y envía un informe a un servidor especial de Microsoft . También, como ejemplo, podemos citar las bibliotecas similares Breakpad [4] y CrashRpt [5] .

Consecuencias

Véase también

Notas

  1. Fuente: Edison to Puskas, 13 de noviembre de 1878, Documentos de Edison, Laboratorio Nacional de Edison, Servicio de Parques Nacionales de EE. UU., West Orange, NJ, citado en Thomas P. Hughes, American Genesis: A History of the American Genius for Invention, Penguin Books , 1989, pág.
  2. ↑ Libro de registro con errores informáticos  . Museo Nacional de Historia Americana. Consultado el 26 de julio de 2019. Archivado desde el original el 1 de junio de 2019.
  3. Danis, Sharron Ann: "Contraalmirante Grace Murray Hopper" . ei.cs.vt.edu (16, 16-02-1997). Consultado el 20 de enero de 2015. Archivado desde el original el 15 de junio de 2010.
  4. Breakpad . Google. Consultado el 11 de agosto de 2009. Archivado desde el original el 3 de febrero de 2012.
  5. CrashRpt . Archivado desde el original el 3 de febrero de 2012.
  6. Popper, Nathaniel . Knight Capital dice que la falla comercial le costó $ 440 millones  (inglés) , New York Times  (2 de agosto de 2012). Archivado desde el original el 5 de octubre de 2017. Consultado el 13 de noviembre de 2017.

Enlaces