SlideShare a Scribd company logo
1 of 22
Download to read offline
BUGS
EN INFORMÁTICA
Alejandro Otegui García
17/10/2017
¿Qué es un BUG?
Un error de software, error o simplemente fallo (en inglés bug) es un problema
en un programa de computador o sistema de software que desencadena un
resultado indeseado.
¿Cómo se puede resolver un BUG?
Los bugs son el peor enemigo de cualquier programador
y aunque existen muchos controles para prevenirlos
muchas veces los problemas salen a la luz en el peor
momento, justo cuando todo parece ir genial. Por eso
siempre es importante manejar versiones y respaldos de
datos lo que ayudan a resolver los problemas.
Para solucionar estos problemas debemos tener en
cuenta las siguientes opciones.
Opción de Impacto mínimo.
Cuando hacemos un cambio en la aplicación que afecta
de forma negativa a los usuarios la forma más simple de
resolverlo es hacer un Rollback en el servidor para evitar
que ésto continúe afectando a los usuarios y minimizar el
efecto para los nuevos usuarios.
Ésto requiere que el servidor esté preparado para poder
hacer un deploy limpio y echar para atrás los cambios, por
eso antes debemos planificar muy bien el entorno en el
que trabajamos para no tener problemas.
Opción de Exploración profunda.
Resolver un bug no es tan fácil como suena y mucho
menos cuando el problema afecta a la capa de datos.
Generalmente, cuando se encuentra el bug debemos
reunir al equipo y planificar qué vamos a hacer para
recuperar los datos.
Tener respaldos continuos es muy importante para evitar
catástrofes, puede que en tablas que se muevan mucho
no sean muy útiles pero con suerte y mucha planificación
podemos sacar el mayor provecho posible.
Opción de Esfuerzo urgente.
Puede que el bug afecte directamente al producto y tenga
que ser solucionado de forma inmediata. Si tenemos
suerte el problema no necesitará a todo el equipo y
podremos solventarlo sin retrasarnos, pero ese no
siempre es el caso.
Siempre debemos hablar claro al equipo para organizar
el trabajo y evitar que los esfuerzos por resolver el bug
afecten al resto del trabajo que se hace.
Opción Nuclear.
Cuando el bug es tan grande que requiere más de la
mitad del equipo para resolverlo no nos queda otra
opción más que detener todo y dedicar todo el esfuerzo a
resolver el problema. Esto retrasará el avance de la
aplicación pero no tenemos otra opción si queremos
mantenernos activos.
Esta es la última opción ya que implica gastar más dinero,
dilatar los tiempos de desarrollo y perder mucho trabajo
y aunque ese trabajo no se pierda es muy probable que
la persona que lo tuvo que detener tenga problemas para
continuarlo.
En la era digital, los bugs informáticos pueden llegar a
afectar nuestras vidas, la economía de una nación e
incluso el buen funcionamiento de la sociedad, en
general. A medida que Internet vaya invadiendo poco a
poco todos los aspectos de nuestro entorno, la
importancia de identificar y prevenir los bugs informáticos
crecerá de forma exponencial.
A continuación te presento 5 bugs informáticos que
marcaron la historia.
BUGS informáticos que marcaron la historia
1 – La leyenda del primer bug informático
Tras localizar una polilla en el Harvard Mark II el 9 de septiembre de 1947 a
las 15:45, Grace Murray Hopper registró el primer “bug” informático en su
libreta con la frase “First actual case of bug being found”.
Para muchos, Grace Hopper fue la persona que acuñó este término para
referirse a errores en el código de un programa informático que provocan
resultados no deseados; si bien, la palabra “bug” ya se usaba antes de 1947 en
ingeniería.
Cuando los ‘bugs’ informáticos eran insectos
Este fue el primer bug real de la historia de la informática
2 – El Efecto 2000
Los desarrolladores de software del siglo pasado nunca habrían pensado que
sus creaciones sobrevivirían hasta el nuevo milenio.
Todo bien hasta que nos acercamos al 31 de diciembre de 1999: nos dimos
cuenta que, por esa decisión, los sistemas informáticos pasarían en año
nuevo al 1 de enero de 1900 en lugar de 2000 y, a raíz de esto, se desatarían
grandes catástrofes y sería el fin de la humanidad.
Este bug fue real. Se gastaron miles de millones de dólares para actualizar
sistemas informáticos en todo el planeta. Además, se registraron algunos
incidentes, aunque no muy críticos.
Problema del año 2000
¿Te acuerdas? - El efecto 2000, ¿Te acuerdas? - RTVE.es A la Carta
3 – El misil de Dhahran
En febrero 1991 (1ª Guerra del Golfo), un misil iraquí alcanzó la base de
Dhahran en Arabia Saudí, matando a 28 soldados estadounidenses.
Tras una investigación, se determinó que el sistema de protección
antibalístico de la base falló por consecuencia de un bug informático: la
batería de misiles Patriot, cuyo papel es detectar e interceptar los misiles
enemigos para “chocar” con ellos en el aire, llevaba 100 horas en
funcionamiento. Cada hora que pasaba, el software que controlaba dicha
batería redondeaba los valores del reloj digital de una forma mínima. Sin
embargo, este error mínimo hizo que se acumulara un retraso de ⅓ de
segundo al cabo de dichas 100 horas.
El radar identificó en una primera instancia un objeto en el cielo pero no lo
pudo confirmar debido al error, por lo que el misil antibalístico no se disparó.
4 – El caso del Mars Climate Orbiter
La sonda Mars Climate Orbiter fue lanzada en el año 1998 con el objetivo de
estudiar el clima en Marte, si bien, esta nunca logró cumplir su misión.
Tras varios meses viajando por el espacio, la sonda se destruyó por causa de
un error de navegación: los equipos que controlaban la sonda desde la Tierra
usaba parámetros en Unidades Imperiales mientras que los cálculos se
realizaban con el Sistema Métrico Decimal. Estos errores de cálculo fueron
impactando la trayectoria a lo largo de los días y, finalmente, la sonda quedó
destruída al pasar por la atmósfera de Marte.
La "Mars Climate" se estrelló en Marte porque la NASA no tradujo kilómetros
a millas
5 – Ariane 5
El 4 de junio de 1996 y a los 30 segundos de despegar, el cohete Ariane 5
empezó a desintegrarse poco a poco, hasta su explosión. Tras realizar
simulaciones con un sistema de vuelo y condiciones similares, se descubrió
que en el software del cohete), una variable de 64 bits con decimales se
transformaba en una variable de 16 bits sin decimales.
Estas variables, al ocupar diferente tamaño en la memoria, desencadenaron
una serie de bugs que afectaron a todos los ordenadores de vuelo y que
paralizaron todo el hardware de la nave, activando su secuencia de
autodestrucción.
El error de software que convirtió un lanzamiento espacial en carísimos
fuegos artificiales
Fuentes de información utilizadas
● 4 formas de resolver bugs
● Por qué a las actualizaciones se les llama “parches”
● 5 bugs informáticos que marcaron la historia
● Top 8 de errores informáticos más costosos de la historia
● 8 bugs famosos de la historia de la tecnología
● Los peores "'bugs" (errores informáticos) de la Historia
● Bugs en el software I: Accidentes y pérdidas graves por fallos en el
software
GRACIAS POR VUESTRA ATENCIÓN
NOS VEMOS EN PRÓXIMAS ACTIVIDADES

