COBOLEconomíaGestión EmpresarialLenguaje de ProgramaciónTecnología

COBOL – Activo por más de 60 Años 

¿Qué es COBOL? 

COBOL, acrónimo de (COmmon Business-Oriented Language); si bien este es el nombre con el que se conoce, también se presentaron distintas opciones para su nombramiento como BUSY (Business System), INFOSYL (Informationn System Language), y COCOSYL (Common Computer Systems Language). COBOL es un lenguaje de programación procedural basado en el idioma inglés, este lenguaje fue creado con el propósito de ser usado en cualquier ordenador con la idea de ser orientado principalmente a negocios, el cual a pesar de su antigüedad sigue siendo usado para la gestión de sistemas comerciales, financieros y administrativos para empresas y gobiernos, ya que ha demostrado ser una pieza fundamental en el mundo de la informática. A pesar de los avances tecnológicos y el surgimiento de nuevos lenguajes de programación. 

Los programadores Donald Cropper, K.C. Krishnan, Grace Hopper y Norman Rothberg con la consola del Univac

Historia de COBOL 

En el desarrollo de este lenguaje participo la comisión CODASYL (Conference on Data Systems Languages), que estaba compuesta por académicos, fabricantes de ordenadores, usuarios avanzados y el Departamento de Defensa de Estados Unidos, quienes dieron a conocer a COBOL en 1959 para poder dar abasto con la necesidad de la automatización de los procesos informáticos en ese periodo, la inspiración para el diseño de COBOL se encuentra en Flow-Matic por parte de la oficial Grace Hopper y el IBM COMTRAN de Bob Bemer. En marzo de 1959, mientras trabajaba como programadora en Burroughs Corporation, Hawes denotó los primeros intentos de simplificar los lenguajes de programación, que hasta entonces se limitaban al complicado código máquina o lenguajes de ensamblador específicos de cada plataforma. De aquí surgió en su mente la idea de crear un nuevo lenguaje de programación versátil, diseñado especialmente para entornos empresariales y capaz de funcionar en diversos ordenadores para realizar tareas como cálculos, gestión de inventario o registro de transacciones financieras. 

Tarjetas perforadas de un programa en COBOL

¿Por qué se sigue usando cobol? 

Se tienen varias razones por las cuales cobol sigue siendo usado en la actualidad, pero las 2 principales comprenden su uso extensivo en distintas plataformas usado en sistemas críticos debido a su estabilidad, eficiencia y seguridad comprobadas, ya que la robustez de COBOL se evidencia en su capacidad para manejar grandes volúmenes de datos y procesos comerciales complejos de manera confiable. En un mundo donde la seguridad de los datos es una preocupación primordial, COBOL ha demostrado ser un lenguaje altamente seguro, con características incorporadas para proteger la integridad y confidencialidad de la información y su segunda razón a destacar para seguir empleando COBOL se debe a que, a lo largo de sus años de uso, ha acumulado miles de millones de líneas de código, lo cual implica que si se desea realizar un cambio de lenguaje este va a tener ciertas complicaciones, mayormente porque se tendría que rehacer todas esas líneas de código y obviamente la reprogramación de estas no es sencilla, sin mencionar el costo que esta operación conllevaría. 

Servidor de IBM y programa "HELLO WORLD" en COBOL

Algunas de las empresas y organizaciones que siguen empleando cobol son: 

Instituciones financieras: COBOL es la base de muchos sistemas críticos de bancos y compañías de seguros. Por ejemplo, JP Morgan Chase y American Express siguen empleando sistemas que se basan en este lenguaje. 

Agencias Gubernamentales: Principalmente aquellas que se encuentran en los Estados Unidos, continúan empleando sistemas basados en COBOL. Por ejemplo, el IRS y la Administración del Seguro Social de los Estados Unidos lo utilizan. 

Empresas de telecomunicaciones: Verizon y AT&T todavía manejan sus facturaciones y servicios de atención al cliente con sistemas basados en COBOL. 

