Reprise, audit de code et maintenance (TMA) d'applications web

Votre application est en production, et sa dette technique rend chaque évolution risquée. Innéair commence par un audit de code, le diagnostic de reprise. Elle remet ensuite l'application sous tests, modernise son socle et son code legacy, puis en assure la maintenance applicative (TMA), pendant que vos utilisateurs continuent de recevoir des évolutions. Ce service s'adresse aux CTO d'éditeurs de logiciels et aux DSI d'ETI dont une application web porte l'activité.

Si votre équipe est en place, Innéair travaille avec elle et elle continue de livrer ; si elle est partie, Innéair peut reprendre le code. Chez Innéair, c'est Vincent Clair, ingénieur et fondateur, qui intervient lui-même, avec des partenaires indépendants quand un projet le demande.

Quand une reprise devient nécessaire

Une reprise mérite d'être étudiée quand l'application se trouve dans l'une de ces situations.

  • Chaque évolution casse autre chose, et l'équipe évite de toucher à certaines parties du code.
  • Le socle technique est resté sur une version qui ne reçoit plus de correctifs de sécurité, et sa montée de version paraît trop risquée.
  • L'équipe qui a écrit l'application est partie, ou le prestataire précédent a arrêté, et plus personne ne connaît vraiment le code.
  • Les mises en production sont manuelles et rares, et chacune est redoutée.
  • Des traitements n'aboutissent plus quand les volumes grossissent. Chez un client de Loyalty Company, des exports du back-office échouaient même avec 1 Go de mémoire ; une fois réécrits par Innéair, ils sont sortis en une ou deux minutes, avec 10 Mo au plus.

Comment se déroule la reprise d'une application web existante

Chaque étape a un périmètre écrit et un livrable. Vous décidez de la suite à la fin de chacune, et vos utilisateurs continuent de recevoir des évolutions.

  1. Quatre à six jours, au forfait

    Le diagnostic de reprise

    Innéair lit votre code, votre chaîne de livraison et l'historique de vos incidents, puis s'entretient avec votre équipe.

    Vous recevez Un document de décision : l'état de la plateforme, ses risques datés et un plan chiffré à 30 et 90 jours. Ce document vous appartient, et votre équipe ou un autre prestataire peut s'en servir.

    Son prix est fixé par écrit avant le démarrage.

  2. Une livraison tous les deux ou trois jours

    Les lots de fiabilisation

    Un lot de deux à trois semaines remet une zone du code sous tests, monte une version du socle ou automatise la mise en production. Il se termine par une recette.

    Vous recevez Le code livré en production, ses tests et la trace des décisions prises.

  3. Au mois

    Le suivi

    Innéair maintient le socle à jour et prend en charge les corrections : cette maintenance applicative (TMA) est assurée par l'ingénieur qui a fait le diagnostic. Le périmètre et les délais de prise en charge sont écrits dans le contrat.

    Vous recevez Une plateforme tenue à jour et un interlocuteur qui connaît votre code.

Demander un diagnostic

Les engagements d'Innéair pendant une reprise

  • Vos livraisons continuent

    Innéair ne propose pas de réécriture complète avec gel des fonctionnalités. La plateforme évolue par petits incréments pendant qu'elle est fiabilisée.

  • Les tests passent avant la restructuration

    Une partie du code n'est restructurée que lorsqu'elle est couverte par des tests automatisés. Le comportement existant est ainsi protégé avant d'être modifié.

  • Les décisions sont écrites

    Chaque décision difficile à défaire est consignée avec les options écartées et leurs raisons. Votre équipe garde cette trace après notre intervention.

  • L'IA reste sous contrôle

    Le code produit par des agents passe par les mêmes tests et la même revue que le reste. Un outil ou une dépendance n'entre dans le projet que pour résoudre un problème mesuré.

Des reprises menées par Innéair

Les montées de version du socle font partie de la reprise, et elles sont menées pendant que l'application reste en service. Les chiffres ont été mesurés sur place.

Industrie et maison connectée, 2021 à 2025

Somfy

Innéair a repris et fait évoluer pendant quatre ans, sans interrompre les livraisons, la plateforme IoT des installateurs professionnels, dont les micro-services Node.js reçoivent chaque jour des centaines de milliers d'événements. Son interface est passée d'Angular 12 à Angular 20 sans que le logiciel soit arrêté.

  • 0 bogue remonté par le Product Owner sur le moteur d'alertes, cœur métier de la plateforme, depuis sa refonte, contre une vingtaine en un an avant
  • 55 fois moins d'appels vers le back-office commun en test de charge, grâce à la déduplication des requêtes et à un cache à deux niveaux

Lire le projet Somfy

Avis clients et e-réputation, 2018 à 2019

ALM, Groupe 361

