Traducción

Twitter

Trafico @ Live

Acerca de Only4Gurus

Only4Gurus, es una sección que he decidido habilitar. El objetivo es juntar a personas con mucho potencial que he conocido en todo este tiempo, y que tendrán sin lugar a duda, cosas que aportar y compartir. El nombre, ONLY4GURUS, es en memoria de un gran sitio .NET ya extinto que se llamaba Only4gurus.com, y que llevaba mi buen amigo, Ramón Gonzales Moeria. Esta es su etapa BETA, esperamos como resulta.

Willy Marroquin

Actividad @ Facebook

  • RSS
  • Add To My MSN
  • Add To Windows Live
  • Add To My Yahoo
  • Add To Google

Estadísticas

  • Entradas (3)
  • Comentarios (20)

Software de Contingencia y Responsabilidad Social 

16/11/2010 07:38:00 a.m.

Un sistema de contingencia podría definirse en resumen como un sistema que entra a funcionar cuando el otro falla. Conceptualmente, en Ingeniería de software debería tratarse como una aplicación que suple las necesidades básicas de un software principal, en forma temporal, mientras existe un restablecimiento “definitivo” de las operaciones.

Desde mi punto de vista hay varias cosas que un software de contingencia debe contemplar:

  1. Replicación: la información está disponible en lugares diferentes, en caso de problemas de acceso? El software puede alternar entre distintos repositorios sin interrumpir la operación?
  2. Soporte a la desconexión / sincronización. Si el sistema depende de una conexión para funcionar, dejará de hacerlo si se “corta el cable”?  El sistema puede guardar datos localmente o en un repositorio separado y luego sincronizarse adecuadamente cuando se recupere el acceso central?
  3. Restauración. El tiempo es mínimo entre la pérdida de un repositorio de datos y la restauración de una copia de seguridad del mismo. Es posible que el sistema funcione mientras se realiza esta operación?
  4. Intercambiabilidad. Es fácil alternar entre el sistema principal y el de contingencia? Es un paso automático? Se detiene la operación por el hecho de cambiar al sistema de reserva y viceversa?
  5. Transaccionalidad y operaciones atómicas.  Es posible que el sistema de apoyo maneje adecuadamente los estados de consistencia de la información?
  6. Escalabilidad. El sistema de contingencia puede apoyar al principal en situaciones de alto tráfico de acceso no esperado al sistema principal?
  7. Desacoplamiento. Que tanto depende el software de contingencia del principal? Pueden trabajar completamente independientes?

Los sistemas de navegación y vuelo en aeronaves y naves espaciales comúnmente tienen sistemas de contingencia que se activan en caso de fallos detectados (incluso por el mismo software), que comúnmente obedecen a situaciones excepcionales. Pero que tan “común” es una situación excepcional?

Tomemos el caso de un hospital: comúnmente es necesario obtener y registrar información de un paciente una vez entra, digamos, a la sala de urgencias. Es necesario a veces contar con información como que medicinas está tomando, que alergias puede desarrollar a diferentes compuestos, cirugías serias y/o complicaciones generadas en tiempos recientes, estado general de salud y, desgraciadamente, si está o no dentro de un sistema de salud obligatorio o voluntario.

Qué pasa si toda esta información está disponible en un sistema informático y este falla? Muchos hospitales (no todos) acuden a procedimientos manuales y toma de información en papel mientras se restituye el sistema. Pero debería ser así? No debería el software un sistema de contingencia que también sea software y que permita evitar lo que se trata de evitar inicialmente que es la ejecución de procesos manuales? Son las excusas “es que no hay línea” o “es que no hay sistema” válidas en caso de complicaciones de un paciente? O en casos más graves, de la denegación del servicio?

El software se ha desarrollado para solucionar problemas, pero se debe llegar al punto en que también lo hace con el de la “no disponibilidad”. Es cierto que desarrollar un sistema de contingencia acarrea costos adicionales, pero se debería poder calcular la pérdida, en dinero, en tiempo (o en vidas, que por cierto es mucha), de la no disponibilidad y ponerlo como punto de referencia en el costo de manejar la contingencia.

Una institución bancaria. Puede que no se juegue con la vida de los clientes, pero no hay nada más frustrante ni que acabe más con la imagen que hacer una fila de varias decenas de minutos y escuchar la palabra “no hay línea, no hay dinero”. Si, entiendo de nuevo el costo y la complejidad de un sistema de operación descentralizado u offline de reserva para un “branch” bancario, pero no es el cliente la razón de ser del negocio?

Señor desarrollador, Ingeniero/Arquitecto de software. Es un deber moral incluir en nuestros diseños el “what if”, para manejar casos excepcionales, en pro del usuario (que es nuestra razón de ser). Piense siempre cual es la contingencia y como se puede solucionar sin perjuicio de los intereses del usuario. Su software es confiable como el de un transbordador espacial?

Henry Rosales
Tweet This

re: Software de Contingencia y Responsabilidad Social

16/11/2010 11:18:28 p.m. Henry Rosales Parra

Ariel. El problema de la registraduría y las pasadas elecciones en Colombia tiene tanto de largo como de ancho. Aunque no hubo un discurso técnico real del problema (aduciendo los inconvenientes en la primera vuelta a supuestos ataques de denegación de servicio y otro tipo de asuntos superficiales), lo que se puede apreciar como espectador es lo siguiente: se tomó el concepto de seguridad literalmente y no lo que verdaderamente significa. Suelo decir que la seguridad no existe, sino que es una sensación pasajera de tranquilidad producida por la falta de imaginación. Y contra esto unos hacen más que los otros. Tal vez el problema radicó en confundir “blindar el sistema” con “tener un plan de contingencia” y además de confundir “tener un plan de contingencia” con “Implementar un sistema de contingencia”. Las pruebas siempre se suele olvidar el factor sorpresa y la frase de excusa siempre suele ser “no nos lo esperábamos”. En defensa de EPM he de decir que en la 2da vuelta el trabajo fue mucho mejor. Tal vez por la lección aprendida, tal vez por lo que suele rodear la industria del IT: Algo de suerte.

re: Software de Contingencia y Responsabilidad Social

16/11/2010 12:58:42 p.m. Ariel Urrutia

Henry y tu lectura de lo sucedido en las elecciones pasadas en Colombia cual es ?

Esta entrada no permite comentarios.
Mapa del Sitio | Vista de Impresión | © 2003 - 2014 [ WillyDev .NET ] |