¿COBOL tenía 250 mil millones de líneas de código y 1 millón de programadores en 2009?

En 2009 COBOL cumplió 50 años. Obtuvo algo de publicidad con afirmaciones, que encuentro bastante difíciles de creer:

Artículo "Cobol llega a 50 y sigue contando" en The Guardian .

Según David Stephenson, gerente del Reino Unido para el proveedor de software Micro Focus, "alrededor del 70% al 80% de las transacciones comerciales de UK plc todavía se basan en Cobol".

[...]

Gran parte de este mantenimiento y desarrollo tiene lugar en los productos de IBM. El director de estrategia y entrega de productos del grupo de software de la compañía, Charles Chu, dice que no cree que "heredado" sea peyorativo. "El negocio evoluciona constantemente", agrega, "pero hay 250 000 millones de líneas de código Cobol que funcionan bien en todo el mundo. ¿Por qué las empresas reemplazarían los sistemas que funcionan bien?".

A menudo se cita la publicación del foro/blog "50 años después, Cobol sigue siendo tan influyente" .

Las estadísticas sobre Cobol dan fe de su enorme influencia en el mundo de los negocios: existen más de 220 mil millones de líneas de Cobol, una cifra que equivale a aproximadamente el 80 por ciento del código utilizado activamente en el mundo. Hay más de un millón de programadores Cobol en el mundo. Cada día se realizan 200 veces más transacciones Cobol que búsquedas en Google.

Jeff Atwood lo intentó en su publicación de blog "COBOL: Everywhere and Nowhere" . El problema es que es solo evidencia anecdótica.

Recientemente, el tema apareció en Programmers.SE , pero hasta ahora también es solo evidencia anecdótica.

¿Hay datos concretos sobre:

  • número total de líneas de todo el código en uso?
  • número total de líneas de código COBOL en uso?
  • número total de todos los programadores?
  • número total de programadores COBOL?
Aquí hay dos enlaces que pueden ser útiles: EE Times , Dr.Dobbs
Recuerde, 1 millón de líneas de COBOL se pueden reescribir en unas 10 líneas de C.

Respuestas (1)

Nadie lo sabe.

Ninguna de las fuentes de LOC total proporciona medios o métodos.

Las fuentes de números duros después de 2008 fueron un poco difíciles de encontrar, mis disculpas.

¿Número total de líneas de todo el código en uso?

  • Un billón (2001). [19]
    • C/C++: 180 mil millones, Ensamblador: 140-220 mil millones, Otro: 280 mil millones.

¿Número total de líneas de código COBOL en uso?

  • 200 mil millones (2008). [10]
  • 180 mil millones (2006). [12]
  • 200 mil millones (2005). [14]
  • 225 mil millones (2001). [19]
  • 100 mil millones (2000). [21]

¿Número total de todos los programadores?

  • 14,6 millones (2009). [8]

¿Número total de programadores COBOL?

  • 1,5 - 2 millones (2008). [19]
  • ~2 millones (2000). [20]

Si consideramos el hecho de que hay al menos 2000 bancos solo en los EE. UU. y que las fuentes a continuación dan números entre 100 mil LOC y 343 millones LOC para los sistemas financieros; Bueno, se suma rápido.

Una vez que agregas los sistemas civiles y militares... son al menos mil millones.


Fuentes

2012

1. Estudio de caso En este trabajo analizamos una cartera de software Cobol de una gran organización que opera en el sector financiero . Las fuentes de Cobol son una mezcla de código escrito manualmente y generado con herramientas de ingeniería de software asistida por computadora (CASE), como TELON, COOL:Gen, CANAM y otras.

La cartera tiene décadas de antigüedad y es grande en muchas dimensiones; por ejemplo, en términos de líneas de código, número de sistemas o número de módulos. Para dar una idea, la cartera contiene más de 18,2 millones de líneas físicas de código (LOC) divididas en 47 sistemas de información.