Innéair a dirigé l'équipe de développement d'ALM, la plateforme d'avis clients que Groupe 361 édite pour des marques organisées en réseau. Reprise en pleine migration vers Symfony 4, la plateforme a été remise en état de livrer, et sa version 6 a été menée jusqu'à la mise en production.

  • 1 h 50 → 15 min pour exécuter la suite de tests automatisés
  • 52 cas de recette, rejoués jusqu'à ce qu'aucun ne soit plus en échec

Lire le projet ALM

Logistique en Afrique de l'Ouest, 2019 à 2020

KeyOpsTech

Innéair a mené la refonte du moteur qui reconstitue le parcours des colis, pour une plateforme de suivi utilisée par des transporteurs de Côte d'Ivoire et du Sénégal. Leurs téléphones envoyaient les événements en différé, en double ou dans le désordre.

  • 176 → 488 tests unitaires pendant la mission, sous le pilotage d'Innéair
  • 1 base de données en moins : MongoDB, retirée du code et de la production

Lire le projet KeyOpsTech

Conformité documentaire des fournisseurs, 2018

Attestation Légale

Innéair a été lead developer de la plateforme SaaS de conformité documentaire d'Attestation Légale, aujourd'hui Once For All, pendant que l'éditeur préparait son passage à AWS et la refonte de son produit. Elle a stabilisé la plateforme historique, qui devait continuer de servir ses clients jusqu'à son remplacement.

  • 46 000+ utilisateurs de la plateforme, fin 2017
  • 40 types de documents croisés avec leurs certificats pour contrôler le référentiel

Lire le projet Attestation Légale

Voir toutes les réalisations

Questions fréquentes sur la reprise

Une autre question ? Posez-la par e-mail à vincent.clair@inneair.com.

Faut-il réécrire l'application ?

Pas d'un seul coup. Innéair ne propose pas de réécriture complète avec gel des fonctionnalités : l'application évolue par petits incréments pendant qu'elle est fiabilisée. Une partie du code n'est réécrite ou restructurée qu'une fois couverte par des tests automatisés, et le plan remis à la fin du diagnostic dit par où commencer. Chez Somfy, le moteur d'alertes, cœur métier de Serv-e-Go, avait connu une vingtaine de bogues en un an. Innéair l'a refondu fin 2022, après avoir mesuré l'usage réel de ses réglages en production, et le Product Owner n'y a plus remonté aucun bogue depuis.

Innéair peut-elle reprendre une application écrite dans notre technologie ?

Les reprises menées jusqu'ici portent sur des applications écrites en Node.js, TypeScript et Angular, ou en PHP sous Symfony, y compris du code legacy. Pour une autre technologie, un premier échange sans engagement permet de savoir si une reprise par Innéair est raisonnable.

Combien coûte un diagnostic ?

Le diagnostic est vendu au forfait. Son prix dépend de la taille de l'application, et il est fixé par écrit avant le démarrage, après un premier échange sans engagement.

Qui travaille sur notre code ?

La personne qui a réalisé le diagnostic. Chez Innéair, c'est elle qui écrit le code et participe aux échanges avec votre équipe. Si votre projet demande des renforts, Innéair peut s'adjoindre des partenaires indépendants : vous les rencontrez avant qu'ils interviennent, et votre interlocuteur reste sur votre projet.

Que se passe-t-il si votre interlocuteur est indisponible ?

Votre plateforme ne dépend pas de la mémoire d'une personne. Le code livré est couvert par des tests automatisés, chaque décision importante est écrite avec ses raisons, et cette documentation est versée dans votre dépôt. Votre équipe ou un autre prestataire peut repartir de ces traces.

Que récupérons-nous si nous arrêtons ?

Tout ce qui a été produit se trouve déjà chez vous : le code dans votre dépôt, ses tests, les décisions écrites et le document de diagnostic. Innéair vous rend aussi les accès qui lui ont été confiés.

Utilisez-vous l'IA sur notre code ?

Seulement avec votre accord préalable. Les secrets, les données de production et tout ce qui est sensible n'y passent jamais. Le code produit avec un assistant suit les mêmes tests et la même revue que le reste. Pour un projet critique, Innéair peut aussi travailler entièrement sans IA.

Travaillez-vous à distance ?

Oui. Innéair travaille à distance avec votre équipe depuis la Dordogne, et se déplace pour les moments qui le demandent, comme le lancement ou la restitution du diagnostic.

Quels documents fournissez-vous aux achats ?

Innéair fournit son extrait Kbis, son attestation de vigilance URSSAF, son attestation d'assurance responsabilité civile professionnelle et sa décision d'agrément au crédit d'impôt innovation. Elle signe aussi vos accords de confidentialité.

Votre application est devenue difficile à faire évoluer ?

Décrivez-nous l'application et ce qui vous gêne aujourd'hui. Un premier échange permet de savoir si un diagnostic est utile et ce qu'il demanderait.

Demander un diagnostic Voir les réalisations