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

Introduccion de excel
Introduccion de excelIntroduccion de excel
Introduccion de excelAngelo Dussan
 
Introduccion a access
Introduccion a accessIntroduccion a access
Introduccion a accessJuan Graxiola
 
Diapositiva de funciones en excel
Diapositiva de funciones en excelDiapositiva de funciones en excel
Diapositiva de funciones en exceladrianaruilova
 
Java script(diapositivas)
Java script(diapositivas) Java script(diapositivas)
Java script(diapositivas) Roberto Mejia
 
Presentacion tipos de datos access
Presentacion tipos de datos accessPresentacion tipos de datos access
Presentacion tipos de datos accessAleeu
 
Base de datos access
Base de datos accessBase de datos access
Base de datos accessDavidPosadas5
 
Diseño de Algoritmos
Diseño de AlgoritmosDiseño de Algoritmos
Diseño de AlgoritmosLuisDiaz863
 
Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)
Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)
Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)Oscar Josué Uh Pérez
 
Sistemas Operativos - Semáforos
Sistemas Operativos - SemáforosSistemas Operativos - Semáforos
Sistemas Operativos - SemáforosJuan Rojas
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaAngel Vázquez Patiño
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 

What's hot (20)

Introduccion de excel
Introduccion de excelIntroduccion de excel
Introduccion de excel
 
Introduccion a access
Introduccion a accessIntroduccion a access
Introduccion a access
 
Excel
ExcelExcel
Excel
 
Manual de sistema
Manual de sistemaManual de sistema
Manual de sistema
 
Diapositiva de funciones en excel
Diapositiva de funciones en excelDiapositiva de funciones en excel
Diapositiva de funciones en excel
 
Java script(diapositivas)
Java script(diapositivas) Java script(diapositivas)
Java script(diapositivas)
 
Memoria RAM
Memoria RAMMemoria RAM
Memoria RAM
 
Presentacion tipos de datos access
Presentacion tipos de datos accessPresentacion tipos de datos access
Presentacion tipos de datos access
 
Ensayo de exel
Ensayo de exelEnsayo de exel
Ensayo de exel
 
Base de datos access
Base de datos accessBase de datos access
Base de datos access
 
Diseño de Algoritmos
Diseño de AlgoritmosDiseño de Algoritmos
Diseño de Algoritmos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)
Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)
Funciones de cadenas - Javascript para principiantes (fácil, rápido y efectivo)
 
Clase math.java
Clase math.javaClase math.java
Clase math.java
 
Sistemas Operativos - Semáforos
Sistemas Operativos - SemáforosSistemas Operativos - Semáforos
Sistemas Operativos - Semáforos
 
Entity framework
Entity frameworkEntity framework
Entity framework
 
Excel FORMATOS CONDICIONALES
Excel FORMATOS CONDICIONALESExcel FORMATOS CONDICIONALES
Excel FORMATOS CONDICIONALES
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 

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