2012 02-09-eranea-presentation-jug-lausanne

29
Mutation technologique d'applications métier vers Linux & Java - JUG Lausanne - (09 février 2012)

Upload: didier-durand

Post on 06-Jul-2015

1.424 views

Category:

Documents


0 download

DESCRIPTION

Retour d'exppérience au Java User Group de Lausanne autour du transcodage automatique de grandes applications Cobol vers Java - 09 février 2012

TRANSCRIPT

Page 1: 2012 02-09-eranea-presentation-jug-lausanne

Mutation technologiqued'applications métier

vers Linux & Java

- JUG Lausanne -

(09 février 2012)

Page 2: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 2

AgendaBusiness case / Méthodologie

Quoi ? Point de départ

Pourquoi ? Motivations

Business case

Où ? Cible optimale

Qui ? Les acteurs, leurs attentes

Quoi ? Continuum de solutions

Comment ?

Technologie & méthodologie

Bénéfices et conclusions

Points technologiques / démo

Page 3: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 3

Cobol : quo vadis ? Selon Microfocus :

Chaque consommateur a 13 interactions quotidiennes avec des applications cobol (achats, appels Natel, etc...)

220 milliards de lignes de Cobol actives : + 5 milliards chaque année

60 à 80 de l'activité des multinationales « repose » sur Cobol : 80% des transactions commerciales l'utilise

200 x plus de transactions Cobol que de requêtes Google chaque jourSource: www.developpez.net

Page 4: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 4

Retour d'expérienceBasé essentiellement

Sur un projet en cours avec grande banque privée genevoise : 10 millions de lignes de Cobol + zOS + CICS + DB2

Sur un projet média terminé à 100%: 4.5 millions de lignes de Cobol + zOS + CICS + DB2

Sur un projet avec un éditeur de logiciel australien 100% terminé

Sur un projet avec assurance étrangère 100% terminé

Sur un projet avec une administration étrangère terminé à 75%

Signalés par dans les slides qui suivent

