Publié le 17/07/2022
Après la refonte de l’application en 2020, c’est au tour de l’administration de Steeple fait peau neuve. Ce travail de deux ans abouti au lancement de la version bêta auprès de tous les clients de la solution. L’objectif est d’améliorer les fonctionnalités de notre outil et l’expérience utilisateur, pour préparer la solution à un plus gros développement.
#1 - Steeple, les premières pierres de l’édifice
Le monolithe de la solution se brise
À l’origine, Steeple est codée sous un langage : Javascript. À l’image d’un gros rocher appelé monolithe, cette technologie rassemble en un seul et unique bloc la partie front (interface) et la partie back (administration).
"À l’image d’un ordinateur portable, Steeple représentait un seul tout. L’avantage, c’est qu’il est simple et agile. L’inconvénient, c’est qu’il peut manquer de puissance et rencontrer régulièrement des problèmes techniques. On a alors décidé de casser l’ordinateur portable pour préférer un ordinateur fixe. La tour représente la partie back et l’écran la partie front."
Jean-Baptiste de Bel Air, président de Steeple
Avec ce langage, il est devenu compliqué de développer de nouvelles fonctionnalités de manière fluide. En 2019, Steeple prend alors la décision de briser le monolithe, en changeant de technologie.
L’objectif est quadruple :
- optimiser le code
- développer de nouvelles fonctionnalités
- maintenir l’état de fonctionnement
- améliorer l’expérience utilisateur des clients
Tout doit être repensé, du design aux propriétés.
Le basculement d’un monolithe vers un double langage
Briser le monolithe suppose de séparer le back du front. Deux langages, plus modernes que le précédent, sont choisis pour le remplacer : Vue.JS (front), un langage qui utilise Javascript mais qui est beaucoup plus optimisé, performant et simple à utiliser et Nuxt (back).
Ce double langage permet de morceler les compétences des développeurs en back ou en front. De cette façon, il n’est plus nécessaire de recruter spécifiquement des développeurs full stack, qui maîtrisent les deux technologies.
Une fois ces langages choisis, toutes les pages ont été retravaillées, une par une. En front, cela représente environ 200 000 lignes de codes à supprimer. Durant un temps, les deux versions cohabitent. Par un système d’API entre les deux langages, les lignes de codes sont déplacées puis supprimées lorsqu’elles n’ont plus d’utilité. Plus d’un tiers des lignes de code sont supprimées.
Le projet de la nouvelle administration commence en fin d’année 2020. L’équipe produit débute par un brainstorming, par le Wireframe et enfin, par maquetter la nouvelle version. Une fois les idées validées, le développement peut commencer.
#2 - Les coulisses de la nouvelle administration
Les difficultés rencontrées dans le développement
Au bout de sept mois de développement, l’équipe produit concrétise deux pages sur dix. La cohabitation entre l’ancienne version et la nouvelle engendre des problèmes techniques et par ricochet, des retards.
"Quand on a maquetté la nouvelle version on s’est dit qu’on pouvait rajouter quelques fonctionnalités. Le problème, c’est qu’on avait tendance à vouloir faire trop de choses. Au bout des sept mois, toute l’équipe s’est réunie. Tout le monde avait à cœur de trouver une solution au problème. En prenant le temps d’écouter chacun, on a fini par le résoudre."
Corentin Pavoine, Product Owner chez Steeple
Après un premier développement long et pénible, la décision est prise de reprendre l’ancienne version, de modifier le langage mais d’enlever les nouvelles fonctionnalités. L’objectif est de ne pas alourdir le développement. Au bout de six mois et grâce au travail fournit par 90% de l’équipe produit, les huit autres pages sont abouties.
La communication interne au sein de l’équipe produit
Dans cette difficulté, l’équipe composée d’une dizaine de développeurs back, développeurs front et product owner, s’est soudée. Toutes les deux semaines, tous se réunissent à l’occasion de rétrospectives.
"Les rétrospectives nous ont permis de connaître les frustrations de chaque développeur. Lors de ces points, chaque développeur liste 3 choses positives et 3 choses à améliorer. Tour à tour, chacun prend la parole. On débat lorsque l’on est pas d’accord puis on prévoit une solution pour la prochaine rétrospective."
Corentin Pavoine, Product Owner chez Steeple
En parallèle des rétrospectives, les mêlées quotidiennes permettent de connaître l’avancement des tâches et suivre le développement de chacun. Cette gestion de projet en mode agile permet d’adapter le travail aux compétences en interne.
#3 - Le lancement de la version bêta
En décembre 2021, la version bêta de l’administration est proposée à 12 clients, bêta testeurs. Ce premier lancement permet d’obtenir leurs retours et suggestions sur la nouvelle version. Leurs retours ont permis d’apporter les premières modifications à l’administration.
En février, la version est proposée à 200 nouveaux clients. Leurs retours sont récoltés par mail directement par le service Relation Clients chez Steeple. Le plus important était d’identifier les bugs de l’administration.
Depuis le mois de mai, la version est désormais déployée auprès de tous les clients de la solution. L’aboutissement de ce travail de longue haleine prépare la solution à de nouvelles fonctionnalités.
À propos de l'auteur
Team Steeple
Retrouvez tous les articles de l'équipe Steeple, l'expert de la communication interne et de l'expérience collaborateur.