blu age@md day2011

54
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: [email protected]

Upload: mdday11

Post on 17-Dec-2014

567 views

Category:

Documents


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Blu age@md day2011

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:

[email protected]

Page 2: Blu age@md day2011

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.

Page 3: Blu age@md day2011

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

Page 4: Blu age@md day2011

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

Page 5: Blu age@md day2011

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

Page 6: Blu age@md day2011

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

Page 7: Blu age@md day2011

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

Page 8: Blu age@md day2011

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

Page 9: Blu age@md day2011

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

Page 10: Blu age@md day2011

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

Page 11: Blu age@md day2011

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 ????

Page 12: Blu age@md day2011

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

Page 13: Blu age@md day2011

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é

Page 14: Blu age@md day2011

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

Page 15: Blu age@md day2011

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

Page 16: Blu age@md day2011

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

Page 17: Blu age@md day2011

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

Page 18: Blu age@md day2011

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

Page 19: Blu age@md day2011

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

Page 20: Blu age@md day2011

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..

Page 21: Blu age@md day2011

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

Page 22: Blu age@md day2011

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

Page 23: Blu age@md day2011

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

Page 24: Blu age@md day2011

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

Page 25: Blu age@md day2011

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

Page 26: Blu age@md day2011

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

Page 27: Blu age@md day2011

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

Page 28: Blu age@md day2011

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

Page 29: Blu age@md day2011

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 »

Page 30: Blu age@md day2011

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

Page 31: Blu age@md day2011

31 Le projet de Modernisation – MDDAY 2011

Phase de reverse Ingénierie

Code

legacy

Patrimoine

Technique

PIM

PSM

Page 32: Blu age@md day2011

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

Page 33: Blu age@md day2011

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

Page 34: Blu age@md day2011

34 Le projet de Modernisation – MDDAY 2011

Phase de Forward Ingénierie

PSM

Code

PIM Patrimoine

Technique

PSM

Code

Page 35: Blu age@md day2011

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

Page 36: Blu age@md day2011

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

Page 37: Blu age@md day2011

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

Page 38: Blu age@md day2011

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

Page 39: Blu age@md day2011

39 Le projet de Modernisation – MDDAY 2011

Les évolutions par le code restent classiques

PSM

Code

PIM Patrimoine

Technique

PSM

Code

Page 40: Blu age@md day2011

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

Page 41: Blu age@md day2011

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

Page 42: Blu age@md day2011

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

Page 43: Blu age@md day2011

43 Le projet de Modernisation – MDDAY 2011

Bluage dispose d’un outillage pour les données.

Outillage de reprise des données : DB Modernisation

Page 44: Blu age@md day2011

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

Page 45: Blu age@md day2011

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

Page 46: Blu age@md day2011

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

Page 47: Blu age@md day2011

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

Page 48: Blu age@md day2011

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

Page 49: Blu age@md day2011

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

Page 50: Blu age@md day2011

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

Page 51: Blu age@md day2011

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

Page 52: Blu age@md day2011

52 Le projet de Modernisation – MDDAY 2011

Centres de Services « RobotShore »

Ingénierie des modèles rouille technologique

Page 53: Blu age@md day2011

53 Le projet de Modernisation – MDDAY 2011

Questions

Page 54: Blu age@md day2011

54 Le projet de Modernisation – MDDAY 2011

Merci de votre attention