Coopérons! dope sa productivité et ses performances grâce à Angular

Coopérons! dope sa productivité et ses performances grâce à Angular

L’application Coopérons ! est initialement implémentée sur Symfony2. Au fur et à mesure de son évolution ainsi que l’intégration de nouvelles fonctionnalités, les développeurs de Coopérons ! ont constaté :

  • Une complexité croissante du code source notamment au niveau des vues TWIG mal structurées.
  • Une vitesse de développement ralentie induisant le non respect de la planification.

D’où ils ont fait appel à Fondative afin de trouver la solution viable permettant :

  • Audit et refactoring du code source de toute l’application.
  • Allègement des vues.
  • Accélération du rythme des développements.

La mission de Fondative consiste à trouver la meilleure solution à ces problématiques tout en prenant en considération une contrainte très importante : la garantie de la continuité des développements en cours parallèlement à l’intervention de Fondative
Suite à un audit minutieux réalisé par nos experts, nous avons proposé de migrer les vues TWIG vers Angular selon l’approche de scission de l’application monolithique en 2 parties : La partie front end en Angular et la partie back end en Symfony2 inter-communicantes à travers une API REST. Ce choix a été approuvé par Coopérons ! et les travaux entamés de suite.

Coopérons ! fixe la barre très haute

La mission confiée à Fondative comporte plusieurs défis :

  • Application déjà en production donc l’authentification des utilisateurs ne doit pas être entravée pendant l’intervention des développeurs.
  • Migration des vues Twig dans un délai assez serré.
  • Aucune régression (bug, oubli fonctionnel) n’est autorisée.
  • Avoir un code source (Symfony, Angular et API Rest) de qualité, sécurisé et aligné sur les bonnes pratiques.

Comment Fondative a soulevé les défis

  • La solution finale comportera le système d’authentification par token qui remplace l’ancien système d’authentification par session.
  • Ré-implémentation de la logique de génération de tous les formulaires : L’API ne va pas retourner un formulaire mais les données nécessaires à sa création.
  • Ré- implémentation de la logique de validation des données issues d’un formulaire.
  • Le contrôle d’accès doit être traité aussi bien du côté client au niveau Angular que du côté serveur au niveau Symfony.

Coopérons ! structuré plus que jamais

  • Une maintenabilité renforcée.
  • Des vues structurées.
  • Un code source de qualité grâce à l’application des bonnes pratiques.
  • Un code source front end réutilisable pour l’éventuelle implémentation d’une application mobile qui sera interfacée avec l’API du back end.
  • La possibilité de faire évoluer les 2 composantes de l’application par 2 équipes indépendantes en fonction de leurs expertises technologiques.

Ce travail en parallèle sur les composantes indépendantes front et back a permis l’accélération du rythme des développements tout en préservant la qualité requise du code.

De plus on a obtenu une API back end RESTful 100% implémentée permettant l’ouverture de la totalité des fonctionnalités à des usages tiers.

Laisser un commentaire