Présentation Eranea à Open Source Now 2012
-
Upload
didier-durand -
Category
Technology
-
view
5.908 -
download
0
description
Transcript of Présentation Eranea à Open Source Now 2012
Mutation technologiqued'applications critiques
vers Linux & Java
- retour d'expérience -
(Genève – 07 février 2012)
Didier [email protected] SA - Lausanne
07/02/12 © Eranea SA 2
Agenda● 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
07/02/12 © Eranea SA 3
Retour d'expérience● Basé 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 !
07/02/12 © Eranea SA 4
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
07/02/12 © Eranea SA 5
Pourquoi ? Motivations● Des économies en investissements (capex) et frais de fonctionnement (opex) massives
● Une mutation technologique vers les standards 2011:
● technologies Web, interface RIA● architecture technique: SOA, Java, Linux● productivité: IDE, tests automatisés, QA des sources, code coverage, etc
● N.B.: abandon des anciennes technologies
● Si possible les 2 en même temps !
07/02/12 © Eranea SA 6
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 !
07/02/12 © Eranea SA 7
Où ? Cible
● Serveurs x86 (Intel, AMD)
● Linux pour le système
● Java pour l'environnement applicatif
07/02/12 © Eranea SA 8
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% x86
● 3 Pentiums pour 750'000 trans/jour (rempl mainframe)
07/02/12 © Eranea SA 9
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 (début sur zLinux puis bascule vers x86)
→ Fort levier sur les fournisseurs HW
07/02/12 © Eranea SA 10
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.
07/02/12 © Eranea SA 11
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
07/02/12 © Eranea SA 12
Quoi ? Continuum
Application“historique”
même DBmême OSmême TP (CICS, IMS) Cobol → Java
même DBmême OSJava ASCobol → Java
ApplicationJava
“dérivée”
même DBautre OSJava ASCobol → Java
autre DBautre OSJava ASCobol → Java
Migrationtotale
à 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
07/02/12 © Eranea SA 13
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)
●… vers l'état de l'art technologique: Java & Linux :
● Agilité, évolutivité, ouverture, etc.● Linux ou autre : « write once, run anywhere » de Java
07/02/12 © Eranea SA 14
Comment ? La forme●Transcodage 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
07/02/12 © Eranea SA 15
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é 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”
07/02/12 © Eranea SA 16
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 !
07/02/12 © Eranea SA 17
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 / DB2● Ré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 /UDB● 500 écrans html (+ Javascript/AJAX & CSS), 1'500 tables
relationnelles● 4 millions de lignes de Java
07/02/12 © Eranea SA 18
Comment ? Technologie
JavaProgram
(incl SQL)
XMLScreen
ContainingservletDBMS
“Cobol” support
SQL support
CICS Emulation
Display support
Tracing / logging
White BoxTesting
InternalObject
implementation
XSLTC
LexicalAnalysis
Syntax Analysis
Semantics Analysis
Cobolcopy
Cobolpgm
BMSdesc
Code Generation
NeaTranscoder
NeaRuntime
Transcodage iso-strucurel facilite grandement la transition des équipes
07/02/12 © Eranea SA 19
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
Applica tion
Application server
monitoring
développeurs
administrateurs
utilisateurs
07/02/12 © Eranea SA 20
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
DB
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
07/02/12 © Eranea SA 21
Comment ? Tests permanents
Tomcat
CICS DB2
XMLScreenData
3270
XMLScreenData
HTML
COBOL
XMLScreenData
Transcoder orrun-time or Cobol
bug fixes
(1)
(2)
(3)
(4)when (1) & (3) different
Les tests ne doivent pas être “gommés”: ils font partie du projetmais aident les développeurs à s'approprier le nouveau code
07/02/12 © Eranea SA 22
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...)
07/02/12 © Eranea SA 23
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 backup● Croissance horizontale par ajout de serveur● Isolation des fonctions : batch vs transactionnel,
etc..
07/02/12 © Eranea SA 24
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
07/02/12 © Eranea SA 25
ConclusionUne mutation technologique vers Linux/Java offre 2 opportunités habituellement non simultanées:
● Évolution fonctionnelle fondamentale● Ré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
07/02/12 © Eranea SA 26
Merci de votre attention !
Des questions ?
Didier Durand
[email protected]+41 79 944 37 10
Eranea SAchemin de Mornex, 21003 LausanneSuisse