Reprise et refonte d’application

Vos outils sont-ils adaptés à votre façon de travailler, ou est-ce à vous de vous adapter à eux ? Application web ou mobile, back-office, outil interne : nous reprenons les applications dont le développement s’est arrêté en cours de route, et celles qui sont en service mais devenues difficiles à faire évoluer. Pour un budget mensuel fixe, nous gardons ce qui fonctionne, et nous remplaçons une partie quand elle bloque vos évolutions.

Reprendre ou refondre : partir du code existant

Une application en service contient des règles métier : des calculs, des cas particuliers. Souvent, elles ne sont écrites nulle part ailleurs que dans le code.

Réécrire l’application d’un bloc oblige à retrouver chacune de ces règles, une par une. Pendant ce temps, l’application en service n’évolue plus. La nouvelle version n’apporte rien à ses utilisateurs tant qu’elle n’est pas terminée.

Nous partons donc de ce qui existe. Nous lisons le code, nous le déployons sur un environnement de recette, puis nous décidons avec vous de ce qui se garde et de ce qui se remplace. Une partie se remplace quand elle bloque les évolutions dont vous avez besoin, pas parce qu’elle est ancienne.

Si l’application à reprendre doit aussi échanger des données avec d’autres logiciels, nous pouvons relier les logiciels que vous utilisez déjà.

Une application qui répond à votre besoin et qui évolue sans difficulté n’a rien à reprendre.

Ce que nous faisons sur une application existante

Reprendre un projet en retard

Nous reprenons avec vous la liste des fonctionnalités prévues et la classons selon leur valeur pour les utilisateurs de votre application. Celles qui comptent le plus sont conçues, développées puis mises en production les premières, une par une, chacune après sa recette.

Migrer une application vers des versions à jour

Migrer une application, c’est faire passer son code vers une version plus récente de son framework, vers une autre technologie ou vers un autre langage, sans changer ce qu’elle fait pour ses utilisateurs.

Des tests avant la première modification

Nous commençons par écrire des tests qui décrivent le comportement actuel de l’application. Ensuite seulement, nous la modifions.

Garder ce qui fonctionne, remplacer ce qui bloque

Nous remplaçons une partie quand elle bloque les évolutions dont vous avez besoin, et nous gardons ce qui fonctionne. La décision se prend avec vous, après lecture du code.

Une modification à la fois

Nous mettons en production une modification à la fois, après vérification par le pipeline. En cas d’incident, nous revenons à la version précédente.

Comment se passe une reprise

La démarche est la même pour un projet à poursuivre et pour un projet à refondre.

  • Nous rassemblons d’abord les accès à votre nom : code source, hébergement, nom de domaine, comptes des services tiers.
  • L’application tourne ensuite sur un environnement de recette que nous administrons et qui reproduit la production.
  • Avant toute modification, des tests automatisés décrivent ce que fait l’application aujourd’hui, sur les parcours dont dépendent ses utilisateurs.
  • Chaque jour, vous décidez de vos priorités : la prochaine fonctionnalité à spécifier, à développer, à mettre en production.

Ce que nous avons réalisé

Week and Go, une marketplace de véhicules de loisirs

Pour Groupe Rapido, constructeur de véhicules de loisirs, nous sommes intervenus sur le développement de sa marketplace. Le projet avait pris du retard avec un autre prestataire. Avec le client et ce prestataire, nous avons recentré le développement sur les fonctionnalités essentielles, celles qui apportaient le plus de valeur.

La nouvelle échéance a été tenue avec une application minimale ; les autres fonctionnalités ont ensuite été ajoutées en continu.

La migration d’un CRM en service depuis six ans

Pour un fabricant néerlandais de chaussures de sécurité, nous sommes intervenus sur cette migration : Ember.js 2 vers 3 en syntaxe Octane, Symfony 2 vers 4.

Un budget mensuel fixe, et ce qui reste à vous

