Maintenance et support logiciels au Rwanda

Corrections, mises à jour et support continus pour un logiciel après sa première livraison.

La maintenance et le support logiciels gardent un logiciel sur mesure fonctionnel et sûr après son lancement : bogues corrigés par priorité, mises à jour de sécurité et dépendances tenues à jour, hébergement et sauvegardes vérifiés, petites améliorations réalisées, et un système documenté pour qu’il ne dépende jamais d’une seule personne. Toute organisation qui fait tourner un logiciel sur mesure sans contrat de maintenance, ou dont le développeur est parti, en a besoin. Cette page couvre les logiciels et applications sur mesure. Le support des plateformes ERP relève spécifiquement du support et de la maintenance ERP.

Qu’est-ce que la maintenance et le support logiciels, et qui en a besoin

C’est un service continu, avec des priorités, des délais de réponse et un périmètre convenus, qui couvre les corrections, les mises à jour préventives et les petites adaptations de votre logiciel et de son environnement d’exécution. Il convient aux organisations dont les systèmes ont été construits par un développeur qui n’est plus disponible, à celles qui font tourner un logiciel jamais mis à jour depuis son lancement, et à toute organisation dont l’activité dépend d’un système sur mesure.

Le problème qu’il résout

Un logiciel se dégrade même quand personne n’y touche. Les bibliothèques accumulent des vulnérabilités connues, les navigateurs et téléphones évoluent, les certificats expirent, les plateformes d’hébergement retirent d’anciennes versions, et les petits bogues s’accumulent en contournements. La connaissance du fonctionnement du système part avec le développeur. Une maintenance régulière garde le système sûr et à jour, et la documentation permet à quelqu’un d’autre que son auteur de le maintenir.

Ce que couvre la maintenance

Corrective. Bogues corrigés par priorité, avec les causes profondes consignées.

Sécurité. Dépendances et frameworks mis à jour, vulnérabilités corrigées et secrets renouvelés.

Environnement. Mises à jour de l’hébergement, de la base de données et du système d’exploitation, et renouvellement des certificats.

Compatibilité. Prise en compte des évolutions des navigateurs, des systèmes d’exploitation mobiles et des règles des magasins d’applications.

Sauvegardes et reprise. Sauvegardes vérifiées et restaurations testées.

Surveillance. Erreurs, performances et disponibilité surveillées, avec alertes.

Petites améliorations, dans la limite d’un forfait mensuel convenu.

Documentation tenue à jour à chaque changement.

Prendre le relais d’un autre développeur

Beaucoup de contrats de maintenance commencent par une reprise. Les premières semaines portent sur l’accès et la compréhension : sécuriser à votre nom le dépôt de code, les identifiants d’hébergement et de base de données, construire un environnement de test fonctionnel, cartographier les dépendances et leur état de sécurité, et documenter le déploiement du système. Les risques urgents repérés lors de cette revue, comme des frameworks non pris en charge, des sauvegardes manquantes ou des secrets exposés, sont corrigés en premier.

Des priorités adaptées à l’activité

  • Critique : le système est arrêté, des données sont exposées ou un processus clé est bloqué. Réponse la plus rapide, traitement jusqu’à résolution.
  • Haute : une fonction principale échoue pour un groupe d’utilisateurs, sans contournement.
  • Normale : un problème avec contournement, ou qui touche un seul utilisateur.
  • Demande : questions, petits changements et améliorations, planifiés dans le forfait mensuel.

Les délais de réponse de chaque niveau sont inscrits dans le contrat, et des rapports mensuels montrent comment ils ont été respectés.

Des mises en production sans surprise

Chaque changement, même minime, suit le même chemin : réalisé dans le gestionnaire de versions, testé dans un environnement séparé, approuvé, mis en production à un moment convenu et consigné avec un moyen de revenir en arrière. C’est cette discipline qui permet de modifier un système pendant des années sans le rendre fragile.

Ce que comprend le travail

  1. Examiner le système, le code, l’hébergement, les dépendances et la documentation.
  2. Corriger les risques urgents repérés lors de l’examen.
  3. Convenir des priorités, des délais de réponse et du forfait mensuel.
  4. Mettre en place la surveillance, un environnement de test et un processus de mise en production.
  5. Maintenir selon un cycle régulier, avec des rapports mensuels.
  6. Planifier les mises à niveau et améliorations chaque trimestre.

Ce qui est inclus et ce qui ne l’est pas

Inclus : la correction des bogues, les mises à jour de sécurité et des dépendances, la maintenance de l’environnement, la surveillance et les rapports mensuels.

