Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

Un mito absurdo de la ingeniería de software

Leo un artículo en el que se habla que un programa informático, escrito en 1958 se sigue usando. La razón es que sustituirlo sería demasiado...

Leo un artículo en el que se habla que un programa informático, escrito en 1958 se sigue usando. La razón es que sustituirlo sería demasiado caro. De acuerdo con el texto en cuestión, el Departamento de la Defensa de los Estados Unidos desarrolló en el año mencionado una aplicación encargada de gestionar los contratos y servicios de la administración. Ese programa fue desarrollado en COBOL, el cual es un lenguaje de programación orientado a los negocios que incluso se sigue usando hoy en día (aunque muchos programadores jamás siquiera hallan visto jamás código escrito en COBOL).

De hecho, de acuerdo con la Wikipedia, COBOL 2014 es el último estándar del lenguaje, el cual permite gestión dinámica de la memoria. Hay además una versión llamada IBM Enterprise COBOL que se usa regularmente y que fue lanzada en 1991. Se usa en sistemas mainframe bajo z/OS.

Ahora bien, para sistemas operativos como Windows y Linux hay varios compiladores y entornos de programación como MicroFocus Visual Object COBOL For Windows 95 (el IDE más antiguo permitiendo crear GUI-s, soporta WinAPI); MicroFocus NetExpress (el IDE ya moderno permitiendo interactuar con Java, EJB, C. También OO COBOL (orientado a objetos)); MicroFocus Visual COBOL para Visual Studio y Eclipse (el IDE actual, con WebServices); Fujitsu COBOL; Fujitsu NetCOBOL for Windows, GNU Cobol (antiguo Open COBOL, que es de código abierto); Raincode COBOL y COBOL-IT, entre otros.

Pues bien, según el artículo de marras, ese programa es tan complejo y crucial que sigue funcionando hoy en día de la misma forma que hace 60 años. Se supone que sustituirlo sería demasiado costoso. El programa de marras se llama “Mechanization of Contract Administration Services” (MOCAS) se escribió dos años antes de que COBOL estuviese aprobado como lenguaje, inclusive. En un principio el programa requería de tarjetas perforadas porque no había terminales como las que ahora existen.

Sin embargo, con los años el sistema se adaptó a los monitores de fósforo verde “óptico”, los cuales pueden verse en terminales de las aerolíneas en los aeropuertos, por ejemplo. Hoy MOCAS se ha hecho más utilizable pues se ha conectado a una aplicación web. De acuerdo con lo que dice el artículo, se gestionan 1.3 billones (en español) de dólares y 340 mil contratos. El servidor en el que se ejecuta actualmente es un servidor IBM 2098 E-10 de 2008 con 8 GB de RAM de proceso es de 398 MIPS (millions of instructions per second).

Pero pensemos, ¿puede ser cierta semejante historia? Suena fascinante y mediáticamente muy atractiva una narración al respecto, pero pensemos: ¿Podía un sistema que se escribió en 1958, para una computadora que difícilmente podría tener 1 Megabyte de memoria (y créanme, estoy exagerando) ser tan complejo y manejar esa cantidad de datos? Vamos, que ni siquiera las cintas magnéticas, que era uno de los dispositivos más usados podían siquiera guardar cantidades de datos que hoy nos parecen ridículas (20 Megabytes).

Pero supongamos que el programa se “actualizó” para que corriera en una máquina con 8GB, cuestión que para los estándares actuales es una computadora pequeña en el mejor de los casos. Pero además, si tomamos en cuenta que es un programa del gobierno estadounidense, que gasta además muchos miles de millones para mandar naves al espacio profundo, ¿no podría invertir en una computadora muy rápida para este crítico programa? ¿Cuánto es costoso en términos de gobierno? ¿No quiere Trump poner un muro que costaría 20 mil millones de dólares? ¿Podría costar un programa de computadora, por más crítico que sea, semejante cantidad?

Por otra parte, pensemos si de verdad sería muy costoso sustituir este programa. Facebook tiene 1000 millones de usuarios y maneja no sé cuantos terabytes por mes. En esencia la red social es un manejador de una base de datos en donde hay un número enorme de interrelaciones entre los registros.

Youtube gestiona miles de millones de videos por día ¿Y alguien dice que sería muy costoso reemplazar un sistema que maneja unos 350 mil contratos? ¿Es que no existe grupo de programadores que pudiesen escribir en uno de los tantos lenguajes modernos una versión que sustituyera una viejísima versión de 1958? Vamos, todo el artículo cae en una fantasía digna de estos sitios de noticias falsas como El Deforma, pero en este caso no lo es, es un artículo serio aparentemente. En el fondo artículos así desinforman y mitifican el cómputo. Ridículo asunto, a todo esto.

Comentarios