More Related Content

What's hot

Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedioGuillermo
 
Identificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigoIdentificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigoAbrirllave
 
Sistemas operativos memoria virtual
Sistemas operativos memoria virtualSistemas operativos memoria virtual
Sistemas operativos memoria virtualandreapab
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesosayreonmx
 
Informe de arreglos en PseInt
Informe de arreglos en PseInt Informe de arreglos en PseInt
Informe de arreglos en PseInt Chad Bridge
 
PRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓNPRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓNadark
 
Tipos de Antivirus
Tipos de AntivirusTipos de Antivirus
Tipos de AntivirusIsisAlcivar
 
Diapositivas virus y antivirus
Diapositivas virus y antivirusDiapositivas virus y antivirus
Diapositivas virus y antivirusandreitamrs
 
Lenguaje maquina
Lenguaje maquinaLenguaje maquina
Lenguaje maquinaErnes 28
 
Evolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programaciónEvolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programaciónjuanbryanc
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Javaquesada_diego
 

What's hot (20)

Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedio
 
Identificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigoIdentificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigo
 
Componentes de sgbd
Componentes de sgbdComponentes de sgbd
Componentes de sgbd
 
Sistemas operativos memoria virtual
Sistemas operativos memoria virtualSistemas operativos memoria virtual
Sistemas operativos memoria virtual
 