2. David Brown está preocupado. Como director gerente del grupo de transformación de TI en Bank of New York Mellon, es responsable de la salud y el bienestar de 112 500 programas Cobol, 343 millones de líneas de código, que ejecutan operaciones bancarias centrales y otras . Pero muchas de las personas que construyeron esa base de código, algunas de las cuales se remontan a los primeros días de Cobol en la década de 1960, se jubilarán en los próximos años.

Esa es la situación que enfrenta Jim Gwinn, director de información de la Agencia de Servicios Agrícolas del USDA. " Tenemos millones de líneas de Cobol y hay una larga historia de reescritura", dice. "Se ha vuelto cada vez más difícil cambiar el código debido a la complejidad y el desgaste de la base de conocimientos que lo escribió".


2011

3. Prototipamos y aplicamos la estrategia propuesta sobre un conjunto de programas del entorno de ejecución de nuestros clientes. Estos programas tenían longitudes variables, desde unos pocos miles de líneas de código hasta alrededor de 80 KLOC .


4. El sistema de software objeto de este estudio de caso es un extracto de un sistema confidencial 100k LOC COBOL de la industria bancaria . Consta de aproximadamente 1.100 secciones en 150 programas y cuadernos (incluye archivos).


2010

5. VisualAge PACBASE es un generador de aplicaciones. Existen miles de millones de líneas de COBOL en todo el mundo, que se han producido con este entorno. Por razones históricas, tales aplicaciones requieren contextos de ejecución específicos, a saber, terminales antiguos (pantallas no basadas en ventanas gráficas), mainframes y CICS (Sistema de control de información del cliente).

El ámbito de negocio de SCAFRUITS es amplio: gestión de pedidos, envíos,
calificación y referenciación de proveedores y productos, gestión puntual de precios, activación/inhibición de productos

En cuanto a sus aspectos técnicos, el tamaño de la aplicación se estima en 3M de LoC , 600 programas, 400 pantallas, 200 programas por lotes, 300 usuarios potenciales, 48,000 referencias de productos con solo 2,000 referencias activas a la vez. Hay 350.000 transacciones por día y 100.000 líneas de pedido creadas por día .


6. El sistema que se investiga en este documento es una aplicación industrial de gran tamaño (> 1 MLOC) que respalda las actividades principales (por ejemplo, seguros e hipotecas) de un importante banco belga . A pesar de que el trabajo en el sistema comenzó en 2005 , el banco optó por desarrollar el back-end de este nuevo sistema en COBOL para facilitar la integración con la infraestructura existente.


7. Proyecto: Fondo Nacional de las Artes (NEA). [M]odernización de los sistemas de negocio de la NEA (Gestión Financiera - Gestión de Subvenciones - Banco de Panel Automatizado)

Totalmente modernizado los 656 000 LOC de archivos planos Wang-COBOL y RMS a entornos C++ y SQL Server y 3270 pantallas a un entorno MS Windows.

Proyecto: Northrop Grumman. [L]a demostración de transformación y posterior modernización de los Incrementos 1 y 3 del sistema REMIS de la Fuerza Aérea.

Totalmente modernizado más de 400 000 LOC de Tandem COBOL a código C++ y Java.


2009

8. Para 2009, Evans Data estimó originalmente que habría aproximadamente 15,2 millones de desarrolladores en todo el mundo. Sin embargo, ha reducido lo estimado en unos 600.000 en el informe actual.

En Norteamérica, Evans Data proyectó en un informe anterior que la población de desarrolladores crecería a 3,85 millones en Norteamérica durante 2009. En el informe actual, cambió esa cifra a 3,72 millones según las condiciones económicas actuales. Evans no reveló datos sobre otras regiones.


9. La Administración del Seguro Social está empaquetando aplicaciones Cobol esenciales en sobres de lenguaje de marcado extensible y publicándolos como servicios de arquitectura orientados a servicios. Retendrá alrededor del 20 por ciento de los 36 millones de líneas de código Cobol que utiliza, dijo Hill.