Compañías de transporte: Amtrak y Delta Air Lines también han desarrollado sistemas importantes en este lenguaje. 

¿Porque COBOL sigue dominando en su campo? 

  • COBOL es fácil  

Adquirir conocimientos de COBOL no implica dominar un idioma completamente nuevo, dado que se deriva del idioma inglés. Se compone de elementos estructurales tales como verbos, cláusulas y oraciones. Su legibilidad permite comprender las acciones del programa sin necesidad de asimilar una sintaxis notablemente distinta de la de un idioma ampliamente utilizado. 

  • Es estricto y bien estructurado 

No es de extrañar que la industria financiera dependa de los sistemas COBOL en áreas como banca, seguros, gestión de fondos, sistemas de pensiones, nóminas y tarjetas de crédito. Su capacidad para procesar números lo convierte en la opción ideal para aplicaciones donde incluso el más mínimo error de redondeo puede tener consecuencias significativas. Con una precisión aritmética de 31 dígitos, es la preferencia principal para las aplicaciones financieras. 

  • Es ágil 

Ha experimentado 50 años de mejoras. La mayor parte del código COBOL es procedimental en lugar de orientado a objetos, y su rendimiento “lineal” de la vieja escuela le otorga una ventaja real en su campo de aplicación. 

  • Facilita la continuación del código 

Es auto explicativo. La claridad del código COBOL y su estructura jerárquica rígida hacen que sea fácil de leer y mantener. El lenguaje COBOL requiere menos comentarios en comparación con otros lenguajes, lo que hace que sea sencillo mantener el código de COBOL escrito por otra persona. 

  • Facilidad de traslado a otros lenguajes  

Los programas COBOL pueden ser porteados desde la mayoría de los otros lenguajes de programación, se pueden implementar en servidores de aplicaciones Java, proporcionan una arquitectura lógica de servicios orientados a backend (SOA), permiten la lectura y escritura directa en XML, y son compatibles con cadenas Unicode. Gracias a sus capacidades actualizadas, las aplicaciones COBOL existentes pueden ser mejoradas para funcionar en la web, en dispositivos móviles y en la nube. 

¿Debería COBOL seguir usándose?  

A pesar de haber superado las seis décadas de existencia, COBOL mantiene una presencia significativa en los sistemas cruciales de numerosas empresas y entidades gubernamentales a nivel global. Esta longevidad puede atribuirse en parte a su reputación de estabilidad y confiabilidad, así como a la sustancial inversión efectuada en los sistemas ya establecidos que emplean COBOL. En efecto, este lenguaje aún ostenta un lugar destacado entre los más utilizados en aplicaciones que gestionan operaciones financieras y administrativas de alto volumen. A pesar de la gran variedad de lenguajes de programación que se pueden encontrar en estos días, todavía prevalece la idea de seguir empleando COBOL ya que este lenguaje a pesar de que es antiguo, se sigue usando en la actualidad, a diferencia de otros lenguajes que ya no se están usando, sería inútil preservarlos, ya que pudieron haber presentado deficiencias en algunas de las características que se buscan en lenguajes de programación, como lo puede ser su facilidad de aplicación/uso, seguridad, estabilidad, entre otras. A pesar de ser considerado por algunos como un lenguaje obsoleto, COBOL sigue siendo ampliamente utilizado en sistemas de misión crítica en todo el mundo. Uno de los datos más sorprendentes es que aproximadamente el 70% de las transacciones financieras globales diarias aún dependen de sistemas escritos en COBOL. Esta persistencia se debe en gran parte a la estabilidad y confiabilidad que ofrece COBOL, así como a la enorme inversión en sistemas existentes que utilizan este lenguaje. 

Caracteristicas de COBOL

Algunas ventajas y desventajas de este lenguaje son: 