→ La méthodologie (automatisation, 3-iso, fonctionnement //, etc.) est aussi voire plus importante que la technologie qui doit la servir !

Page 5: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 5

Quoi ? Point de départ

Une grande application critique au métier du client

encapsulant tout son savoir-faire, solidement éprouvée sur des décennies

représentant de lourds investissements (10s voire 100s d'années-hommes)

en route vers l'obsolescence technologique ?

sur un système opérationnel (très) cher comparé aux standards 2011

Page 6: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 6

Pourquoi ? Motivations Des économies en investissements (capex) et frais de fonctionnement (opex) massives

Une mutation technologique vers les standards 2011:

technologies Web, interface RIAarchitecture technique: SOA, Java, Linuxproductivité: IDE, tests automatisés, QA des sources, code coverage, etc

N.B.: abandon des anciennes technologies en fin de projet

Si possible les 2 en même temps !

Page 7: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 7

Business case (projet média - 2003)

Le Logiciel Système est le "point chaud"

Un environnement plus compétitif est impératif

Il aura un impact positif sur les logiciels tiers

Hardware/périphériques ne représentent pas la priorité initiale. On pourrait rester sur hardware grand système

Les très bonnes performances Pentium ont permis le passage sur serveurs x860%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

100% = approx. 5 millions CHF/an

Cpu

Périphériques

logiciels tiers

logiciels Système(OS, TP, DB, etc..

Passage à l'Open Source: 70%+ des cash-outs quasi-annulés !

Page 8: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 8

Où ? Cible

Serveurs x86 (Intel, AMD)

Linux pour le système

Java pour l'environnement applicatif

Page 9: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 9

Où ? Cible : serveurs x86

Quantité

Architecture #1 en dollars et volume!

Performances

Progression exponentielle

8 machines du top 10 du Top500 mondial sur base x86

Top 10 du TPC-C = 100%

Page 10: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 10

Où ? Cible : Linux

Google: 2 millions de serveurs

Linux utilisé par London Stock Exchange et autres places boursières (NYSE, Deutsche Börse, Shanghai, etc.)

pour ses 3S (« Speed, Stability, Security) »

1'000'000 trans/s (réponse: 400 ms) pour le « flash trading »

Fonctionne sur toutes les architectures matérielles : x86, Power, Sparc, ARM (Android), etc.

→ Architectures sophistiquées (redondance, haute disponibilité) et évolutions HW possibles (exemple: projet média → début sur zLinux puis bascule vers x86)

→ Fort levier sur les fournisseurs HW placés dans un environnement compétitif

Page 11: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 11

Où ? Cible : Java

devise Java : « Write Once, Run Anywhere »

Java : langage le mieux « équipé » de l'histoire de l'informatique (Eclipse, outils QAs, outils monitoring, etc.)

Open Source et très majoritairement gratuit :

JVM, application server (Tomcat, JBoss, etc.), Java Melody

Jenkins, Ant, Eclipse, GWT, Selenium, Cobertura, etc.

Le même code source fonctionne sur Linux, zLinux, MS Windows, AIX, zOS, Solaris.

Page 12: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 12

Qui ? Les acteurs, leurs attentes

developers engineers architects

CIO

users

Massive savings

Risks (corporate … & personal)

IT cost reductions

Disturbance

Structural, functional changes

Job / position danger

Higher productivity

New skills

Modern technology

New skills

Job / position danger

Training

Architecture flexibility

Functional agility

??

→ Toutes les parties auprojet doivent y trouver leurcompte

Page 13: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 13

Quoi ? Continuum

Application

“historique”

même DBmême OSmême TP (CICS, IMS) Cobol → Java

même DBmême OSJava ASCobol → Java

Application

Java“dérivée

même DBautre OSJava ASCobol → Java

autre DBautre OSJava ASCobol → Java

Migration

totale

à chaque version

(éditeur de logiciel multi-plate-forme)

Différentes cibles possibles ou étapes d'un même projet(NB: aucune interruption des évolutions fonctionnelles )

1 2 3 4

Page 14: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 14

Comment ? Faire baisser drastiquement les coûts de de mutation en migrant automatiquement cette application

… avec des risques minimaux via une méthodologie spécifique et éprouvée (« petits pas réversibles » + tests automatisés)

Points-clefs dans un grand compte

Page 15: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 15

Comment ? La formeTranscodage automatique continu:

100 % de l'application complètement transcodée chaque nuit

tests automatiques via scenarii capturés et rejoués par robot

Transcodage 3-iso:iso-fonctionnel: le minimum...iso-structurel: code source (développeurs), interface

et cinématique (utilisateurs)iso-syntaxique (développeurs)

un processus industriel et répétable et pas du «1-shot » à l'arraché car le projet dure 15+ mois (variable selon restructuration applicative initiale / inventaires / niveau de modernisation souhaité)

Le partage “live” de la base de données unique est essentiel au succès

V1 du nouveau système strictement identique à l'ancien. Ensuite seulement, multiples petits pas rapides d'évolution

Page 16: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 16

Comment ? Les raisons (1/2) Transcodage 100% automatique:

répétable à coûts nuls

rapidité de réalisation

qualité toujours identique, risques faibles

évolutions globales par transcodage n+1 (EJBs, SOA)

pas d'arrêt de la maintenance ni décalage fonctionnel … sans mélange des genres !

Les bonnes idées peuvent arriver tard dans le projet (bien après la RFP....)

un processus industriel et répétable et pas du «1-shot » à l'arraché

L'automatisation permet de réfléchir pour bien faire les choses …. sans paralyser le “daily business”

Page 17: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 17

Comment ? Les raisons (2/2)Iso-transcodage:

cible 100% claire !

ne pas déranger les utilisateurs: implication minimale et formation nulle

ne pas perturber les équipes de développement

rassurer et les motiver les collaborateurs loyaux et fidèles

Une mutation complète et rapide ne peut aboutir qu'avec les équipes en place pas contre elles !

Page 18: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 18

Comment ? (projet média) Contexte applicatif:

20+ applications "maison" de gestion administrative de commandes. 100% code source disponible.

1'500 utilisateurs internes, 750'000 transactions /jour & 800'000 pages /mois

400 travaux nocturnes en batch (270 types de documents)500 écrans applicatifs / 1'500 tables relationnelles

Avant:Mainframe IBM z800 (350 Mips) zOS / CICS / COBOL / DB2Réseau TCP/IP / émulation TN3270 4 millions de lignes de Cobol à transcoder (2'150 programmes)

Après:cluster de serveurs Intel sous Linux (Redhat) /Java /Apache Tomcat

/UDB500 écrans html (+ Javascript/AJAX & CSS), 1'500 tables

relationnelles4 millions de lignes de Java

Page 19: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 19

Comment ? Technologie

Transcodage iso-strucurel facilite grandement la transition des équipes en place

“Cobol” support

SQL support

CICS Emulation

Display support

Tracing / logging

InternalObject

implementation

JavaProgram

(incl SQL)

XMLScreen

DBMS

LexicalAnalysis

Syntax

Analysis

Semantics Analysis

Cobol

copy

Cobol

pgm

BMS

desc

Code Generation

NeaTranscoder

NeaRuntime

Online

SOA

Batch

Page 20: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 20

Comment ? Processus

Entrepôt sources

DB ERIT

Integrate

MoteurCI

cobol

déclenchementtravaux

Jenkins + Ant

(windows)

DB2(zOS)

Subversion

(zLinux)

Tomcat + GWT

+ Lucene(zLinux)

consultations+ recherches

code source rapports

code source

DB2

SharedBatch Online

ServiceBackendBatch

WebServiceFront

Application

Application server

monitoring

développeurs

administrateurs

utilisateurs

Page 21: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 21

Comment ? No big-bang = no risk

2-3months

DRDAconnection

Time

Activity

Cobolon Cics

Javaon Tomcat

100%

6-9months

100% of data on DB2 Cobol remains reference

Javabecomesreference

Dat

aM

igra

tio

n t

o n

ew D

B

MainframeSwitched

off

CICS DB2

ProgressiveMigration

Big Bang Avoidance = Key Success Factor !!

Instantaneousway backto old system

0%

Tomcat

Souplesse et adaptabilité de la planification de la migration sont critiques

Page 23: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 23

Bénéfices (1/2) Économies: Projet média → 4.5 millions / an (= 90% !)

Levier « naturel » et rapide sur les apports technologiques intrinsèques de la nouvelle plate-forme:

Projet média: Interface Web, 100% documents PDF, système d'archivage standard (Knowledge Tree)

Projet bancaire: SOA généralisée, intégration BPM, interface RIA (Google GWT), fonctionnalités augmentées (« contexte sémantique »)

Synergies technologiques additionnelles par abandon technologies – Optimisations RH résultantes

Economies → facteur principal d'adhésion du management (généralement peu “sensible”à la beauté des nouvelles technologies...)

Page 24: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 24

Bénéfices (2/2)Augmentation de la productivité :

Architecture: structuration optimisée par « code mining » (« NeaMining »), pilotage / suivi intégré du parc logiciel (« NeaIntegrate »)

Développement :outillage Java, debugging interactif, environnement personnel indépendant

Production : interface graphique de gestion du système (Webmin – open source → gratuit !)

Nouvelles possibilités architecturales :Projet media → propre centre de backupCroissance horizontale par ajout de serveurIsolation des fonctions : batch vs transactionnel, etc..

Page 25: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 25

Qui ? Les acteurs, leurs attentes

developers engineers architects

CIO

users

Risks (corporate … & personal)

Disturbance

Job / position danger Job / position danger

Training

- automated testing- dual systems

- iso-functional / iso-structure for appl.

- progressive migration- dual system on same data- automated testing

- direct involvement in migration- iso-structure & iso-syntax- new capabilities → new demand

- builder (= owner) of new system- new projects: backup center, etc.

Everybody now on modern and “fun” platform

Page 26: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 26

ConclusionUne mutation technologique vers Linux/Java offre 2 opportunités habituellement non simultanées:

Évolution fonctionnelle fondamentaleRéduction massive des coûts

Le transcodage automatique permet une synergie entre elles: Les réductions opex/capex permettent le financement du projet avec ROI court puis des économies restituables ensuite au business

Page 27: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 27

Points technologiques (1/2)

Structure « plate » d'une application Cobol <> packages Java : un outil de mapping est nécessaire pour structurer le Cobol initial

Necéssité d'un outil Ajax / Interface riche pour pouvoir reproduire (via Javascript) fidèlement le mapping du clavier mainframe orignal. Possibilités de « belle » interface ensuite → Google Web Toolkit

Page 28: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 28

Points technologiques (2/2)

Cobol permet des calculs sur des nombres avec 31 digits → Java ne le permet pas à la base → extensions nécessaires

Codage « packé » des nombres (COMP-3 COBOL)

Page de code EBCDIC des caractères sur le mainframe (ordre de tris, etc.)

Page 29: 2012 02-09-eranea-presentation-jug-lausanne

13/02/12 © Eranea SA 29

Merci de votre attention !

Des questions ?

Didier Durand

[email protected]+41 79 944 37 10

Eranea SAchemin de Mornex, 21003 LausanneSuisse