2008

10. Estadísticas recientes citadas a Datamonitor por IBM revelan la escala masiva de propiedad intelectual acumulada:

• Alrededor de 200 mil millones de líneas de código COBOL están en funcionamiento.
• El 75 % de los datos empresariales del mundo y el 90 % de las transacciones financieras se procesan en COBOL.
• Hay entre 1,5 y 2 millones de desarrolladores en todo el mundo que trabajan con código COBOL.
• Cada año se agregan alrededor de 5 mil millones de líneas de código COBOL nuevo a los sistemas activos.


2007

11. Los sistemas COBOL heredados suelen contener millones de líneas de código (LOC) distribuidas en miles de módulos, desarrollados por decenas de personas durante muchos años, a menudo están mal documentados y, en gran medida, se pierde el conocimiento sobre ellos.

Usamos SQuAVisiT para estudiar un gran sistema heredado COBOL de un gran fondo de seguros: 3 mil módulos, 1,7 millones de LOC .


2006

12. Gartner ha estimado que hay 180 mil millones de líneas de código Cobol en uso en todo el mundo.


2005

13. El cliente de los autores es una empresa alemana de tamaño medio que presta servicios financieros . Estos servicios se basan en dos grandes sistemas de aplicaciones, que comparten la misma plataforma HP UNIX, pero pertenecen a mundos de tecnología de software completamente diferentes.

• El sistema COBOL total consta de 1398 programas por lotes, 485 programas en línea y 7621 módulos de copia.
• El número total de líneas (LOC) es de casi 2 millones, después de deducir los comentarios (~ 25%) el código real alcanza aproximadamente 1,5 millones de líneas .
• El sistema es mantenido por un personal de 8.

Calcular con solo el 8 % de la LOC neta significa 120 000 líneas de código por año añadidas, modificadas o eliminadas por ocho programadores . Suponiendo un esfuerzo de 80 MM al año, la productividad de mantenimiento es de 1500 líneas de código por persona al mes.


14. Por ejemplo, Cobol sigue siendo el lenguaje de programación más utilizado en las grandes empresas, representa el 75 % de todas las transacciones informáticas y no va a desaparecer. Cobol es omnipresente en el sector financiero ( que representa el 90% de todas las transacciones financieras ), en defensa, así como dentro de los sectores de fabricación y seguros establecidos. Estimamos que hay más de 200 mil millones de líneas de Cobol en producción hoy en día , y este número sigue creciendo entre un tres y un cinco por ciento al año .


15. Si bien el documento está conformado por un proyecto de ejemplo muy manejable (solo 90 000 LOC), hemos aplicado la misma metodología en otros proyectos. Por ejemplo, la metodología para analizar el impacto y para estimar el esfuerzo y los costos también se usó para proporcionar a un cliente información precisa sobre un proyecto en el que se tuvo que investigar una cartera de software de 50 millones de LOC para la modificación de la arquitectura de los números de cuentas bancarias existentes a diez. dígitos


2004

16. Con un estimado del 60% al 80% de todas las aplicaciones comerciales aún escritas en COBOL , no fue una sorpresa encontrar exactamente esto en la base de código de las empresas involucradas en ARRIBA. Por lo tanto, COBOL ganó rápidamente gran parte de nuestro enfoque.

El código está mal estructurado y mal documentado. La cantidad de código es enorme (millones de LOC) y se ha adaptado muchas veces por varias razones (cambio de plataforma, conversiones del año 2000, transición al euro,…). Así que mantener la documentación sincronizada con esos cambios evolutivos no siempre sucedió.


17. Durante las últimas tres décadas, se desarrolló una cantidad considerable de software usando lenguajes procedimentales. Por ejemplo, Coyle estima que el tamaño de los sistemas escritos en Cobol supera los 100 000 millones de LOC.