Ventajas: 

  • COBOL está catalogado como un lenguaje de programación de alto nivel, el cual es usado ampliamente en aplicaciones tanto empresariales como financieras 
  • Cuenta con una gran facilidad de interpretación y legibilidad, lo cual facilita en gran medida el mantenimiento al código a largo plazo 
  • COBOL es capaz de manejar el procesamiento masivo de datos, lo que lo hace adecuado para aquellas aplicaciones que requieren una gestión eficiente de grandes cantidades de información en movimiento. 
  • Cobol cuenta con una gran capacidad de ser compatible con sistemas heredados, de esta forma, permite integrarlo con más facilidad a las distintas aplicaciones que existen actualmente. 

Desventajas:  

  • Como una de las principales desventajas de COBOL se puede “destacar” la escasez de talento humano, esto se debe a, como se mencionó anteriormente es un lenguaje antiguo, por lo cual encontrar programadores con experiencia  
  • COBOL a pesar de ser bastante portable a otras plataformas cuenta con ciertas limitaciones tecnologías en comparación con ciertos lenguajes más modernos. Este puede carecer de algunas o bastantes características avanzadas que se pueden encontrar en otros lenguajes de programación más recientes. 
  • La curva de aprendizaje para el uso de COBOL puede ser empinada para aquellos programadores que no se encuentren tan familiarizados con este lenguaje ya que para poder darle uso y mantenimiento a este lenguaje es necesario dedicarle bastante tiempo y esfuerzo para aprender sus reglas. 
  • A pesar de la intención de IBM de mantener el lenguaje “actualizado” este se ve limitado en comparación con los demás lenguajes que se están usando actualmente 
  • La implementación de cambios en las aplicaciones ya existentes escritas en COBOL puede ser compleja y propensa a errores, además se debe considerar que la reescritura de los códigos lleva bastante tiempo y puede ser bastante costosa. 

La estructura que debe seguir un programa usando cobol, se compone de cuatro divisiones 

La IDENTIFICATION DIVISION, sirve para incluir en ella información sobre el programa, como el nombre, el autor y otros datos relacionados. 

La ENVIROMENT DIVISION, es la que contiene l información del entorno, sobre el ordenador en el que se ha escrito, el ordenador en dónde se va a ejecutar, etc. 

La DATA DIVISION, es una de las divisiones más importante pese a ser opcional, ya que en ella se escriben registros, variables nombres de campos, etc. 

La PROCEDURE DIVISION, es la que contendrá los procedimientos. Necesarios para que el programa funcione con los datos de la DATA DIVISION. 

Cobol tiene bastante rentabilidad aún hoy en día. 

Por brindar sus servicios a empresas que dependen de este lenguaje de programacion y que no pueden sustituirlo por otro más actualizado, los especialistas pueden llegar a recibir un pago mayor a los 100 dólares por hora. El coste es especialmente más alto debido a la complejidad que presenta su sistema

IBM es una de las empresas que ha encontrado una oportunidad en este contexto. Ha creado una serie de programas de capacitación para jóvenes desarrolladores, los cuales, a un periodo de 12 años ha logrado capacitar a más de 180.000 desarrolladores. Donna Dillenberger, quien lidero la iniciativa, afirmaba que “el que un lenguaje tenga 50 años de edad no significa que no sea bueno”.

La adaptación y modernización de COBOL ha sido un proceso constante a lo largo de su extensa trayectoria. A medida que han surgido avances tecnológicos, este lenguaje ha evolucionado para integrarse con nuevas tecnologías, como la internet y las bases de datos relacionales. Se han establecido estándares y se han desarrollado extensiones específicas para facilitar su compatibilidad con los entornos más contemporáneos. Además, se han ideado herramientas y metodologías destinadas a actualizar y mantener los sistemas COBOL ya existentes, permitiendo a las organizaciones seguir aprovechando sus inversiones en software heredado. 

