Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Obsolescence d'une plateforme

Obsolescence d'une plateforme

Présentation réalisée à l'AFUP Lyon sur la gestion de l'obsolescence d'une plateforme technique

Guillaume THIRARD

April 25, 2018
Tweet

More Decks by Guillaume THIRARD

Other Decks in Programming

Transcript

  1. Contexte ❖ On travaille pour des clients pendant plusieurs années

    ❖ Durant lesquelles les projets évoluent avec des corrections et évolutions ❖ Ce qui génère naturellement une dette technique.
  2. Le cas de TCL.FR ❖ 2ème site le plus visité

    de la région ❖ En moyenne : 50 000 visiteurs / jour ❖ Des pics de connexion : ❖ En journée : 07h30 - 09h00 et 17h00 - 19h00 ❖ Problème sur le réseau : 150 000 visiteurs / jour ❖ 5 langues ( fr, en, es, it, de)
  3. Le cas de TCL.FR ❖ Quelques fonctionnalités : ❖ Recherches

    d’itinéraires ❖ Horaire à l’arrêt - Temps réel ❖ Alertes trafics ❖ Paiement des PV ❖ Demandes d’attestations ❖ …
  4. Rapport d’obsolescence ❖ Alerter le client sur le vieillissement de

    sa plateforme : ❖ Architecture serveurs : Versions des logiciels utilisés, Nombre de serveurs, … ❖ Architecture logiciels : Mise à jour CMS, librairies utilisées, … ❖ Communication avec d’autres plateformes : Certificat mobiles, …
  5. Rapport d’obsolescence ❖ Faire des préconisations ❖ Ajouter de la

    valeur ajoutée grâce à de nouveaux cas d’usage ❖ Nouvelles technologies permettant d’améliorer des développements anciens ❖ Budget
  6. 1ère étape : Documenter ❖ Récupérer les configurations de tous

    les logiciels ❖ Référencer : ❖ les packages installés (extensions PHP, Vhost, Config Varnish / Nginx /…) ❖ les différents développements ❖ l’architecture serveurs, les environnements, … ❖ les flux réseau
  7. 2nde étape : Construire ❖ Définir l’architecture cible (Logiciel +

    Serveur) ❖ Créer la nouvelle architecture serveur ❖ Mettre à jour des outils de développement / déploiement / … ❖ Automatiser le plus de choses possible
  8. 3ème étape : Tester ❖ Tester la plateforme - tests

    unitaires / fonctionnels ou à la main ❖ Créer un cahier de recette complet du site internet ❖ Tester la communication avec tous les outils tiers ❖ Tester la performance de la plateforme avec des tests de montée en charge
  9. 4ème étape : Basculer ❖ Mettre en place une procédure

    de bascule avec les rôles de chaque acteur ❖ Etablir les risques (coupure / rollback / perte de données / …) ❖ Tester en amont toutes les étapes pour mettre des temps sur chacune afin d’avoir une roadmap définie ❖ Réaliser la bascule le Jour J en croisant les doigts
  10. Conclusion ❖ Pouvoir continuer à faire des mises à jour

    ❖ Travailler avec de nouvelles technologies ❖ Ajouter de la valeur ajoutée aux contributeurs ❖ Sécuriser les mises en ligne grâce au déploiement continu