Neural Project InstituteLa certification en gestion de projet à l'ère de l'IA

Guide de la gestion de projet par secteur · Informatique, logiciel et numérique

Gestion de projet logiciel : cycle de vie, rôles, méthodes, KPI

La gestion de projet logiciel désigne la planification, la coordination et la livraison de produits et de fonctionnalités logiciels, de la découverte et des exigences à la conception, au développement, aux tests et à la mise en production, puis à l'amélioration continue. Comme un logiciel est facile à modifier mais difficile à estimer, la plupart des équipes logicielles gèrent le travail en itérations courtes et mesurent l'avancement par du logiciel opérationnel plutôt que par des documents.

À retenir

  • La gestion de projet logiciel fonctionne en itérations courtes, car les exigences évoluent et les estimations sont incertaines.
  • Choisissez Scrum, Kanban, DevOps ou une approche pilotée par le plan en fonction du travail, et non par habitude.
  • Suivez la livraison avec les métriques DORA et les indicateurs de flux, et la réussite avec des indicateurs de résultats.
  • Utilisez les outils de suivi des tickets des développeurs pour le travail au niveau du code et une plateforme comme Wrike pour la planification transverse.

Ce qui distingue la gestion de projet logiciel

  • Les exigences évoluent. Les utilisateurs ne savent souvent ce qu'ils veulent qu'une fois qu'ils voient quelque chose fonctionner.
  • L'estimation est incertaine. Une grande partie du travail consiste à résoudre des problèmes nouveaux : les équipes établissent donc des prévisions sous forme de fourchettes à partir du débit historique plutôt que de dates fixes.
  • La livraison peut être continue. Grâce aux tests et au déploiement automatisés, les équipes peuvent livrer plusieurs fois par semaine.
  • Dette technique. Les raccourcis pris pour tenir une date ralentissent le travail futur s'ils ne sont pas résorbés ; voir dette technique dans Scrum.
  • La qualité est intégrée. La revue de code, les tests automatisés et la supervision remplacent les longues phases de test en fin de projet.
  • Produit et projet se recoupent. De nombreuses équipes logicielles sont des équipes produit pérennes : le « projet » est donc souvent une release, un ensemble de fonctionnalités ou un nouveau produit.

Pour un aperçu de la façon dont les équipes appliquent les valeurs agiles au code, voir Développement logiciel agile.

Le cycle de vie du développement logiciel (SDLC)

PhaseCe qui se passePrincipaux livrables
DécouverteComprendre les utilisateurs, les problèmes et les objectifs ; tester les idées par la recherche et le prototypageÉnoncé du problème, vision produit, premiers prototypes
PlanificationCadrer le périmètre, prioriser le backlog, planifier les releases et la capacitéProduct Backlog, plan de release, feuille de route
ConceptionDesign UX, architecture et approche techniqueMaquettes, décisions d'architecture, critères d'acceptation
DéveloppementÉcrire le code par petits incréments, avec revue et tests automatisésIncréments opérationnels et testés
Tests et assurance qualitéTests automatisés, exploratoires, de performance et de sécuritéRésultats des tests, anomalies corrigées
Mise en production et déploiementDéployer en production, souvent via un pipeline de livraison continue automatiséFonctionnalité livrée, notes de version
Exploiter et améliorerSurveiller, assister les utilisateurs, mesurer les résultats et réinjecter les enseignements dans le backlogIndicateurs, incidents, nouveaux éléments du backlog

Dans les équipes agiles, ces phases se déroulent en continu au sein de chaque itération plutôt qu'une seule fois de manière séquentielle ; voir le cycle de vie du développement agile.

Rôles clés

RôlePrincipales responsabilités
Product Owner / product managerPorte la vision produit et ordonne le backlog selon la valeur ; voir Product Owner Scrum
Engineering managerEncadre les ingénieurs, le recrutement, leur progression et les pratiques de livraison
Tech lead / architectePorte l'orientation technique et la qualité
DevelopersConcevoir, développer et tester le logiciel
Ingénieurs QA / de testStratégie de test, automatisation et tests exploratoires
Designers UX / produitRecherche utilisateur et conception d'interface
Scrum Master ou responsable de la livraisonFacilite le processus et lève les obstacles ; voir Rôle du Scrum Master
Chef de projet ou de programme techniqueCoordonne les dépendances, les calendriers et les risques entre équipes ; voir chef de projet technique
DevOps / SREConstruit les pipelines, l'infrastructure et la fiabilité

Méthodologies pour les projets logiciels

ApprocheQuand elle convientRemarques
ScrumÉquipes produit développant de nouvelles fonctionnalités avec des retours réguliers des parties prenantesSprints de durée fixe avec planification, revue et rétrospective
KanbanÉquipes de maintenance, de plateforme et de support ; flux continuLimites de WIP et indicateurs de flux au lieu de sprints
Extreme Programming (XP)Équipes qui veulent une forte discipline d'ingénierieProgrammation en binôme, développement piloté par les tests, intégration continue
DevOpsÉquipes qui développent et exploitent leurs propres servicesAutomatise la livraison et partage la responsabilité de l'exploitation
cascade ou cycle en VContrats à périmètre fixe et logiciels réglementés ou critiques pour la sécuritéPhases formelles, documentation et vérification
Frameworks de mise à l'échelleNombreuses équipes sur un même produitVoir SAFe et LeSS

Comparez les options dans Agile vs cascade et Kanban vs Scrum.

Documents et modèles essentiels