Visual Basic. Net
Visual Basic. NetVisual Basic. Net
Visual Basic. Net
 
1.4 ensambladores y compiladores
1.4 ensambladores y compiladores1.4 ensambladores y compiladores
1.4 ensambladores y compiladores
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesos
 
Informe de arreglos en PseInt
Informe de arreglos en PseInt Informe de arreglos en PseInt
Informe de arreglos en PseInt
 
PRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓNPRUEBAS Y DEPURACIÓN
PRUEBAS Y DEPURACIÓN
 
Tipos de Antivirus
Tipos de AntivirusTipos de Antivirus
Tipos de Antivirus
 
AdquisicióN, Procesamiento Y Almacenamiento De Datos
AdquisicióN, Procesamiento Y Almacenamiento De DatosAdquisicióN, Procesamiento Y Almacenamiento De Datos
AdquisicióN, Procesamiento Y Almacenamiento De Datos
 
Diapositivas pseudocodigo
Diapositivas pseudocodigoDiapositivas pseudocodigo
Diapositivas pseudocodigo
 
Diapositivas virus y antivirus
Diapositivas virus y antivirusDiapositivas virus y antivirus
Diapositivas virus y antivirus
 
Lenguaje maquina
Lenguaje maquinaLenguaje maquina
Lenguaje maquina
 
Evolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programaciónEvolución y clasificación de los lenguajes de programación
Evolución y clasificación de los lenguajes de programación
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Java
 
Relación del DBA con otras áreas.
Relación del DBA con otras áreas.Relación del DBA con otras áreas.
Relación del DBA con otras áreas.
 
ESTRUCTURA DE UN PROGRAMA
ESTRUCTURA DE UN PROGRAMA ESTRUCTURA DE UN PROGRAMA
ESTRUCTURA DE UN PROGRAMA
 
Evolucion sistemas operativos
Evolucion sistemas operativos Evolucion sistemas operativos
Evolucion sistemas operativos
 
CUESTIONARIO SOBRE PROGRAMACIÓN
CUESTIONARIO SOBRE PROGRAMACIÓN CUESTIONARIO SOBRE PROGRAMACIÓN
CUESTIONARIO SOBRE PROGRAMACIÓN
 

Similar to Bugs en Informática

Similar to Bugs en Informática (20)

Actividad de sead - bugs
Actividad de sead - bugsActividad de sead - bugs
Actividad de sead - bugs
 
Bugs en informatica
Bugs en informaticaBugs en informatica
Bugs en informatica
 
Los 5 "bugs" más relevantes en la historia de la informática
Los 5 "bugs" más relevantes en la historia de la informáticaLos 5 "bugs" más relevantes en la historia de la informática
Los 5 "bugs" más relevantes en la historia de la informática
 
Bugs-en-informática
Bugs-en-informáticaBugs-en-informática
Bugs-en-informática
 
Bugs en los programas
Bugs en los programasBugs en los programas
Bugs en los programas
 
1 intro
1 intro1 intro
1 intro
 
1 intro (caso de uso)
1 intro (caso de uso)1 intro (caso de uso)
1 intro (caso de uso)
 
Leyes de murphy y moore
Leyes de murphy y mooreLeyes de murphy y moore
Leyes de murphy y moore
 
Separata de metodologia desarrollo software
Separata de metodologia desarrollo softwareSeparata de metodologia desarrollo software
Separata de metodologia desarrollo software
 
Bolanos marco tarea1
Bolanos marco tarea1Bolanos marco tarea1
Bolanos marco tarea1
 
Fallas en el sw
Fallas en el swFallas en el sw
Fallas en el sw
 
Fallas en el sw
Fallas en el swFallas en el sw
Fallas en el sw
 
