Ir al contenido

salida del mainframe

Modernización de mainframe: COBOL y AS/400 a Go, Rust y TypeScript

Los programas COBOL, los grafos de JCL, las pantallas CICS, los ficheros VSAM y las tablas DB2 pasan a servicios Go, un planificador normal, un cliente web y Postgres. Los copybooks se convierten en estructuras tipadas, el decimal empaquetado sigue siendo decimal, y cada cadena se compara al céntimo con su salida de producción antes de tomar el relevo. También AS/400: RPG, CL, ficheros descritos con DDS y pantallas 5250. Treinta días para la salida completa, y la primera cadena de trabajos se mueve en siete.

Pedir presupuestoCuatro pantallas sobre la máquina, las cadenas de trabajos y la fecha. Contesta un ingeniero que lee COBOL.

30 días para la salida completa; la primera cadena de trabajos se mueve en 7


Las pantallas verdes se van las últimas, y el reemplazo sigue siendo de teclado: los operadores van más rápido con teclado que con ratón, y una migración que los frena fracasa en el puesto.

En z/OS

Grafo de trabajos JCL, programas COBOL, pantallas 3270, VSAM y DB2 debajo.

  • BATCH.JCLJCL
  • PAYCALCCOBOL
  • CICS screens3270
  • VSAM filesflat
  • DB2z/OS

Fuera

Servicios Go en un planificador normal, Postgres y un cliente web que se maneja con el teclado.

  • batch runnerGo · cron
  • paymentsGo
  • web clientTypeScript
  • postgresfrom VSAM + DB2

30 días para la salida completa; la primera cadena de trabajos se mueve en 7

Las pantallas verdes se van las últimas, y el reemplazo sigue siendo de teclado: los operadores van más rápido con teclado que con ratón, y una migración que los frena fracasa en el puesto.

Cómo va el trabajo

Una cadena de trabajos cada vez, ejecutada en paralelo con la suya y comparada registro a registro.
  1. 01días 1–5

    Inventariar el grafo de trabajos

    Cada paso de JCL, cada dataset, cada programa al que llama, como un grafo. También las partes que nadie menciona en la reunión inicial: el trabajo de FTP de las 3 de la mañana, la utilidad que solo una persona sabe relanzar.

  2. 02días 4–12

    Mover el modelo de datos

    Los copybooks pasan a estructuras tipadas, VSAM y DB2 pasan a tablas de Postgres. EBCDIC, decimal empaquetado y REDEFINES se resuelven aquí en vez de descubrirse al final.

  3. 035–9 días por cadena

    Portar una cadena y correr las dos

    La cadena nueva procesa las mismas entradas la misma noche y la salida se compara registro a registro. Toma el relevo cuando las diferencias son cero, o están escritas y aceptadas.

  4. 04por subsistema

    Retirar la región

    Las transacciones CICS pasan al cliente web, la LPAR encoge y la partida de MIPS y licencias baja por fin. Esta es la parte por la que preguntaba su director financiero.

Qué hace la plataforma y qué hace una persona

Analizar cuarenta años de COBOL es trabajo de máquina y la plataforma lo hace en días. Saber cuáles de esos programas siguen importando es la razón de que nuestros ingenieros se sienten con los suyos.
Es la comparación la que decide si una cadena está lista. Nadie, de ningún lado, la contradice con una opinión.
Qué hace la plataforma y qué hace una personaQuién hace quéNotas
Analizar COBOL, JCL y copybooksPlataformaCon las rarezas del dialecto incluidas, y el copybook que se incluye once veces con REDEFINES distintos.
Averiguar qué programas siguen vivosLos dosLos logs de trabajos responden a casi todo. El resto necesita a alguien que se acuerde de 2004.
Traducir un programaPlataformaRevisado como una merge request y reescrito a mano donde la salida de máquina se lee como COBOL traducido.
Aritmética de coma fijaPlataformaEl decimal sigue siendo decimal. Una desviación de un céntimo aparece en la comparación y la suspende.
Las pantallas de operaciónIngenieroDiseñadas con quien las usa, de teclado primero, cronometradas contra lo rápidos que eran en 3270.
Ventana de batch y cambioIngenieroQué noche, quién está de guardia y qué aspecto tiene la vuelta atrás a las 4 de la mañana.
La conversación con su proveedor de licenciasIngenieroAjustar la salida a las fechas de contrato vale dinero de verdad y no lo automatiza nadie.

Quién hace el trabajo

Un equipo de ingenieros que vive de leer COBOL y RPG, con decenas de migraciones y más de diez años sobre máquinas como la suya: z/OS y AS/400, batch de JCL y transacciones CICS, VSAM, DB2 e IMS, copybooks con once REDEFINES, decimal empaquetado que tiene que caer en el céntimo. Su gente de COBOL va a estar hablando con ingenieros que leen el mismo código que ellos.


Una cadena de trabajos es la prueba que proponemos, y la acotamos así: portada, ejecutada contra sus propias entradas de producción durante unos ciclos, con el diff a nivel de registro encima de la mesa. Juzga un informe de comparación sobre sus datos y no nuestro marketing.

Preguntas que nos hacen los ingenieros

¿Por qué Go y no Java?
Porque un trabajo batch que arranca en milisegundos y se entrega como un único binario estático es más fácil de planificar y de razonar a las 3 de la mañana. Si su equipo de plataforma está estandarizado en Java, escribimos Java, y el método no cambia en nada.
¿Qué pasa con nuestra gente de COBOL?
Se convierten en las personas más valiosas del proyecto. Toda migración se atasca en una regla que nadie escribió, y ellos son los únicos que la conocen. En los planes que escribimos pasan de mantener a arbitrar.
¿Van a cuadrar las cifras exactamente?
Ese es el criterio de aceptación, no una aspiración. Los campos COMP-3 pasan a decimal de coma fija, nunca a coma flotante, y la comparación falla con un céntimo de diferencia. Cuando una diferencia es legítima, se escribe y se aprueba antes de que la cadena cambie.
¿Cuánto tiempo corren los dos sistemas a la vez?
Hasta que la comparación esté limpia, que para casi todas las cadenas son entre uno y tres ciclos. En un trabajo de cierre repetimos el periodo que usted ya tiene grabado en vez de esperar al siguiente, así que un cierre trimestral no le añade un trimestre al proyecto.
¿Hacen también AS/400?
Sí: RPG y CL, ficheros descritos con DDS, pantallas verdes sobre 5250. La mecánica coincide con z/OS y el calendario suele ser más corto, porque el grafo de trabajos es más simple y las máquinas son más pequeñas.

Empiece por una cadena de trabajos

Qué hace, cuándo corre y qué se rompe aguas abajo si termina tarde. Con eso volvemos con un alcance, una duración y un precio para moverla.

Pedir presupuesto

El formulario pregunta por las cadenas de trabajos y la ventana de batch, así que ayuda tener el planificador abierto.