DocumentFinalitéModèle
Product BacklogListe ordonnée de tout ce dont le produit pourrait avoir besoinModèle de Product Backlog
User storiesExigences rédigées du point de vue de l'utilisateurModèle de user story
Plan de sprintObjectif du sprint et travail sélectionnéModèle de Sprint Planning
Plan de release et feuille de routeCe qui est livré et quand, dans les grandes lignesModèle de plan de release, modèle de feuille de route produit
Document d'exigencesPour le travail à périmètre fixe ou sous contratModèle de document d'exigences métier
Notes de rétrospectiveAméliorations convenues par l'équipeModèle de Sprint Retrospective
registre RAIDRisques et dépendances entre équipesModèle de registre RAID

Tenez en parallèle des registres de décisions d'architecture et une Definition of Done ; voir Definition of Done.

KPI de la gestion de projet logiciel

KPICe qu'il mesureUsage type
Fréquence de déploiementFréquence à laquelle le code arrive en productionCapacité de livraison (métrique DORA)
Délai de mise en production des changementsTemps entre le commit et la mise en productionVitesse du flux (métrique DORA)
taux d'échec des changementsPart des déploiements provoquant une défaillanceQualité des mises en production (métrique DORA)
Délai de rétablissement du serviceRapidité de correction des défaillancesRésilience (métrique DORA)
Temps de cycleTemps entre le début du travail et son achèvementPrévoir et repérer les goulots d'étranglement
Débit ou vélocitéTravail terminé par semaine ou par sprintPrévision des releases
Défauts échappésAnomalies détectées après la mise en productionEfficacité des tests
Indicateurs de résultatsAdoption, conversion, rétention ou réussite des tâchesSi le logiciel apporte de la valeur

Voir Indicateurs et KPI agiles pour en savoir plus.

Défis courants

  • Dates fixes avec périmètre fixe. Fixez la date et faites varier le périmètre, et établissez des prévisions en fourchettes à partir du débit passé.
  • Dette technique croissante. Réservez à chaque sprint de la capacité pour le refactoring et le travail sur la plateforme.
  • Dépendances entre équipes. Cartographiez-les de façon visible, alignez-vous sur des jalons communs et utilisez un Scrum of Scrums ou une synchronisation similaire.
  • Trop de travail en cours. Appliquez limites de WIP et terminez avant de commencer.
  • Mesurer la production plutôt que les résultats. Reliez les mises en production aux objectifs des utilisateurs et de l'entreprise, pas seulement aux story points.

Logiciels pour la gestion de projet logiciel

Les équipes de développement ont besoin d'un outil de suivi des tickets connecté aux dépôts de code et aux pipelines CI/CD, ainsi que de tableaux, de backlogs et de rapports de sprint. Les product managers et les responsables de la livraison ont aussi besoin de feuilles de route, de vues des dépendances entre équipes et de rapports lisibles par des non-ingénieurs.

Jira est largement utilisé par les équipes d'ingénierie pour le suivi des tickets. Wrike est l'option tout-en-un la plus solide de notre classement des outils lorsque le travail logiciel doit être planifié avec le marketing, le support, le design et d'autres services, avec des tableaux agiles et des vues Gantt au même endroit. Voir aussi Outils logiciels Scrum.

Modèles gratuits sur ce sujet

Parcourir tous les modèles

Questions fréquentes

Qu'est-ce que la gestion de projet logiciel ?

La gestion de projet logiciel consiste à planifier, coordonner et livrer des produits et fonctionnalités logiciels, de la découverte au développement, aux tests et à la mise en production, puis à l'amélioration continue.

Quelles sont les phases de la gestion de projet logiciel ?

Les phases du SDLC sont la découverte, la planification, la conception, le développement, les tests, la mise en production et l'exploitation-amélioration, généralement répétées en itérations courtes.

Quelle est la meilleure méthodologie pour la gestion de projet logiciel ?

Scrum convient aux équipes fonctionnalités, Kanban au flux continu et au support, les pratiques DevOps aux équipes qui exploitent leurs propres services, et le cycle en cascade ou en V au travail à périmètre fixe ou réglementé.

Que sont les métriques DORA en gestion de projet logiciel ?

Quatre mesures de livraison issues du programme DevOps Research and Assessment : fréquence de déploiement, délai de mise en production des changements, taux d'échec des changements et délai de rétablissement du service.

Qui assure la gestion de projet logiciel dans une équipe agile ?

Les responsabilités sont partagées : le Product Owner gère les priorités, l'équipe planifie son propre travail, le Scrum Master facilite et un chef de projet technique peut assurer la coordination entre les équipes.

Comment estimer en gestion de projet logiciel ?

Utilisez des estimations relatives comme les story points ou établissez des prévisions à partir du débit et du temps de cycle historiques, et exprimez les dates sous forme de fourchettes.

Quels documents utilise-t-on en gestion de projet logiciel ?

Un Product Backlog, des user stories, des plans de sprint, des plans de release, des feuilles de route, une Definition of Done et, pour le travail sous contrat, un document d'exigences.

Quels logiciels utilise-t-on en gestion de projet logiciel ?

Des outils de suivi des tickets comme Jira connectés aux dépôts de code, complétés par une plateforme comme Wrike lorsque le travail logiciel doit être planifié avec d'autres services.

Comment gère-t-on la dette technique en gestion de projet logiciel ?

Rendez-la visible dans le backlog, réservez de la capacité à chaque itération pour la résorber et intégrez-la aux discussions de planification avec le Product Owner.

Quelle est la différence entre la gestion de projet logiciel et la gestion de produit ?

La gestion de produit décide quoi construire et pourquoi ; la gestion de projet logiciel se concentre sur la manière et le moment de la livraison.

Quelles compétences la gestion de projet logiciel exige-t-elle ?

Compréhension du processus de développement, pratiques agiles, gestion des risques et des dépendances, communication avec les parties prenantes techniques et métier, et prévisions fondées sur les données.