18. Se llevaron a cabo dos estudios de casos con nuestras transformaciones en sistemas Cobol industriales de la vida real. El código fuente del primer estudio de caso era IBM Cobol y procedía de la misma empresa bancaria que el código de la fuente base. Había un gran sistema de 2,6 millones de LOC en casi 1000 programas . Los tamaños de los programas oscilaron entre 40 y 13000 LOC. El número de sentencias por programa osciló entre dos y 4000 sentencias. En todo el sistema, hubo alrededor de 400000 declaraciones.

En el segundo caso de estudio se transformaron varios sistemas que estaban escritos en Micro Focus Cobol . Al igual que en el primer estudio de caso, el tamaño total fue de 2,6 millones de LOC, pero esto fue una coincidencia. El código fuente constaba de casi 3000 programas y el tamaño de los programas individuales oscilaba entre 25 y 8000 LOC. El número de declaraciones por programa osciló entre 10 y casi 3400. En total, hubo más de 1,2 millones de declaraciones . Este número significativamente mayor de declaraciones en comparación con el primer caso de estudio se debió a que en el primer caso de estudio se usó una gran cantidad de código para las declaraciones de datos.


2001

19. En primer lugar, hay alrededor de 300 dialectos de Cobol y cada producto compilador tiene algunas versiones, con muchos niveles de parches. Además, Cobol a menudo contiene lenguajes integrados como DMS, DML, CICS y SQL. Así que no existe tal cosa como "el lenguaje Cobol". Es políglota, una mezcla confusa de dialectos y lenguajes incrustados, un problema de 500 idiomas en sí mismo. En segundo lugar, según Jones, el software instalado en el mundo se distribuye por idioma de la siguiente manera:
Cobol: 30 por ciento (225 mil millones LOC)
• C/C++: 20 por ciento (180 mil millones LOC)
• Ensamblador: 10 por ciento (140 a 220 mil millones LOC )
• idiomas menos comunes: 40 por ciento (280 mil millones LOC)

Debido a que hay alrededor de un billón de líneas de software instaladas escritas en una miríada de idiomas , su solución es un paso adelante en la gestión de esos activos.


2000

20. Hay alrededor de dos millones de programadores de COBOL en el mundo, más del doble de programadores de JAVA.


21. Estimado en más de 100 mil millones de líneas de código, la mayoría Cobol , impulsa la infraestructura mundial. El resultado final es una nueva apreciación del legado y una búsqueda de formas de capitalizar su potencial.


1996

22. Sin embargo, recién (enero de 1996) nos embarcamos en un gran proyecto que trata este tema, en colaboración con varios socios industriales, incluido el banco holandés ABN-AMRO , y creemos que esta aplicación es demasiado interesante para dejarla sin discutir en un artículo. sobre aplicaciones industriales de ASF+SDF. El problema en cuestión involucra el análisis, limpieza y reconstrucción de un gran conjunto (25,000 programas, 30M LOC) de aplicaciones COBOL basadas en mainframe . Los dos problemas principales que se estudian actualmente son las conversiones entre dialectos COBOL y la identificación y corrección de errores de software relacionados con el "año 2000".

Muchas de estas referencias simplemente hablan de la existencia de grandes bases de código individuales o plantean la pregunta ("Gartner ha estimado que hay 180 mil millones de líneas de código Cobol en uso"). ¿Puedes editar para apuntar a algún tipo de fuente primaria?
@LarryOBrien Claro. ¿Está buscando medios y métodos o sería suficiente un consenso?
Ciertamente preferiría algo con una metodología publicada. Gartner, por nombrar a uno de los principales infractores, ha sido bastante poco confiable a lo largo de los años, pero nunca se le llama a la tarea. Fueron uno de los principales promotores del impacto del año 2000 extraordinariamente pobre y muy publicitado (Gartner predijo $ 300- $ 600 mil millones en costos directos, "al menos 1" robo en exceso de $ 1 mil millones, y que el 50% de las organizaciones sufrir al menos 1 falla de misión crítica debido a Y2K).