Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
Du Client/Serveur au Web<br />Moderniser son SI grâce au MDA<br />GW/PR/PT/7466-1.2<br />1<br />Grégory Weinbach<br />gwei...
Objet Direct en bref<br />2<br />Comment industrialiser nos développements applicatifs ?<br />Comment faire évoluer notre ...
Agenda<br />Genèse du Projet<br />Réponse d’Objet Direct<br />Travaux effectués<br />Rétrospective<br />Conclusion<br />GW...
La Genèse du Projet<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />4<br />
Le CIG – un établissement public particulier<br />Etablissement public administratif<br />Créé en 1984,<br />300 agents,<b...
Le CIG en quelques chiffres <br />300 agents qui gèrent :<br />100 000 agents territoriaux,<br />Plus de 20 000 candidats ...
Une DSI au cœur de la stratégie du CIG<br />La stratégie du CIG<br />Innovation et capitalisation<br />Les enjeux de la DS...
Une petite structure…<br />20 personnes<br />5 concepteurs-développeurs<br />…qui supporte le cœur de métier du CIG<br />M...
Les applications du SI<br />Historique <br />1994 -2004 :<br />Application développée avec l’AGL D.OM<br />Liaison avec no...
2008 – Etat des lieux<br />Des applications très satisfaisantes…<br />Une réponse fonctionnelle adéquate<br />Amélioration...
2008 – Etat des lieux<br />… Mais qui posent beaucoup de problèmes<br />Un déploiement toujours problématique,<br />300 po...
Le projet de modernisation du SI<br />Une refonte globale indispensable<br />Difficile de financer un projet de cette ampl...
Réponses aux exigences<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />13<br />
Architectures<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />14<br />
Architectures<br />D.OM<br />Moteur d’exécution<br />Langage propriétaire <br />Architecture Client/Serveur<br />Framework...
Architectures<br />Exigences<br />Application Web<br />Gros enjeu de maintenabilité<br />Base de données partagée <br />Pa...
Un Framework Riche et Standard<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />17<br />
Une migration « en douceur »<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />18<br />
Délais courts + Maintenabilité<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />19<br />+<br />
Moderniser avec MDA<br />Les Principes<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />20<br />
Construire une application<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />21<br />Analyse<br />Dévelo...
Approche AGL<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />22<br />Référentiel (Modèle + Code)<br />...
Approche MDA<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />23<br />Model To Code<br />Analyse<br />M...
Approche MDA<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />24<br />CIM<br />PIM<br />PSM<br />Livrab...
Exemple<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />25<br />Entités, Liste, Détail…<br />Entity, B...
Moderniser avec MDA<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />26<br />Renormalisation<br />Rétro...
Metadone Modernisation<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />27<br />Renormalisation<br />Ré...
Phase de modernisation<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />28<br />60 %<br />40 %<br />
Cible après livraison<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />29<br />100 %<br />0 %<br />
Une préoccupation permanente  <br />Minimiser les risques<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<b...
Lotir<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />31<br />
Etre agile<br />Scrum<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />32<br />
Points critiques<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />33<br />
Rétromodéliser<br />Utiliser toute l’information disponible<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web...
Renormaliser<br />La quête de la régularité<br />Identifier des « patterns applicatifs » dans le code d’origine<br />GW/PR...
Transformer<br />Restituer la complexité compressée dans le PIM<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au...
Générer<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />37<br />
GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />38<br />
GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />39<br />
GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />40<br />
GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />41<br />
Rétrospective<br />Anticipée <br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />42<br />
Difficultés rencontrées<br />Finalement, construction d’un « mini » framework<br />Limites de la standardisation du code g...
Points positifs<br />Spécification fonctionnelle de (très !) bonne qualité <br />Code Généré extrêmement structurant<br />...
Actions d’Améliorations<br />Améliorer le caractère itératif de la génération<br />Fournir un code généré directement exéc...
Conclusions<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />46<br />
GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />47<br />
Avantages et inconvénients<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />48<br />
GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />49<br />
Quelques chiffres<br />2 applications<br />110 entités métier (88 modèles d’état)<br />5 profils utilisateur<br />250 écra...
Toutes les architectures sont candidates<br />L’ambition paye<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au W...
Questions ?<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />52<br />
Prochain SlideShare
Chargement dans…5
×

MD Day 2009 - Du Client/Serveur au Web - Moderniser son SI grâce au MDA

1 014 vues

Publié le

La conférence que j'ai animée pour Objet Direct au MDDay 2009 (la "Journée du Model Driven") le 26 novembre 2009.