que es programar
 que es programar que es programar
que es programar
 
ARIANE 5
ARIANE 5ARIANE 5
ARIANE 5
 
Virus informático-tapilula
Virus informático-tapilulaVirus informático-tapilula
Virus informático-tapilula
 
colaboarativo final Uno 203091_42
colaboarativo final Uno 203091_42colaboarativo final Uno 203091_42
colaboarativo final Uno 203091_42
 
Desastres tecnológicos informáticos
Desastres tecnológicos informáticosDesastres tecnológicos informáticos
Desastres tecnológicos informáticos
 
Ada 3 (dinamita) (1)
Ada 3 (dinamita) (1)Ada 3 (dinamita) (1)
Ada 3 (dinamita) (1)
 
Introducción a la Programación con Java
Introducción a la Programación con JavaIntroducción a la Programación con Java
Introducción a la Programación con Java
 
manual de informatica
manual de informaticamanual de informatica
manual de informatica
 

Bugs en Informática

  • 3. Un error de software, error o simplemente fallo (en inglés bug) es un problema en un programa de computador o sistema de software que desencadena un resultado indeseado.
  • 4. ¿Cómo se puede resolver un BUG?
  • 5. Los bugs son el peor enemigo de cualquier programador y aunque existen muchos controles para prevenirlos muchas veces los problemas salen a la luz en el peor momento, justo cuando todo parece ir genial. Por eso siempre es importante manejar versiones y respaldos de datos lo que ayudan a resolver los problemas. Para solucionar estos problemas debemos tener en cuenta las siguientes opciones.
  • 6. Opción de Impacto mínimo. Cuando hacemos un cambio en la aplicación que afecta de forma negativa a los usuarios la forma más simple de resolverlo es hacer un Rollback en el servidor para evitar que ésto continúe afectando a los usuarios y minimizar el efecto para los nuevos usuarios. Ésto requiere que el servidor esté preparado para poder hacer un deploy limpio y echar para atrás los cambios, por eso antes debemos planificar muy bien el entorno en el que trabajamos para no tener problemas.
  • 7. Opción de Exploración profunda. Resolver un bug no es tan fácil como suena y mucho menos cuando el problema afecta a la capa de datos. Generalmente, cuando se encuentra el bug debemos reunir al equipo y planificar qué vamos a hacer para recuperar los datos. Tener respaldos continuos es muy importante para evitar catástrofes, puede que en tablas que se muevan mucho no sean muy útiles pero con suerte y mucha planificación podemos sacar el mayor provecho posible.
  • 8. Opción de Esfuerzo urgente. Puede que el bug afecte directamente al producto y tenga que ser solucionado de forma inmediata. Si tenemos suerte el problema no necesitará a todo el equipo y podremos solventarlo sin retrasarnos, pero ese no siempre es el caso. Siempre debemos hablar claro al equipo para organizar el trabajo y evitar que los esfuerzos por resolver el bug afecten al resto del trabajo que se hace.
  • 9. Opción Nuclear. Cuando el bug es tan grande que requiere más de la mitad del equipo para resolverlo no nos queda otra opción más que detener todo y dedicar todo el esfuerzo a resolver el problema. Esto retrasará el avance de la aplicación pero no tenemos otra opción si queremos mantenernos activos. Esta es la última opción ya que implica gastar más dinero, dilatar los tiempos de desarrollo y perder mucho trabajo y aunque ese trabajo no se pierda es muy probable que la persona que lo tuvo que detener tenga problemas para continuarlo.
  • 10. En la era digital, los bugs informáticos pueden llegar a afectar nuestras vidas, la economía de una nación e incluso el buen funcionamiento de la sociedad, en general. A medida que Internet vaya invadiendo poco a poco todos los aspectos de nuestro entorno, la importancia de identificar y prevenir los bugs informáticos crecerá de forma exponencial. A continuación te presento 5 bugs informáticos que marcaron la historia. BUGS informáticos que marcaron la historia
  • 11. 1 – La leyenda del primer bug informático Tras localizar una polilla en el Harvard Mark II el 9 de septiembre de 1947 a las 15:45, Grace Murray Hopper registró el primer “bug” informático en su libreta con la frase “First actual case of bug being found”. Para muchos, Grace Hopper fue la persona que acuñó este término para referirse a errores en el código de un programa informático que provocan resultados no deseados; si bien, la palabra “bug” ya se usaba antes de 1947 en ingeniería. Cuando los ‘bugs’ informáticos eran insectos Este fue el primer bug real de la historia de la informática
  • 12.
  • 13. 2 – El Efecto 2000 Los desarrolladores de software del siglo pasado nunca habrían pensado que sus creaciones sobrevivirían hasta el nuevo milenio. Todo bien hasta que nos acercamos al 31 de diciembre de 1999: nos dimos cuenta que, por esa decisión, los sistemas informáticos pasarían en año nuevo al 1 de enero de 1900 en lugar de 2000 y, a raíz de esto, se desatarían grandes catástrofes y sería el fin de la humanidad. Este bug fue real. Se gastaron miles de millones de dólares para actualizar sistemas informáticos en todo el planeta. Además, se registraron algunos incidentes, aunque no muy críticos. Problema del año 2000 ¿Te acuerdas? - El efecto 2000, ¿Te acuerdas? - RTVE.es A la Carta
  • 14.
  • 15. 3 – El misil de Dhahran En febrero 1991 (1ª Guerra del Golfo), un misil iraquí alcanzó la base de Dhahran en Arabia Saudí, matando a 28 soldados estadounidenses. Tras una investigación, se determinó que el sistema de protección antibalístico de la base falló por consecuencia de un bug informático: la batería de misiles Patriot, cuyo papel es detectar e interceptar los misiles enemigos para “chocar” con ellos en el aire, llevaba 100 horas en funcionamiento. Cada hora que pasaba, el software que controlaba dicha batería redondeaba los valores del reloj digital de una forma mínima. Sin embargo, este error mínimo hizo que se acumulara un retraso de ⅓ de segundo al cabo de dichas 100 horas. El radar identificó en una primera instancia un objeto en el cielo pero no lo pudo confirmar debido al error, por lo que el misil antibalístico no se disparó.
  • 16.
  • 17. 4 – El caso del Mars Climate Orbiter La sonda Mars Climate Orbiter fue lanzada en el año 1998 con el objetivo de estudiar el clima en Marte, si bien, esta nunca logró cumplir su misión. Tras varios meses viajando por el espacio, la sonda se destruyó por causa de un error de navegación: los equipos que controlaban la sonda desde la Tierra usaba parámetros en Unidades Imperiales mientras que los cálculos se realizaban con el Sistema Métrico Decimal. Estos errores de cálculo fueron impactando la trayectoria a lo largo de los días y, finalmente, la sonda quedó destruída al pasar por la atmósfera de Marte. La "Mars Climate" se estrelló en Marte porque la NASA no tradujo kilómetros a millas
  • 18.
  • 19. 5 – Ariane 5 El 4 de junio de 1996 y a los 30 segundos de despegar, el cohete Ariane 5 empezó a desintegrarse poco a poco, hasta su explosión. Tras realizar simulaciones con un sistema de vuelo y condiciones similares, se descubrió que en el software del cohete), una variable de 64 bits con decimales se transformaba en una variable de 16 bits sin decimales. Estas variables, al ocupar diferente tamaño en la memoria, desencadenaron una serie de bugs que afectaron a todos los ordenadores de vuelo y que paralizaron todo el hardware de la nave, activando su secuencia de autodestrucción. El error de software que convirtió un lanzamiento espacial en carísimos fuegos artificiales
  • 20.
  • 21. Fuentes de información utilizadas ● 4 formas de resolver bugs ● Por qué a las actualizaciones se les llama “parches” ● 5 bugs informáticos que marcaron la historia ● Top 8 de errores informáticos más costosos de la historia ● 8 bugs famosos de la historia de la tecnología ● Los peores "'bugs" (errores informáticos) de la Historia ● Bugs en el software I: Accidentes y pérdidas graves por fallos en el software
  • 22. GRACIAS POR VUESTRA ATENCIÓN NOS VEMOS EN PRÓXIMAS ACTIVIDADES