Pour qui est cette formation ?
- Développeurs et équipes de développement d’administrations et d’entreprises
- Responsables d’applications métier et de systèmes internes
- Chefs de projet technique et responsables d’équipes de développement
- Cadres des directions du numérique pilotant des développements externalisés
- Ingénieurs informatiques amenés à reprendre du code existant
- Responsables qualité et recette applicative
Les enjeux que nous abordons
L’essentiel du coût arrive après la mise en service. Une application vit des années pendant lesquelles il faut la corriger, l’adapter à une réglementation qui change et la faire évoluer. Un code écrit vite et sans structure se paie à chaque modification, jusqu’au moment où il devient moins coûteux de tout réécrire. Écrire pour celui qui reprendra le code dans trois ans est la compétence la plus rentable du métier.
Le logiciel d’une administration survit à ses auteurs. Les équipes changent, les prestataires aussi. Sans gestion de versions, sans documentation et sans conventions partagées, le départ d’une personne emporte une part de la capacité à maintenir l’application. La question n’est pas de savoir si ce départ arrivera, mais si l’organisation y aura survécu.
La dépendance à un prestataire se construit par défaut. Code hébergé chez le prestataire, absence de dépôt maîtrisé par le client, documentation inexistante, propriété du code non réglée au contrat : beaucoup d’organisations découvrent au moment du renouvellement qu’elles ne peuvent ni changer de fournisseur ni reprendre la main. Ces points se traitent en amont, dans le cahier des charges et dans l’organisation du travail.
La dette technique s’accumule sans alerte. Contournements provisoires devenus permanents, dépendances non mises à jour, tests absents : rien de tout cela n’empêche l’application de fonctionner aujourd’hui, et tout cela rend la prochaine évolution plus lente et plus risquée. Rendre cette dette visible et la traiter par petites touches évite la réécriture complète.
Objectifs pédagogiques
À l’issue de la formation, les cadres formés sont en mesure de :
- Situer les méthodes de développement et leurs conditions d’application
- Travailler en équipe avec un système de gestion de versions
- Conduire et recevoir une revue de code utile
- Concevoir une architecture applicative lisible et évolutive
- Écrire des tests automatisés et les intégrer au travail quotidien
- Identifier, mesurer et réduire la dette technique
- Poser les exigences de maintenabilité et de propriété du code dans un marché
Programme détaillé
Module 1 — Cycle de vie et méthodes
- Expression du besoin et spécification utile
- Approches séquentielles et itératives : ce qui convient à quel contexte
- Découpage en incréments et priorisation
- Estimation, engagement et gestion des écarts
- Rôles dans une équipe de développement
Module 2 — Gestion de versions et travail en équipe
- Dépôts, historique et messages de validation
- Stratégies de branches et intégration des contributions
- Résolution des conflits et réécriture d’historique
- Revue de code : posture, critères, pièges
- Conventions d’équipe et automatisation des vérifications
Module 3 — Conception et architecture
- Découpage en modules et responsabilités
- Séparation des couches : présentation, métier, accès aux données
- Interfaces, contrats et couplage
- Modélisation et évolution du schéma de données
- Choix structurants et décisions à documenter
Module 4 — Qualité du code et tests
- Lisibilité, nommage et complexité
- Tests unitaires : écriture, isolation, jeux de données
- Tests d’intégration et couverture utile
- Automatisation de l’exécution des tests
- Analyse statique et détection précoce des défauts
Module 5 — Maintenabilité et dette technique
- Rendre la dette visible et la hiérarchiser
- Remaniement progressif du code existant
- Reprise d’une application non documentée
- Gestion des dépendances et mises à jour de sécurité
- Documentation utile : ce qui sert, ce qui ne sert pas
Module 6 — Livraison et relation avec les prestataires
- Environnements de développement, de recette et de production
- Préparation des livraisons et gestion des versions applicatives
- Recette fonctionnelle et critères d’acceptation
- Propriété du code, dépôts maîtrisés par le client, réversibilité
- Cas pratique : reprise et remise à niveau d’une application existante
Méthodologie pédagogique
Notre approche met le concret avant la théorie. Plus de 60 % du temps est consacré à des travaux sur poste : travail collaboratif sur un dépôt partagé avec branches et revues, écriture de tests sur du code existant, exercice de remaniement d’une application difficile à maintenir, et rédaction des clauses de maintenabilité et de propriété du code d’un cahier des charges.
Notre équipe accompagne des administrations et des entreprises d’Afrique francophone sur la structuration de leurs équipes et de leurs pratiques de développement. Cette pratique de terrain nourrit chaque session : les cas étudiés sont anonymisés et reflètent les réalités du continent — applications métier développées par des prestataires successifs, code sans documentation ni dépôt maîtrisé, équipes réduites assurant à la fois le développement et l’exploitation, contraintes de continuité sur des applications en service. La formation est complémentaire de celle consacrée aux tests de charge et à la qualité logicielle, qui traite le versant recette et performance.
Durée et modalités
Durée standard recommandée : 5 à 12 jours selon le niveau de profondeur, format intensif ou modulaire selon les besoins de l’organisation.
Modalités proposées :
- En intra-organisation, dans les locaux du client en Afrique francophone
- En inter-entreprises au Maroc (Casablanca, Rabat, Tanger, Fès, Marrakech, Agadir)
- À distance, en classes virtuelles synchrones
- En format mixte : présentiel intensif suivi d’un accompagnement à distance
Taille de groupe recommandée : 8 à 12 participants, avec un poste de travail par personne pour garantir une pratique effective.
Sur-mesure : chaque programme est calibré sur les langages et technologies réellement utilisés par l’organisation, la nature de ses applications et le niveau de départ des participants.
Profil des formateurs
Nos intervenants sont des développeurs expérimentés et d’anciens responsables d’équipes techniques ayant conduit des développements internes et des reprises d’applications existantes. Leur expérience opérationnelle en contexte africain francophone leur permet d’ancrer chaque exercice dans du code réel et d’anticiper les difficultés concrètes — reprise de projets sans documentation, équipes en sous-effectif, négociation de la propriété du code avec un prestataire. Conformément à notre approche, les profils sont présentés par leur expertise, jamais par leur nom.