Bug (ingeniería) - Enciclopedia

En ingeniería, un bug es un defecto de diseño en un sistema ingenieril que provoca un resultado no deseado.

Aunque se utiliza exclusivamente para describir un problema técnico, el término bug es no técnico; aplicable sin entender técnicamente el sistema.

El término bug se aplica exclusivamente a un sistema que es diseñado por humanos; no a un sistema natural; y que el problema esté dentro del alcance del control humano. Por ejemplo, los humanos tienen errores, pero no bugs, y un colapso de un servidor debido a un desastre natural no es un bug.

Además de o en lugar de defecto, algunos usan: error, fallo o falla.

Sistemas ingenierizados es una clasificación amplia que abarca, pero no se limita a: software, hardware de computadoras, electrónica, circuitos y maquinaria.

El resultado no deseado puede clasificarse y describirse de muchas maneras, incluyendo: intermitente, transitorio, fallo, colapso o congelación.

Dado que la deseabilidad es subjetiva, lo que para uno puede ser considerado no deseable para otro puede ser considerado deseable; incluso una función útil.


Historia
La palabra bugga en el inglés medio es la base para los términos bugbear y bugaboo como nombres para un monstruo.

El término bug para describir un defecto ha sido jerga de ingeniería desde al menos principios de los años 1870 – mucho antes de los ordenadores electrónicos y el software. Por ejemplo, Thomas Edison escribió las siguientes palabras en una carta a un asociado en 1878:

Ha sido así en todas mis invenciones. El primer paso es una intuición, y llega con un estallido, luego surgen dificultades—este cosa se descompone y entonces es cuando aparecen los "Bugs"—como se llaman esos pequeños errores y dificultades—y se requieren meses de intensa observación, estudio y trabajo antes de que se alcance con certeza el éxito o fracaso comercial.
En un cómic publicado en una revista de la industria telefónica en 1924, un personaje ingenuo escucha que un hombre tiene un trabajo como un "bug hunter" y le da un regalo de una espátula de rascacuellos. El hombre responde "¿No sabe que un 'bug hunter' es solo un apodo para un reparador?"
Baffle Ball, el primer juego mecánico de pinball, fue anunciado como "libre de bugs" en 1931.
Los problemas con el equipo militar durante la Segunda Guerra Mundial se referían como bugs (o glitches).
En la película de 1940, Flight Command, un defecto en un dispositivo de navegación es llamado bug.
En un libro publicado en 1942, Louise Dickinson Rich, hablando de una máquina de cortar hielo eléctrica, dijo: "Se suspendió el cortado de hielo hasta que el creador podría ser llevado a cabo para quitar los bugs de su dulce".
Isaac Asimov usó el término bug para referirse a problemas con un robot en su cuento corto "Catch That Rabbit", publicado en 1944.

La pionera en informática y almirante de la Marina, Grace Hopper, popularizó una historia sobre una polilla que causó un problema en un ordenador electromecánico temprano. Mientras Hopper trabajaba en el Mark II y Mark III como miembro del cuerpo docente de Harvard en aproximadamente 1947, los operadores rastrearon un error en el Mark II hasta una polilla atrapada en un relé. La polilla se eliminó del mecanismo y se pegó en un libro de registro con la nota "Primer caso real de bug encontrado".
Reportadamente, los operadores, incluyendo a William "Bill" Burke, más tarde del Laboratorio de Armas Navales de Dahlgren, Virginia, estaban familiarizados con el término ingenieril y probablemente hicieron una broma al confluir los dos significados de bug (biológico y defecto).

Aunque probablemente sea una broma, la historia indica que el término se utilizaba comúnmente en el campo de la informática en ese momento.

El libro de registro, completo con la polilla, forma parte de la colección del Museo Nacional de Historia Americana del Smithsoniano.

El término relacionado debug también parece predecir su uso en informática: la etimología del Oxford English Dictionary del término contiene un testimonio de 1945, en el contexto de motores de aviones.


"No es un bug, es una característica"
Dado que bug implica un comportamiento no deseado, llamar un comportamiento un bug es subjetivo. Comportamientos que algunos consideran bugs pueden ser considerados características útiles por otros, por lo que una frase común es "No es un bug, es una característica" (INABIAF). Esta ocurrencia está registrada en The Jargon File, que data de 1975, pero se remonta a 1971 cuando la programadora de PDP-8 Sandra Lee Harris en Digital Equipment Corporation (DEC) hizo la distinción entre problemas para ser fijados en el código para el interpretador FOCAL de DEC y aquellos que debían documentarse o aclararse en el manual de usuario.

Tal comportamiento podría comunicarse explícitamente a los usuarios o podría permanecer como una característica no documentada.


Referencias