Publié dans : Technologie
  • Soyez le premier à commenter

MD Day 2009 - Du Client/Serveur au Web - Moderniser son SI grâce au MDA

  1. 1. Du Client/Serveur au Web<br />Moderniser son SI grâce au MDA<br />GW/PR/PT/7466-1.2<br />1<br />Grégory Weinbach<br />gweinbach@objetdirect.com<br />www.objetdirect.com / blog.objetdirect.com<br />mdblog.fr<br />Yannick Chazeau<br />Y.CHAZEAU@cig929394.fr<br />www.cig929394.fr<br />
  2. 2. Objet Direct en bref<br />2<br />Comment industrialiser nos développements applicatifs ?<br />Comment faire évoluer notre patrimoine applicatif existant ?<br />Comment bien exploiter les nouveaux frameworks applicatifs ?<br />Comment adopter les méthodes agiles et former nos équipes ?<br />Objet Direct* répond concrètement à ces questions à travers des prestations d’expertise dans le domaine du génie logiciel :<br />Conseil : architecture, méthodologie, outillage, urbanisation du SI<br />Ingénierie projet : réalisation de projets clefs en mains, refactoring, modernisation, mise en œuvre d’usines logicielles<br />Formation aux nouvelles technologies, coaching<br /> *Objet Direct est une société du groupe Homsys – 250 collaborateurs , 20 M€ de CA en 2008<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />
  3. 3. Agenda<br />Genèse du Projet<br />Réponse d’Objet Direct<br />Travaux effectués<br />Rétrospective<br />Conclusion<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />3<br />
  4. 4. La Genèse du Projet<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />4<br />
  5. 5. Le CIG – un établissement public particulier<br />Etablissement public administratif<br />Créé en 1984,<br />300 agents,<br />Notre métier <br />assister les collectivités territoriales de la petite couronne dans la gestion de leurs ressources humaines<br />Un fonctionnement proche du client - fournisseur un souci constant d’efficacité et de qualité<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />5<br />
  6. 6. Le CIG en quelques chiffres <br />300 agents qui gèrent :<br />100 000 agents territoriaux,<br />Plus de 20 000 candidats aux concours par an<br />Plus de 120 000 dossiers traités par an<br />Un taux d’affiliation de 98%<br />soit 373 collectivités (offices d’HLM, départements, communes et établissements publics)<br />85% de l’activité repose sur des affiliations volontaires<br />Plus d’informations : www.cig929394.fr<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />6<br />
  7. 7. Une DSI au cœur de la stratégie du CIG<br />La stratégie du CIG<br />Innovation et capitalisation<br />Les enjeux de la DSI<br />Dématérialisation,<br />Services aux partenaires et internes, <br />Sécurité des données et des systèmes,<br />Les solutions : une gamme d’applications spécifiques<br />SNAPI Retraites<br />SNAPI Collectivités<br />SNAPI Cotisations<br />SNAPI CAP<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />7<br />
  8. 8. Une petite structure…<br />20 personnes<br />5 concepteurs-développeurs<br />…qui supporte le cœur de métier du CIG<br />Maintenance et exploitation des applications métiers,<br />Evolutions fonctionnelles<br />La DSI<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />8<br />
  9. 9. Les applications du SI<br />Historique <br />1994 -2004 :<br />Application développée avec l’AGL D.OM<br />Liaison avec nos partenaires en RNIS<br />2004 – 2008 :<br />Mise en place d’un VPN avec authentification forte<br /> SNAPI devient accessible sur Internet avec un client léger via TSE<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />9<br />
  10. 10. 2008 – Etat des lieux<br />Des applications très satisfaisantes…<br />Une réponse fonctionnelle adéquate<br />Amélioration des délais de traitement,<br />Plus de 120 000 dossiers traités par an<br />Des utilisateurs satisfaits,<br />Une réussite technique à capitaliser<br />Plus de 22 ans/homme de travail,<br />Une architecture applicative jamais remise en cause.<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />10<br />
  11. 11. 2008 – Etat des lieux<br />… Mais qui posent beaucoup de problèmes<br />Un déploiement toujours problématique,<br />300 postes utilisateurs + serveurs TSE<br />Un « look and feel » obsolète<br />Des compétences requises trop spécifiques<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />11<br />
  12. 12. Le projet de modernisation du SI<br />Une refonte globale indispensable<br />Difficile de financer un projet de cette ampleur<br />200 écrans<br />2500 traitements<br />Impossible d’y consacrer plusieurs années sans évolutions fonctionnelles<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />12<br />
  13. 13. Réponses aux exigences<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />13<br />
  14. 14. Architectures<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />14<br />
  15. 15. Architectures<br />D.OM<br />Moteur d’exécution<br />Langage propriétaire <br />Architecture Client/Serveur<br />Framework de haut niveau (ORM)<br />Base Informix<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />15<br />
  16. 16. Architectures<br />Exigences<br />Application Web<br />Gros enjeu de maintenabilité<br />Base de données partagée <br />Pas de rupture de service<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />16<br />
  17. 17. Un Framework Riche et Standard<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />17<br />
  18. 18. Une migration « en douceur »<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />18<br />
  19. 19. Délais courts + Maintenabilité<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />19<br />+<br />
  20. 20. Moderniser avec MDA<br />Les Principes<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />20<br />
  21. 21. Construire une application<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />21<br />Analyse<br />Développement<br />Conception<br />Expression du Besoin<br />Compilation Intégration<br />Activité manuelle<br />Architecture<br />Activité automatisée<br />
  22. 22. Approche AGL<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />22<br />Référentiel (Modèle + Code)<br />Exécution du modèle<br />Activité manuelle<br />Moteur<br />Activité automatisée<br />
  23. 23. Approche MDA<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />23<br />Model To Code<br />Analyse<br />Model To Model<br />Activité manuelle<br />Activité automatisée<br />
  24. 24. Approche MDA<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />24<br />CIM<br />PIM<br />PSM<br />Livrable<br />Activité manuelle<br />Activité automatisée<br />
  25. 25. Exemple<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />25<br />Entités, Liste, Détail…<br />Entity, Backing Bean, Facelet…<br />.java, .xhtml, .properties…<br />Exemple : JEE5 JSF/Seam/EJB3<br />Application Web<br />
  26. 26. Moderniser avec MDA<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />26<br />Renormalisation<br />Rétromodélisation<br />JEE5 JSF/Seam/EJB3<br />
  27. 27. Metadone Modernisation<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />27<br />Renormalisation<br />Rétromodélisation<br />Développement   « à la main »<br />JEE5 JSF/Seam/EJB3<br />
  28. 28. Phase de modernisation<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />28<br />60 %<br />40 %<br />
  29. 29. Cible après livraison<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />29<br />100 %<br />0 %<br />
  30. 30. Une préoccupation permanente <br />Minimiser les risques<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />30<br />
  31. 31. Lotir<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />31<br />
  32. 32. Etre agile<br />Scrum<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />32<br />
  33. 33. Points critiques<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />33<br />
  34. 34. Rétromodéliser<br />Utiliser toute l’information disponible<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />34<br />
  35. 35. Renormaliser<br />La quête de la régularité<br />Identifier des « patterns applicatifs » dans le code d’origine<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />35<br />
  36. 36. Transformer<br />Restituer la complexité compressée dans le PIM<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />36<br />
  37. 37. Générer<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />37<br />
  38. 38. GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />38<br />
  39. 39. GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />39<br />
  40. 40. GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />40<br />
  41. 41. GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />41<br />
  42. 42. Rétrospective<br />Anticipée <br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />42<br />
  43. 43. Difficultés rencontrées<br />Finalement, construction d’un « mini » framework<br />Limites de la standardisation du code généré<br />Enormément de code à appréhender en une seule fois<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />43<br />
  44. 44. Points positifs<br />Spécification fonctionnelle de (très !) bonne qualité <br />Code Généré extrêmement structurant<br />Reprise de la base telle quelle<br />Reprise automatisée des<br />Structures des IHM<br />Habilitations<br />State Models<br />Règles de gestion<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />44<br />
  45. 45. Actions d’Améliorations<br />Améliorer le caractère itératif de la génération<br />Fournir un code généré directement exécutable<br />Permettre aux « retoucheurs » de personnaliser les patterns<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />45<br />
  46. 46. Conclusions<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />46<br />
  47. 47. GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />47<br />
  48. 48. Avantages et inconvénients<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />48<br />
  49. 49. GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />49<br />
  50. 50. Quelques chiffres<br />2 applications<br />110 entités métier (88 modèles d’état)<br />5 profils utilisateur<br />250 écrans<br />2800 opérations métier<br />1000 j.h dont 100 j.h d’outillage MDA<br /> 330 000 lignes de code générées<br />40% retouchées<br />Génération complète &lt; 2mn<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />50<br />
  51. 51. Toutes les architectures sont candidates<br />L’ambition paye<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />51<br />
  52. 52. Questions ?<br />GW/PR/PT/7466-1.2 - MDDay 2009 - Du Client/Serveur au Web<br />52<br />

×