Non inclus, sauf cadrage séparé : les nouvelles fonctions et changements importants (voir le développement de logiciels sur mesure), les coûts d’hébergement, les licences tierces et la modernisation majeure (voir la modernisation des systèmes hérités).

Délais habituels et ce qui détermine le coût

La prise en charge d’un système que nous n’avons pas construit demande généralement une à trois semaines, selon son état. La maintenance fait l’objet d’un forfait récurrent qui dépend de la taille et de la complexité du système, du nombre d’intégrations, de l’âge de sa technologie, des délais de réponse, des heures couvertes et du forfait mensuel d’amélioration.

Équipements généralement utilisés

Un gestionnaire de versions, un suivi des demandes, des tests automatisés, une analyse des dépendances à la recherche de vulnérabilités connues, des environnements de test et de production séparés, une surveillance des erreurs et des performances, et des outils de sauvegarde et de restauration.

Les erreurs que nous voyons souvent

Aucune maintenance après le lancement. Du code et un hébergement détenus uniquement par le développeur. Des dépendances jamais mises à jour. Des corrections faites directement sur le système en production. Aucun environnement de test. Des sauvegardes jamais restaurées. Et des mises à niveau repoussées jusqu’à ce qu’un composant atteigne sa fin de support.

Homme d’affaires touchant une icône hexagonale « IT » reliée à des termes de données, de communication et de technologie

Questions fréquentes

Pouvez-vous maintenir un logiciel que vous n’avez pas développé ?

Oui, à condition d’avoir accès au code source, à l’hébergement et à la base de données. Nous commençons par une revue : comment le système est construit, comment il est déployé, ses dépendances et leur état de sécurité, les sauvegardes et les problèmes connus. Cette revue produit la documentation que le développeur d’origine n’a peut-être jamais écrite, et la maintenance part d’une image exacte.

Qu’est-ce qui relève de la maintenance continue, et qu’est-ce qui relève du développement de nouvelles fonctions ?

La maintenance garde ce que vous avez en état de marche et en sécurité : corrections de bogues, correctifs de sécurité, mises à jour des dépendances et frameworks, vérification de l’hébergement et des sauvegardes, compatibilité avec les évolutions des navigateurs et systèmes d’exploitation, et petits ajustements. Les nouvelles fonctions et les changements importants sont cadrés et chiffrés séparément, pour que le forfait de maintenance reste prévisible.

Dans quel délai les bogues signalés sont-ils traités ?

Selon leur priorité, telle qu’inscrite dans le contrat. Les problèmes qui arrêtent le système ou exposent des données passent en premier, avec la réponse la plus rapide ; les problèmes qui bloquent un groupe d’utilisateurs viennent ensuite ; les défauts cosmétiques et petites demandes suivent. Les périodes critiques, comme la clôture mensuelle ou une échéance de financement, peuvent bénéficier d’une couverture renforcée convenue à l’avance.

Que se passe-t-il si la technologie sous-jacente du logiciel devient obsolète ?

Nous suivons les dates de fin de support des frameworks, bibliothèques, bases de données et hébergements dont dépend votre système, et proposons les mises à niveau bien avant la fin du support. De petites mises à niveau régulières coûtent bien moins cher qu’une grosse mise à niveau imposée par un composant non pris en charge. Si un système a trop dérivé, nous recommandons un plan de modernisation plutôt que des rustines indéfinies.

Pourquoi les dépendances logicielles ont-elles besoin de mises à jour régulières ?

Parce que la plupart des logiciels reposent sur des bibliothèques open source, et que leurs failles touchent tous les systèmes qui les utilisent. Log4Shell, révélée en décembre 2021, a montré comment une seule bibliothèque vulnérable intégrée à des milliers de produits pouvait exposer des systèmes dans le monde entier en quelques jours. Savoir quelles bibliothèques vous utilisez, et les mettre à jour rapidement, relève de la maintenance de base.

Un processus que votre logiciel actuel ne sait pas gérer ?

Décrivez ce que font vos équipes aujourd’hui et où cela coince. Nous revenons avec des options, y compris celle de ne rien développer.

Welcome to GENIUS Advanced Technologies, your partner for IT infrastructure, security and software in Rwanda.

Bienvenue chez GENIUS Advanced Technologies, votre partenaire pour l’infrastructure, la sécurité et les logiciels au Rwanda.

Nos services clés

  • Infrastructure informatique et réseaux
  • Cybersécurité
  • Vidéosurveillance et sécurité
  • Microsoft et cloud
  • Développement logiciel
  • Support informatique et services gérés

Choose your language

Choisissez votre langue

You can switch language at any time from the site menu. Vous pouvez changer de langue à tout moment depuis le menu.