blu age@md day2011
DESCRIPTION
TRANSCRIPT
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
MDDAY 2011 BLU AGE® Modernisation d’application avec Blu Age
Jeudi 24 Novembre 2011
Contact:
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
A propos de Netfective/Blu Age
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
2
Fondée en 2000 (Implantations Paris(FR) , Bordeaux (FR), Plano (TX), Casablanca (MA) , 2Q 2012 Bangalore (IN) )
135 employés, 35 en R&D (depuis 2004) , 10 Millions $ CA
BLU AGE® « 2011 Edition » (4ième version majeure) pour windows 7 64 bit, Linux RedHat et Debian Juillet 2011
16 M$ investissements R&D depuis 2004
OMG Member, SOA consortium member, Eclipse foundation member
Partenaires: Sopra Group, HP Enterprise Services, HCL, Accenture.
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Solutions Blu Age de gestion du cycle de vie applicatif
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
3
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Aperçu des solutions Blu Age
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
4
JEE/.NET
NATSTAR/ Power Builder
PL / SQL
PACBASE
COBOL
KB: Knowledge Base BSP: BLU AGE Shared Plugin
VSAM
IMS
ORACLE
DB2
DB2 ORACLE MS SQL Server
Informix MySQL PostgreSQL
Apache Derby
Forward Engineering Reverse Modeling
EJB3 SPRING
JPA HIBERNATE
WCG SPRING BATCH
FLEX
STRUTS
JSF RI
BIRT JASPER
Spring MVC
IMPROVE
AXIS CXF
DROOLS
TOMCAT
WebSphere
WebLogic
JBoss GlassFish
App Server
JOnAS WASCE
Apache
Oracle Application
Server
JSF
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Quelques exemples
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
5
Telecom Air et espace Santé/social Distribution Transports
Taille 1,5 M loc 900 K loc 28,1 M loc 16 M loc 2,5 M loc
Technologies Ancinnes
Cobol Client serveur Cobol Pacbase 3 dialects Cobols
+ Powerbuilder
Cobol Pacbase +
Powerbuilder
Nouvelle Architecture
JEE/Flex JEE/Flex JEE JEE JEE
N° utilisateurs
2,000 450 550 3,000 500
Importance Haute(CRM et facturation)
Maximale (certification iso 9000)
Maximale (application cœur
de métier)
Maximale (application cœur
de métier)
Maximale (gère 8 Milliards de
revenu)
POC 3 semaines de modernisation
puis 3 semaines d’évolution
2 mois, 15% de l’application modernisée
2x 3 semaines 3 semaines par langage
« Due diligence » à venir
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Qualité applicative: selon vos exigences et mesurée par des tiers de confiance
Blu Age produit le code selon vos exigences (normes de codage, normes d’architecure, normes de commentaire),
Le code produit est de très haute qualité, sans runtime, sans dépendance à Blu Age,
L’architecture est nativement SOA et est séparée en couches d’architecture (IHM, services, batch, reporting, accès au données).
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
6
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Qualité applicative: éléments de comparaison avec des références connues
7
The code has been analyzed using sonar static code analysis tool. Two well known and
well implemented open source projects serve as reference for the quality of the
implementation:
Hibernate project http://nemo.sonarsource.org/dashboard/index/286206?page_id=2,
Apache Tomcat, http://nemo.sonarsource.org/dashboard/index/50544)
Line of code / violations
Package Tangle Index
LCOM Comments% Duplication Ratio
Complexity Distribution
Rule Compliance
16 to 20 20% 2 to 3 16 to 25% 2 to 7% 2 to 3 84 to 88%
The higher the better. Major,
Critical and
Blocker are
considered
0% is the best grade
1 is the best grade (grade
should be
1)
Above 30% is considered
good
The lower the better, should be
0%
The lower the better. Curves
should be
decreasing,
camel curves is bad
The higher the better. Good is
above 85%
Line of code / violations
Package Tangle Index
LCOM Comments% Duplication Ratio Complexity Distribution
Rule Compliance
POC grade 279 0% 1 46% 0% 1,8 98,9% Better than reference?
Yes Yes Yes Yes Yes Yes Yes
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Préservation du patrimoine et besoin en évolution
Une application est modernisée:
Quand le remplacement par un ERP n’est pas une solution,
Quand la valeur de ses processus métiers est capitale,
Quand l’application a besoin d’évoluer en support du métier.
Vue subjective d’une application
Cas d’utilisation, processus, enchainement d’écrans,
Vue objective de l’application « legacy »
La connaissance qui reste est … le code source,
Les cas d’utilisation sont une vue de l’esprit et ne sont pas dans le code,
Les enchainements de processus ou d’écrans sont en général dynamiques/factorisés.
Les questions sont donc:
Comment faire évoluer ce qu’on ne connait plus ?
Comment faire un recette d’un système qu’on ne connait plus et que nous faisons évoluer en cours de modernisation ?
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
8
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Comment ne rien oublier derrière ?
Méthode usuelle: recueil d’information sans traçabilité envers le code
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
9
Regarder les utilisateurs
Réunion de travail: que fait l’application?
Réunion de travail: préserver ou remplacer?
Spécifications
Application existante
Application d’après les spécifications
Quel est l’écart ? Qu’a t il été oublié derrière ? Comment faire la recette de règles modifiées vis-à-vis de l’existant?
Contractuellement le cahier des charges fait foi, et non
l’application existante
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Ingénierie de tests
Les écrans:
Facile tant est si bien qu’il y a une phase iso fonctionnelle
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
10
Les batch et les rapports: cas avec données hiérarchiques vers relationnelles
Comment capturer les entrées ?
Comment valider les sortie ?
Il faut instrumenter les captures des données et les résultats attendus.
Il faut savoir convertir les données
Val = « 4 »
Résultat = « 12 € »
Val = « 4 »
Résultat = « 12 € »
Batch
Batch
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Grands patrimoines et équipes distribuées Exemple d’une application « Sécurité Sociale »
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
11
Extraction: Base de connaissance partagée pour automatiser, segmenter et partagé les artefacts (pattern d’extraction et modèles extraits).
Gestion de version: partitionnement par modules UML et génération partielle.
Client HQ
Delivery 1 Delivery 2
Delivery 3
TMA 1
TMA 2
Sécurité sociale ? C’est quoi ?????
Ce programme je le maintiens depuis 10
ans mais je n’ose plus le modifier
La réforme Obama c’est l’occasion de
vendre de nouveaux services
Voici les programmes à faire
évoluer et l’architecture Java.
C’est quoi un Redifine ????
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Moderniser une application qui s’exécute depuis avant ma naissance
Blu Age affranchit de la compréhension du langage source (Texte => PSM)
Blu Age restitue les savoirs (PSM => UML2)
Blu Age permet la génération vers la nouvelle architecture (Forward Engineering)
Blu Age permet les évolutions de la nouvelle application (Forward Engineering)
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
12
1973: mise en production
1990: fin de vie du langage
1980: démantèlement de l’équipe
1980: Première SSII TMA
2007: j’ai mon diplôme
2011: Modernisation
2003: Deuxième SSII TMA 2006: Troisième SSII TMA
2003: dernier départ à la retraite équipe métier
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Comment ne rien oublier derrière ? Comment restaurer le patrimoine et le faire évoluer?
Proposition de valeur Blu Age:
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
13
« No Left Behind »
Iso fonctionnalité
Patrimoine restauré
Patrimoine conforme
Validation des utilisateurs
Automatisation des tests fonctionnels
Modèles UML2
Blu Age Reverse Modeling Blu Age Forward Engineering
Blu Age Forward Engineering Retiré/Conservé/Modifié
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Choix et pertinence des architectures techniques
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
14
Legacy architecture New architecture
Cobol Client Serveur Java/.Net Java/.Net +RIA
Code source S cobol
Batch X Java: ok .Net: ?
IHM X
any
Evènements
Procédures stockées
Rapports X BI ou Rapport de masse ou IHM ?
Base de données Tandem
Triggers
GIS
Type de données Hiérarchique Relationnelle ou
Hiérarchique?
Legacy architecture New architecture
Cobol Client Serveur Java/.Net Java/.Net +RIA
Code source Powerbuilder
Batch
IHM
x Pas d’équivalent à Datawindow =>
régressions fonctionnelles
Flex et Silverligth sont adaptés
Evènements Pas d’équivalent en html (JEE ou .Net)
Inclus avec Flex, GWT, WPF
Procédures stockées x Possible Augmente le
budget
Rapports x oui oui
Base de données Sybase
Triggers x Point d’attention Point d’attention
GIS Non, dans le code
PostgreSQL inclus des fonctions
Type de données Relationnelle
15 © Copyright 2011 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Background and Business Drivers
Background
A Blue Cross Blue Shield Payer utilizes legacy Real Time Membership System – highly customized and tuned to meet their business requirements over 3 decades.
HP Enterprise Services operates, maintains and enhances system as part of base contract with per customer per month (PCPM) pricing.
System is written in Pacbase and utilizes an IMS database.
In 2007, IBM announced they would sunset Pacbase in 2015.
• 130 Online Screens
• Approx 1000 Batch Jobs running CA/7 Scheduling Sys
• Maintained on IBM Z/OS
• 65 IMS Databases
• Approx 2000 Pacbase programs generate 28.1M lines
of COBOL
Key Legacy Facts Highlights
• Evaluation included pilot for validation
• Netfective partnership reduced price, timeline and
improve quality
• Stable and scalable delivery platform
• Winning response!
Business Drivers • Pacbase end of life support 2015
• Retain 20+ years of customization
• Flexibility to support business changes
• Lower Price to modernize and maintain
• Vendor neutrality
• Integration with newer technologies
Options Considered:
1. Do nothing – continue to run on unsupported
Pacbase system
2. System replacement
3. Modernize Real Time Membership System
a. Code Conversion
b. Through Model Driven Architecture
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Une application cobol de 20 ans vis-à-vis de JBoss
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
16
Cobol application was
5 millions LOC
Exemple de dette technique: densité de violation x volume de code Volume de code divisé par 10 Densité de violation: celle des meilleurs applications Java modernes
Trademarks are property of their respective owners. Eclipse, Built on Eclipse and Eclipse Ready, BIRT, Higgins are trademarks of Eclipse Foundation, Inc.
MDA, UML and MDD are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries.
Audit de vulnérabilité du code source: 5 étoiles aux tests Fortify
© 2011 NETFECTIVE TECHNOLOGY - can not be used or duplicated without prior authorization of NETFECTIVE TECHNOLOGY
17
18 © Copyright 2011 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Benefits
Benefits Examples of Results in the Industry
Lower cost and risk to organization, when compared to
system replacement, in light of industry dynamics
Adapt to business needs – quicker, easier, and with
more options to interface with vendor solutions
Ease of maintenance – large market for needed skills,
more available and efficient solution options
Customizable for the Blue Cross Blue Shield payer
needs, according to their priorities
Easier to maintain and enhance
Transportability to alternate platform
Data access flexibility
Provide data structure elements as required to support
known future enhancements
25% reduction in technical development time after
modernization (a commercial healthcare payer)
30% user productivity achieved from redesign of
screens, taking advantage of modern web screen
capabilities (a commercial healthcare payer)
$150k annual savings to the Blue Cross Blue Shield
payer after modernizing PGE function within Claims
Embrace New Capabilities => Drive Savings
Use new tools, technologies, and solutions Evolve business processes
19 © Copyright 2011 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Challenges and Lessons Learned
• Release and change management – running parallel systems
• Technical vs. functional modernization, combined approach
–Just technical, less risk but risk alienating the business
– Implement a process to manage required functionality, builds business support
• Strong due diligence prior to project confirmation a must
• Complete proof of concept to establish client support of the technology
• Client sponsor must be well positioned within business (senior leadership and IT)
• Plan time/resource to manage proportional performance accounting
20
Unissons nos Talents
T O G E T H E R T A L E N T E D
Le projet de modernisation – MDDAY 2011
Le projet de modernisation
La voie de l’Ingénierie des Modèles est ouverte..
21 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
22 Le projet de Modernisation – MDDAY 2011
Motivation : Les déclencheurs
Motivations à la modernisation des applications Fréquence
de citation
Changement ou refonte des processus métiers 8/10
Incapacité à servir correctement la chaine de valeurs 8/10
Limitations intrinsèques liées à leur conception 7/10
« Pappy boom » et perte de connaissances 7/10
23 Le projet de Modernisation – MDDAY 2011
Motivation : Les applications cibles
Classification des applications à moderniser Fréquence
de citation
Non maintenables, non évolutives,
Incapables de servir le métier et l’organisation.
Manque d’agilité.
8/10
Matériels et/ou Logiciels obsolètes ou non supportés 8/10
Incompatibilité avec les choix d’architecture d’entreprise 7/10
Risques sur la sécurité, l’intégrité, la confidentialité 5/10
Documentation non disponible, limitée ou dépassée 4/10
Performances limites 3/10
24 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
25 Le projet de Modernisation – MDDAY 2011
Quelles solutions ? avec quels risques ?
1- Faire durer Evolution du code en l’état Rénovations frontales Modernisation des infrastructures
2 - Découpler et architecturer extérieurement Systèmes d’échanges inter-applications Isolation des périmètres pour des interventions ciblées
3 – Modernisation du code Portage
4 - Modernisation par l’ingénierie des modèles Raffiner la valeur de l’existant Produire industriellement
5 - Réécriture Nouveau développement Cycle long
26 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
27 Le projet de Modernisation – MDDAY 2011
Ingénierie Des Modèles – Acronymes
MDE : Model Driven Engineering Discipline
MDD : Model Driven Development Développement de logiciels
MDA® : Model Driven Architecture
Démarche de l’OMG
28 Le projet de Modernisation – MDDAY 2011
Les plans du MDA
CIM : Computational Independant Model
le plan Métier
PIM : Platform Independant Model
le modèle Logique
PSM : Platform Specific Model
Le modèle logique appliqué à une plate-forme Technique
Transformations
M2M Model to Model
M2C Model to Code
+
PSM
+
Code
+
PIM
29 Le projet de Modernisation – MDDAY 2011
Les plans du MDA
CIM : le plan métier Modèles de Processus Modèles Métier Règles métier Cas d’usage : Scénarios fonctionnels Vues externes ( maquettes et prototypes visuels )
PIM : Le plan logique Diagrammes de classes Diagrammes d’activités Diagrammes de séquence Modélisation des Services et des messages Modélisation des cinématiques d’écrans et des flux échangés Langage d’expression des règles métier
PSM : Le plan technique Choix techniques (IHM, framework, Composants,Transaction, Persistance,
SGBD, … )
CODE Ecrans de présentation : développés Application : générée Interactions : « tissées »
30 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
31 Le projet de Modernisation – MDDAY 2011
Phase de reverse Ingénierie
Code
legacy
Patrimoine
Technique
PIM
PSM
32 Le projet de Modernisation – MDDAY 2011
Phase de « reverse » Ingénierie
Qualification préalable
POC sur échantillons, transactionnels et batchs
Rétro-modélisation outillée à partir du code
Facilitée si le code répond déjà à un « PSM »
– Pacbase , L4G, Frameworks java, …
Retour d’expérience
Code -> PIM : 65 à 80% en automatique
Niveau PIM suffisant pour régénérer l’application
Nécessité d’une reformalisation CIM (Métier)
pour la compréhension des MOA
La démarche de modernisation par les modèles
33 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
34 Le projet de Modernisation – MDDAY 2011
Phase de Forward Ingénierie
PSM
Code
PIM Patrimoine
Technique
PSM
Code
35 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
36 Le projet de Modernisation – MDDAY 2011
La qualification d’une boite noire nécessite des scénarios et des données de production.
PSM
Code
PSM
Code
Patrimoine
Technique
?
Scénarios
de tests PIM
Tests iso-Fonctionnels
37 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
38 Le projet de Modernisation – MDDAY 2011
Les évolutions par les modèles préservent le patrimoine.
PSM
Code
PIM
PSM
Code
PIM Patrimoine
Technique
39 Le projet de Modernisation – MDDAY 2011
Les évolutions par le code restent classiques
PSM
Code
PIM Patrimoine
Technique
PSM
Code
40 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
41 Le projet de Modernisation – MDDAY 2011
Bluage a été validé en génération.
MDA « forward » validé sur projet
Code source (java) de qualité
Indépendance de l’outillage : validée
42 Le projet de Modernisation – MDDAY 2011
Bluage a été préqualifié en Modernisation
Outillage de rétro- modélisation
Démarche de validation par Proof Of Concept successifs
43 Le projet de Modernisation – MDDAY 2011
Bluage dispose d’un outillage pour les données.
Outillage de reprise des données : DB Modernisation
44 Le projet de Modernisation – MDDAY 2011
Motivations
Solutions candidates
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience
Conclusion
Sommaire
45 Le projet de Modernisation – MDDAY 2011
Un projet de rénovation PAC 700
Motivations :
Application et environnement dépassés
Développée en Pac700
Mise en production en 1978,
Machines HVX (Unix émulateur GCOS 6)
Matériels et émulateurs ne sont plus supportés
Connaissances perdues
Solutions envisagées :
Faire Durer
Déjà joué: IHM simplificatrices (NSDK) dans une autre application
Réécriture
Trop risqué, trop stratégique, manque de connaissances
Evolutions techniques
Performances et disponibilité ne sont pas les sujets majeurs
« Code to code » ne résout pas les questions de maintenance/évolution
46 Le projet de Modernisation – MDDAY 2011
Proof Of Concept avec Bluage – Etape 1
Objectifs
Valider la capacité de modernisation à partir du code à iso-fonctionnalité
Identifier les risques sur la migration PAC700
Définir les plans d’actions pour lever ces risques
Stratégie : isolation et migration d’un périmètre significatif
Migration du code PAC700 du périmètre
Migration du JCL
Migration des données
Maquettage écrans (infographiste) sur base écrans transactionnels
Installation de la solution
Recette : Tests identiques sur les deux versions de l’application
Conclusion : Migrations validées
PAC700 vers code Java
Fichiers GCOS en BDD relationnelle (Oracle pour le POC)
Ecrans transactionnels en HTML
Modèles UML générés conformes à la norme UML2
Aucune perte fonctionnelle identifiée
47 Le projet de Modernisation – MDDAY 2011
Objectif :
Comparer évolution et maintenance avec & sans outils MDA
Ajouter des cas, modéliser des WebServices,
Produire une matrice de traçabilité des exigences (CMMI)
Valider la fusion de données
Plusieurs bases regroupées en une seule.
Stratégie :
1 solution en modifiant les sources à la main
1 solution en modifiant les modèles + régénération
Evolution des modèles métier et logique (CIM-PIM)
Gestion de configuration des modèles (UML avec Magic Draw)
Tester la fusion de données avec 2 bases de production
Conclusions
Evolution par les modèles : Validée
Construction sans la solution Blu Age Possible
Regroupement de bases de données Possible
Maintenance en mode projet Pas de difficulté majeure
Ouverture au SI via WebServices Validée
Qualité du code vérifiée via Cast Note > 3.4
Proof Of Concept avec Bluage – Etape 2
48 Le projet de Modernisation – MDDAY 2011
Etude des impacts de la migration sur l’écosystème
Catalogues
Interfaces
Etude des Performances
Actuelle, Cible
Optimisation du code généré
Structure et normalisation de la BDD cible
Simplifications /Réorganisation des Batchs
Définition de la stratégie de Bascule
Etude du PRA
Projet Bluage – Etape 3
49 Le projet de Modernisation – MDDAY 2011
Démarche : Processus séquentiel et itératif
I0
I1
I2
I3
I4
I5
MEP
VABF
Le processus de production (delivery process) est le processus temporel de production du projet depuis son lancement jusqu’à sa clôture
eMedia
50 Le projet de Modernisation – MDDAY 2011
Les motivations
Les solutions
Principes de l’Ingénierie des modèles
Démarche de modernisation par les modèles
Phase de Reverse Ingénierie
Phase de Forward Ingénierie
Qualification en boîte noire
La gestion des évolutions
Le choix de Bluage en modernisation
Retour d’expérience projet
Conclusion
Sommaire
51 Le projet de Modernisation – MDDAY 2011
Conclusion : un projet qui se mène à trois
Mobilisation générale
Client
Mobilisation de compétences fonctionnelles
Sopra Group
Expertise sur langage, BDD et produits Middleware
Maîtrise du langage de modélisation UML et de l’outil Magic Draw
Connaissances fonctionnelles du métier et de l’application
Netfective
Mise en œuvre et support outillage Reverse et Code Generation
Aspects organisationnels
Mobiliser des compétences sur les process de fabrication
Process du client – Démarche agile Sopragroup eMedia
Chercher à limiter l’effet tunnel « iso fonctionnalités »
Prise en compte d’évolutions fonctionnelles sans risques majeurs.
Points de vigilance
Stratégie de déploiement
Implication des parties prenantes
52 Le projet de Modernisation – MDDAY 2011
Centres de Services « RobotShore »
Ingénierie des modèles rouille technologique
53 Le projet de Modernisation – MDDAY 2011
Questions
54 Le projet de Modernisation – MDDAY 2011
Merci de votre attention