Universidad Mariano Gálvez de Guatemala
Facultad de Ingeniería en Sistemas de Información y Ciencias de la Computación
CURSO: ETICA Y VALORES
Caso No.4
El caso de Occidental Ingenieria
Wayne Davidson es un ingeniero de software en la división aeroespacial de Occidental Engineering,
una gran empresa de ingeniería. Durante los últimos dos años ha estado trabajando como ingeniero de
pruebas en un proyecto para construir un prototipo de un sistema de control de tráfico aéreo de nueva
generación, denominado Safe Skies, y que está financiado por la Agencia Federal de Aviación (FAA).
Este proyecto es muy importante para la empresa porque debido a los continuos recortes en gastos de
defensa, la división aeroespacial de Occidental Engineering ha estado perdiendo dinero y contratos
durante los últimos años. El proyecto Safe Skies no solo supone un buen negocio para la compañía,
sino que además podría proporcionar más contratos y de mayor tamaño si tiene éxito.
Consciente de su importancia estratégica, la empresa había hecho una oferta muy agresiva para ganar
el contrato original. De hecho, su oferta fue por un precio ligeramente inferior a lo que realmente se
necesitaba. Esa era la única manera con la que habían logrado ganar al resto de competidores, que
también trataban de conseguir desesperadamente ese contrato. Pero por otro lado, debido a la
situación financiera un tanto inestable de la empresa tampoco estaban dispuestos a tener pérdidas.
Por ello, el presupuesto y los recursos internos asignados al proyecto habían sido muy escasos. A pesar
de todo, las personas que han trabajado en el proyecto habían hecho un esfuerzo heroico durante
estos dos años, trabajando catorce horas diarias durante seis días a la semana para cumplir con los
plazos previstos. Entre otras cosas, se jugaban sus propios puestos de trabajo si el proyecto fracasaba.
A Wayne le acaban de pasar una primera versión del prototipo. Tras realizar muchas simulaciones ha
visto que todo funciona bien, salvo por un pequeño problema. Cuando hay demasiados aviones en el
sistema, puede “perderse” alguno de ellos. Ese avión simplemente desaparece de la pantalla, no hay
ningún rastro de él en ningún lugar, y a partir de ese momento se ignora en todos los procesos que
comprueban las posibles colisiones y en el resto de las pruebas de seguridad. Después de analizarlo
con los diseñadores, se descubre que el problema se debe a un error muy sutil en la gestión de
memoria. No es complicado de solucionar, pero el rediseño, la codificación y las pruebas pueden
representar al menos un mes de trabajo.
Wayne se reúne con su jefa y directora del proyecto, Deborah Shepherd, para discutir las implicaciones
del problema. Ella le dice que retrasar la entrega un mes es imposible. El contrato requiere que la
empresa entregue una versión totalmente certificada dentro de tres días. Sucede además que el
gobierno acaba de aprobar una nueva política muy estricta sobre los incumplimientos de plazos,
debido a los enormes retrasos y sobrecostes que se sucedían continuamente y que habían suscitado las
críticas de la prensa y de la oposición. Básicamente, estaban buscando una primera cabeza de turco
para que sirviera de ejemplo al resto de subcontratistas. Si no entregaban a tiempo no solo se
arriesgaban a una multa enorme, sino que también dejarían de poder optar al contrato para construir
el sistema completo aunque hubieran desarrollado el prototipo. Esto tendría un efecto devastador en
la división aeroespacial, incluyendo la posible pérdida de cientos de puestos de trabajo.
A Wayne le proponen la posibilidad de que se desarrolle un parche rápido antes de entregar el
software, pero Wayne se niega rotundamente a entregar cualquier programa que no haya sido
probado a fondo. El problema es que si se cambia ahora cualquier parte de la aplicación puede que se
introduzcan nuevos errores mucho peores que el que tienen, e incluso que deje de funcionar alguna
Universidad Mariano Gálvez de Guatemala
Facultad de Ingeniería en Sistemas de Información y Ciencias de la Computación
parte del código.
“Entonces tendremos que entregar el software tal y como está”, dice Deborah. “No puedo poner en
peligro este proyecto ni los cientos de puestos de trabajo que dependen de él por no entregar esta
aplicación a tiempo.”
“¡No podemos hacer eso!” exclama Wayne. “Eso es como tratar de entregar un coche al que sabemos
que no le funcionan bien los frenos.”
“No te preocupes”, lo tranquiliza Deborah. “Tenemos contactos en la FAA, y conocemos sus planes de
pruebas. Sabemos que van a hacer una gran cantidad de simulaciones para asegurar que el software
funciona bien y que implementa toda la funcionalidad que se describe en las especificaciones. Una vez
comprueben que las simulaciones no detectan problemas, entonces comenzarán las pruebas en vivo.
Pero lo harán sólo en un aeropuerto pequeño y con un sistema de backup activo en todo momento. No
es posible que el problema se reproduzca, porque el número de aviones volando será muy pequeño. Y
una vez terminen estas pruebas iniciales nos pedirán algunas modificaciones. E incluso si no lo hacen,
siempre podemos darles una versión actualizada del programa, en donde el fallo ya esté corregido.
Ellos nunca detectarán el problema. Y si lo hicieran, podemos decirles que era debido a una ocurrencia
aleatoria que no necesariamente tenía que aparecer en nuestras pruebas, y por eso no lo detectamos.
Lo verdaderamente importante es que nadie estará en ningún momento en peligro.”
La respuesta de Wayne fue clara: “Tal vez no van a encontrar el error, pero yo sé que está ahí. Mentiría
si dijera que el sistema pasó todas las pruebas necesarias. No puedo hacer eso. De todos modos, sería
ilegal y poco profesional.”
“Se puede certificar que es seguro, ya que realmente lo es, en la forma en la que van a utilizarlo.”
Al final Wayne firmó su conformidad con las pruebas y la empresa entregó el prototipo. La FAA lo
integró y pasó todas las pruebas preliminares, incluyendo las pruebas en vivo en un pequeño
aeropuerto en el Medio Oeste de EEUU. Como resultado de estas pruebas, la FAA solicitó algunos
cambios en la interfaz de usuario. Cuando Occidental Engineering entregó esa nueva versión con la
interfaz modificada, también incluyó una solución al problema de la aeronave que de pronto
desaparecía. Nadie fuera del grupo de Deborah se enteró nunca del problema. De hecho el prototipo
fue un rotundo éxito y Occidental Engineering consiguió tanto el proyecto para desarrollar el sistema
final como nuevos contratos de software de control del tráfico aéreo para la división aeroespacial. Esto
hizo que la división floreciera y que no solo no se perdieran centenares de puestos de trabajo sino que
además se crearan muchos más.
Wayne Davidson, sin embargo, solicitó la jubilación anticipada tan pronto como el prototipo fue
aceptado por la FAA. Decidió escribir un libro sobre pruebas de software, y pensó que sería
fundamental incluir un capítulo sobre ética. Al final, no terminó de escribir el libro.
Preguntas
1. ¿Qué opinas sobre la decisión de Wayne? ¿Fue la correcta? ¿Fue ética?
R// Considero que a pesar de las multas que se generarían al momento de solicitar una prórroga
de 1 mes aproximadamente, lo correcto era retrasar la entrega del prototipo de la aplicación
para corregir el fallo. Para justificar el tiempo adicional solicitado, se debería de presentar las
consecuencias de probarlo en un ambiente real con muchos más aviones de los que la aplicación
era capaz de controlar, las pérdidas económicas que conllevaría un accidente de esa índole, las
vidas que cobraría un accidente de tal magnitud. Pienso que no fue una decisión correcta, ni
mucho menos ética, muchas veces se pone el aspecto económico por sobre la vida de personas
Universidad Mariano Gálvez de Guatemala
Facultad de Ingeniería en Sistemas de Información y Ciencias de la Computación
inocentes, la ambición por tener “más” de los altos ejecutivos ejerce presión sobre las decisiones
que son éticas ante situaciones que toman altos riesgos, comprometiendo incluso vidas
humanas.
2. ¿Qué opinas sobre la decisión de Deborah? ¿Fue la corecta? ¿Fue ética?
R// A mi punto de vista, no fue una decisión correcta. No es ético lanzar un prototipo sabiendo
que tiene una falla que puede pasar desapercibida, pero que puede causar consecuencias
catastróficas, arriesgando la vida de una gran cantidad de personas. Lo correcto a mi parecer era
contraer las multas establecidas por el gobierno por el retraso, sin embargo, justificar
detalladamente las pérdidas que podrían causar una simple falla dentro del sistema, puesto en
funcionamiento en un ambiente real con alta demanda de vuelos. Es cierto, se corre el riesgo de
ser la primera persona que pierda su puesto, sin contar el resto de colaboradores que
participaron en el desarrollo, pero quedaría con la conciencia tranquila de no haber lanzado un
prototipo que en cualquier momento llegue a fallar.
3. ¿Qué hubieras hecho tú en el caso de ser Wayne?
R// Es un tema difícil, ya que muchas veces no sabemos las responsabilidades que Wayne debe
de cumplir no solo en el ambiente laboral, también en el ambiente personal, y no cualquiera
pondría en juego su puesto de trabajo por un tema de tal magnitud. En mi caso, creo que
hubiera aceptado las consecuencias (multas) por el retraso del proyecto, a tal punto de perder el
puesto de trabajo, sin embargo, me sentiré tranquilo de no formar parte de un grupo de trabajo
que entregó un prototipo con fallas “simples” o “inadvertidas” que, a sabiendas de todos,
podrían causar accidentes catastróficos.
4. ¿Y si hubieras estado en la situación de Deborah?
R// En el caso de Deborah, es un poco más complicado, ya que ella debería de solicitar la
prórroga ante los encargados, sería una de las responsables de la falta de presión sobre el equipo
de trabajo para poder entregar el prototipo. En mi caso, sigo inclinándome a solicitar más tiempo
para corregir la falla, demostrar con valores numéricos las pérdidas que incurriría un accidente
aéreo y ni hablar de las vidas que correrían peligro. Demostrando dichos datos, considero que
sería suficiente para justificar la solicitud, aplicando la multa correspondiente por el retraso del
proyecto.
Más preguntas
(No pases a esta parte hasta que no hayas terminado de contestar las preguntas anteriores)
Imagina que si en vez de una empresa de aeronáutica estuviéramos hablando de un hospital, en donde
Wayne es un médico que ha de certificar un tratamiento que sabe puede fallar y puede ocasionar
muertes entre los pacientes que lo utilicen.
1. ¿Te importa tanto la situación económica del hospital en este caso, como te preocupaba la de
Occidental Engineering?
R// Todo ser humano tiene derecho a la vida, un médico debe de luchar a toda costa para
conservar la vida de un ser humano, por tal razón, creo que no se puede certificar un
tratamiento que causará efectos secundarios en las personas e incluso, lleguen a provocar la
muerte de alguien. Al momento de realizar investigaciones, se sabrá el nombre del
responsable que prescribió el tratamiento, indagando el porqué de tales indicaciones,
causando un sin fin de sospechas. No se le puede poner precio a una vida humana, a mi
parecer, no se debe de poner el aspecto económico como limitante para proteger una vida,
más bien, buscar alternativas que se adapten a las necesidades y a los diferentes recursos a
los que se disponen.
2. ¿Cuál es la diferencia?
R// A la larga, no hay mucha diferencia, ya que siempre concluimos en que se expone la vida de
Universidad Mariano Gálvez de Guatemala
Facultad de Ingeniería en Sistemas de Información y Ciencias de la Computación
personas inocentes. Como profesionales debemos de actuar siempre de una manera “ética”,
correcta, reflexiva, ya que al momento de entregar un proyecto, independientemente del
ambiente laboral en donde nos desenvolvamos, demostramos nuestra personalidad, nuestra
ética, nuestros valores, el cumplimiento y la responsabilidad con la que actuamos. Los clientes
serán determinantes al momento de evaluar el activo o servicio que nosotros brindamos.
Otro final alternativo
Al final Wayne firmó su conformidad con las pruebas y la empresa entregó el prototipo. La FAA lo
integró y pasó todas las pruebas preliminares, incluyendo las pruebas en vivo en un pequeño
aeropuerto en el Medio Oeste de EEUU. Viendo que el prototipo funcionaba a la perfección, decidieron
probarlo en un aeropuerto comercial un poco más grande, sin comentarlo con Occidental Engineering.
Al aumentar el número de aviones, el problema se reprodujo y uno de los aviones quedó fuera de
control de la torre, por lo que terminó colisionando con otro al que le dieron la orden de despegar
pensando que la pista estaba despejada. Las consecuencias fueron catastróficas, con más de 150
personas muertas y unas pérdidas económicas astronómicas. Occidental Engineering se arruinó y
Wayne no superó jamás la tragedia.
Preguntas
1. ¿Cambia este segundo final tus respuestas anteriores?
R// No cambiarían las respuestas, ya que sigo sosteniendo que por esta clase de consecuencias
es que no formaría parte de un equipo que entregó un prototipo con una falla. Pudo suceder
justo este escenario, muertes de personas, las consecuencias que el o los responsables tendrán
que afrontar serán complicadas, ya que existen documentos en donde se certificó que el
prototipo no tenga ni una clase de falla, que todo funcionara correctamente en ambientes que
requieran alta demanda de vuelos simultáneos. Se puede evitar todo esto, si actuamos de
manera ética, afrontando las consecuencias de adquirir una multa por el retraso en la entrega,
sin embargo, certificando al 100% que no posea fallas de ningún tipo.
[Fuente: de la primera parte, [Link]
Autor: Michael McFarland, S. J. La segunda parte extraida de:
[Link]