
La TMATierce Maintenance Applicative, c'est tout simplement le fait de confier la maintenance de son application à un prestataire informatique externe. Concrètement, une fois votre application en production, il faut continuer à la faire vivre : corriger les bugs, ajouter des fonctionnalités, faire évoluer les technologies, améliorer les performances… Bref, s'assurer qu'elle reste fiable et utile pour les équipes. Il y a quelques temps, on avait fait un épisode de podcast sur la TMA qu'on vous invite à écouter si c'est un sujet qui vous intéresse !
La maintenance d'une application, ça ne s'improvise pas ! D'ailleurs, on a souvent tendance à penser que la phase de "build" (la phase de développement d'un logiciel) est la plus complexe et longue… Et bien figurez-vous que souvent ce n'est pas le cas ! La phase de "run" (c'est à dire à partir du moment où l'application a été mise en production) est souvent bien plus critique car elle dure des années, et qu'une application n'est pas figée dans le temps ! Il faut gérer la maintenance corrective (bugs), la maintenance évolutive (les nouvelles fonctionnalités, intégrations, etc.) et la maintenance adaptative (les évolutions des technologies)… Et tout ça, c'est du boulot !
Alors confier la TMATierce Maintenance Applicative à un prestataire externe a notamment plusieurs avantages :
Si vous envisagez de confier la tierce maintenance applicative de votre application à un partenaire externe, quelques étapes clés sont à anticiper. Rien de complexe je vous rassure, mais il est important de structurer la démarche dès le départ pour sécuriser la collaboration.
Voici les grandes phases que nous détaillerons dans la suite de l'article :
On pense qu'une TMA réussie repose avant tout sur une relation de confiance entre le client et le prestataire. Sans cette confiance mutuelle, les échanges peuvent vite se transformer en débats interminables de type "oui, mais…", ce qui fait perdre du temps à tout le monde et n'apporte aucune valeur au projet.
Nous vous conseillons donc tout d'abord de bien clarifier vos attentes en interne, puis de rencontrer plusieurs prestataires pour leur soumettre votre dossier. Ensuite, bien sûr il y a le facteur prix qui jouera, mais surtout, tournez-vous vers une équipe techniquement solide, et qui vous inspire confiance.
Avec le recul, on pense également que vous orienter vers un prestataire dont la taille et l'organisation sont cohérentes avec celles de votre entreprise est une bonne option ! On se comprend généralement mieux quand on partage des modes de fonctionnement et des réalités similaires. La communication est plus fluide, les décisions plus rapides, et le partenariat plus efficace :)
Généralement, il est nécessaire d'avoir un forfait socle fixe permettant de gérer la maintenance corrective selon les SLAs retenus et les backups des équipes. On ajoute à cela un budget pour la maintenance évolutive qui peut être fixe ou variable en fonction des clients ! Dans la vie des applications métiers, les évolutions (techniques ou fonctionnelles) se font au fil de l'eau ; car elles nécessitent à chaque fois un nouveau chiffrage et une planification. Aussi, d'une année à l'autre les budgets peuvent être très variables en fonction des besoins, c'est pourquoi nous conseillons de fonctionner plutôt sur commande/devis pour la partie évolutive.
La réversibilité, c'est l'étape où vous allez transmettre votre connaissance métier au prestataire qui va prendre en charge la maintenance de votre application.
Dans le cas où votre TMA est déjà externalisée, la réversibilité concerne donc l'ancien et le nouveau prestataire. C'est une étape cruciale qui va poser les bases pour le bon déroulement de toute la TMA. Il ne faut donc surtout pas négliger la réversibilité !
Pour réussir votre réversibilité, on vous conseille surtout de prévoir une période suffisamment longue et de la disponibilité pour tous les acteurs clés du projet (historiques et futurs), et de miser sur une bonne communication et de la transparence ! Ne mettez rien sous le tapis, c'est l'occasion de partir sur des bases saines :)
Pour poser des bases solides pour le lancement de la TMA de vos applications, quelques principes simples font la différence :
Une fois le prestataire choisi et le contrat signé, vous entrez dans la phase de run ! C'est là que la TMA prend réellement son rythme de croisière.
Deux éléments sont essentiels pour bien piloter dans la durée :
D'expérience, on vous conseille de ne pas rentrer trop en détails sur le sujet des KPI. Mieux vaut tisser une relation de confiance avec le prestataire et passer plus de temps à résoudre les problèmes qu'à discuter en long et en large sur les différentes manières de mesurer des indicateurs qui n'ont souvent qu'un très faible impact sur la réalité. Le concret avant tout :)
Selon nous, voici les deux indicateurs principaux sur lesquels il faut se concentrer pour mesurer la qualité de votre tierce maintenance applicative (TMA) :
Voilà, on arrive à la fin de cet article, j'espère qu'il vous aura été utile pour comprendre comment fonctionne une TMA (sur la base de nos expériences bien sûr !). En tout cas, retenez que la tierce maintenance applicative ça peut vraiment bien fonctionner si vous avez un partenaire de confiance ! Et que quoi qu'il arrive, c'est essentiel que vous gardiez en tout temps la propriété de votre code, et la connaissance métier de vos applications. Pour ceux qui veulent pousser le sujet encore plus loin, rendez-vous sur votre plateforme de streaming préféré pour écouter notre podcast !
Et si jamais vous avez des questions supplémentaires sur la TMA ou besoin de conseils sur le sujet, vous pouvez contacter notre équipe directement !
Lors d’une mission récente, je me suis retrouvé confronté à un problème de configuration Mysql avec Talend : la limite du nombre de caractères de la fonction GROUP_CONCAT. De quoi s’agit t-il ? Comment augmenter cette taille maximale ? Quelle
Lors du développement d’application JSF sur JBoss 7, ce type d’erreur bien particulier peut arriver. Nous allons voir comment y remédier.
On vous explique pas à pas les étapes dans JMeter pour enregistrer un scénario, définir les variables, configurer les threads et les loops dans JMeter. Le but : lancer les tirs de performance !