Le budget se construit avec vous, à partir de vos chiffres et de vos objectifs : nous fixons ensemble le montant et le problème que votre application doit résoudre. Votre application est utilisable en un mois de développement. Le budget couvre ensuite sa maintenance et ses évolutions, aussi longtemps que vous le souhaitez, pour qu’elle s’adapte en continu à votre activité. La facturation est mensuelle et fixe, sans surcoût lié aux licences ou au nombre d’utilisateurs. Vous connaissez votre dépense exacte avant de commencer.

Le code source, l’infrastructure, le pipeline de déploiement et la documentation sont votre propriété intellectuelle dès le règlement de la première mensualité.

Vous pouvez mettre fin au contrat par écrit à tout moment, sans justification. Pendant le mois de réversibilité, nous accompagnons votre équipe jusqu’à ce qu’elle puisse construire, tester et déployer sans nous.

Les utilisateurs de votre application s’en servent dès le premier mois de développement, et c’est leur usage qui définit la ou les fonctionnalités suivantes.

Pouvez-vous reprendre une application réalisée par un autre prestataire ?

Oui. Nous commençons par rassembler les accès et par déployer l’application sur un environnement de recette. Nous écrivons ensuite les tests des parcours dont dépendent ses utilisateurs, avant toute modification. S’il existe de la documentation, nous la lisons.

Faut-il refaire mon application de zéro ?

Pas forcément d’un bloc. Nous remplaçons une partie quand elle bloque les évolutions dont vous avez besoin, et nous gardons ce qui fonctionne. La décision se prend avec vous, après lecture du code.

Mon application reste-t-elle en service pendant la reprise ?

Chaque modification part en production séparément, après sa recette. En cas d’incident, nous revenons à la version précédente. L’hébergement, les services tiers et l’état du code repris ne dépendent pas que de nous : nous ne promettons donc pas zéro interruption.

Quelles technologies reprenez-vous ?

Nous reprenons les applications en JavaScript et TypeScript (React, React Native, Next.js, Node.js, Ember.js) et en PHP (Symfony, API Platform), des technologies que nous avons déjà fait évoluer. Pour une autre technologie, nous en discutons avec vous dès le premier appel. Nous ne l’écartons pas d’avance.

Combien de temps dure une reprise ?

Nous ne fixons pas de date de fin. Une application en service continue d’évoluer tant que votre activité change. Nous prévoyons le budget mensuel et les jours de développement par mois. Dès le premier mois de développement, ce qui a été recetté part en production.

Comment se décide le budget pour mon application ?

Le budget se construit avec vous, à partir de vos chiffres et de vos objectifs : nous fixons ensemble le montant et le problème que votre application doit résoudre. Votre application est utilisable en un mois de développement. Le budget couvre ensuite sa maintenance et ses évolutions, aussi longtemps que vous le souhaitez, pour qu’elle s’adapte en continu à votre activité. La facturation est mensuelle et fixe, sans surcoût lié aux licences ou au nombre d’utilisateurs. Vous connaissez votre dépense exacte avant de commencer.

Proposez-vous la tierce maintenance applicative (TMA) ?

Oui, dans le même modèle. La maintenance corrective (correction de bugs), adaptative (mises à jour de dépendances, correctifs de sécurité, compatibilité navigateur), préventive (refactoring, optimisation de performance) et évolutive (nouvelles fonctionnalités) sont incluses. Chez DEVEDANOS, la même équipe développe, teste, déploie et maintient votre logiciel en continu, dans le même pipeline.

Y a-t-il une période d’essai ?

Sur le premier mois, les 15 premiers jours ouvrés sont une période d’essai. Vous recettez les fonctionnalités livrées au fur et à mesure. Si vous ne voulez ni des livrables ni poursuivre, aucune facture n’est émise et vous ne devez rien. Si vous voulez mettre votre application en production avant la fin de la période d’essai, vous pouvez nous le demander par écrit : nous émettons la facture des jours travaillés, et la mise en production est réalisée une fois le règlement effectué.

Une application à reprendre ou à refondre ?

Trente minutes pour comprendre votre situation. Si nous pouvons vous aider, un second rendez-vous a lieu sous 48 heures pour construire le devis ensemble.