En conclusion, COBOL continúa siendo relevante y ampliamente empleado en el ámbito empresarial gracias a su estabilidad, seguridad y capacidad para gestionar sistemas críticos. A pesar de haber sido en parte superado por lenguajes más modernos, su legado perdura y su función en la informática empresarial sigue siendo crucial.

Créditos:

Autor: William Alexander Alvarez Contreras

Editor: Carlos Ivan Pinzon Romero

Código: UCISG4-1

Universidad: Universidad Central

Fuentes:

(22 ene 2024). COBOL. Wikipedia. Recuperado el 10 de febrero de 2024 de https://es.wikipedia.org/wiki/COBOL 

Claudia Roca. (20 de mayo de 2020). Todo sobre COBOL, el lenguaje de programación que ha llegado para quedarse. The Power Business School. Recuperado el 10 de febrero de 2024 de https://www.thepowermba.com/es/blog/todo-sobre-cobol-el-lenguaje-de-programacion#:~:text=¿Qué%20es%20COBOL%3F,común%20orientado%20a%20las%20empresas 

Javier Pastor. (7 de septiembre de 2019). El legendario lenguaje de programación COBOL acaba de cumplir 60 años, y es probable que cumpla otros 60 más. Xataka. Recuperado el 10 de febrero de 2024 de https://www.xataka.com/historia-tecnologica/legendario-lenguaje-programacion-cobol-acaba-cumplir-60-anos-probable-que-cumpla-otros-60 

Javier Pastor. (23 de agosto de 2023). El lenguaje COBOL se ha convertido en un quebradero de cabeza, pero IBM tiene la solución: un traductor IA. Xataka. Recuperado el 10 de febrero de 2024 de https://www.xataka.com/aplicaciones/lenguaje-cobol-se-ha-convertido-quebradero-cabeza-ibm-tiene-solucion-traductor-ia 

(21 de octubre de 2021). COBOL: El lenguaje de programación de moda (e inventado en 1959). unir La universidad en Internet. Recuperado el 10 de febrero de 2024 de https://unirfp.unir.net/revista/ingenieria-y-tecnologia/cobol/ 

Bárbara Bécares. (12 de diciembre de 2023). El mundo depende del lenguaje COBOL y casi no hay desarrolladores que lo conozcan. IBM decía tener la solución, pero no. Genbeta. Recuperado el 10 de febrero de 2024 https://www.genbeta.com/desarrollo/mundo-depende-lenguaje-cobol-casi-no-hay-desarrolladores-que-conozcan-ibm-decia-tener-solucion-no 

Ismael Gómez. (10 de mayo de 2026). Cobol.¿Que es Cobol?. Medium. Recuperado el 10 de febrero de 2024 https://medium.com/enredando-con-programacion/cobol-que-es-cobol-3f86fa3a4394 

Carolina Valenzuela. (11 de abril de 2023). COBOL-80: ¿Por qué un lenguaje de hace 45 años sigue demandándose?. Computer HOY. Recuperado el 10 de febrero de 2024 https://computerhoy.com/tecnologia/45-anos-lenguaje-longevo-cobol-80-sigue-demandandose-1219580 

Javier Pastor. (30 de abril de 2017). Los lenguajes perdidos: COBOL, Delphi o FORTRAN siguen siendo críticos, pero no hay quien programe en ellos. Xataka. Recuperado el 10 de febrero de 2024 https://www.xataka.com/aplicaciones/los-lenguajes-perdidos-cobol-delphi-o-fortran-siguen-siendo-criticos-pero-no-hay-quien-programe-en-ellos 

Programacion Fácil. IDENTIFICATION DIVISION - Divisiones COBOL. Programacion Fácil. Recuperado el 10 de febrero de 2024 https://www.programacionfacil.org/cursos/cobol/capitulo_2_identification_division.html#google_vignette

platziteam. (diciembre de 2020)Qué es COBOL, el lenguaje del presente y del futuro. Platzi. Recuperado el 10 de febrero de 2024 https://platzi.com/blog/que-es-cobol/