Blog Ingénierie Comment utiliser GitLab pour le développement logiciel agile
Mise à jour : November 6, 2024
Lecture : 10 min

Comment utiliser GitLab pour le développement logiciel agile

Découvrez comment les artefacts Agile s’alignent avec les fonctionnalités de GitLab et comment se déroule une itération agile au sein de la plateforme.

agile - cover

Vous êtes-vous déjà demandé si GitLab prenait en charge la méthodologie Agile ? Si vous envisagez d'utiliser GitLab, il n'est peut-être pas facile à première vue de comprendre comment les fonctionnalités de la plateforme DevSecOps s'alignent avec les artefacts Agile. Voyons cela ensemble.

Agile est l'une des méthodologies les plus marquantes et les plus transformatrices jamais introduites dans le domaine de l'ingénierie logicielle au cours des dernières décennies. Bien que la terminologie détaillée des concepts Agile ne fasse pas l'unanimité, cette approche a néanmoins eu un impact nettement positif sur les équipes de développement logiciel. Grâce aux processus de développement et de livraison de logiciels agiles, vous pouvez ainsi créer plus efficacement des produits orientés client.

GitLab offre une grande flexibilité et s'adapte à vos pratiques de développement logiciel, qu'elles soient basées sur la méthodologie Agile ou qu'elles s'en inspirent. Découvrez dans cet article une correspondance simple entre les artefacts Agile et les fonctionnalités de GitLab.

Correspondance des artefacts Agile avec les fonctionnalités de GitLab

Artefact Agile → Fonctionnalité de GitLab

L'itération Agile avec GitLab

User stories → Tickets GitLab

Les équipes qui s'appuient sur la méthodologie Agile pour leur développement logiciel commencent souvent par une user story. Celle-ci décrit une fonctionnalité spécifique qu'elles doivent développer pour répondre au besoin des utilisateurs et de l'entreprise. Dans GitLab, les tickets répondent parfaitement à cet objectif. Ils sont essentiels pour les équipes agiles, car ils offrent un moyen efficace de gérer les tâches et les projets. Les équipes de développement logiciel peuvent créer, attribuer et suivre ces tickets. La responsabilisation et la visibilité de l'avancement des tickets sont ainsi clairement établies. Chaque ticket s'accompagne de métadonnées détaillées, telles que la personne assignée, l'itération, le poids et les labels. Cela facilite la hiérarchisation des tâches en fonction de leur priorité et améliore la gestion du workflow tout au long du processus de développement logiciel. La collaboration au sein de l'équipe est en outre optimisée grâce aux fils de discussion, à l'ajout de pièces jointes et aux mises à jour en temps réel, ce qui permet une communication efficace et un travail d'équipe harmonieux.

capture d'écran d'un ticket GitLab

Dans GitLab, un ticket comporte un titre et une description qui offre un espace pour documenter en détail un certain nombre d'informations, comme la valeur métier et les personas pertinents de la user story. La barre latérale de droite intègre d'autres fonctionnalités compatibles avec la méthode Agile, telles que l'epic parent auquel le ticket est rattaché, l'itération dans laquelle le ticket doit être traité, ainsi que le poids du ticket, qui représente l'effort estimé.

Tâche → Tâches

Une user story est souvent subdivisée en tâches individuelles. Dans GitLab, les tâches simplifient la gestion de projet en permettant aux équipes agiles de décomposer les user stories en éléments de travail distincts. Cette fonctionnalité soutient le framework Agile en permettant aux équipes de développement logiciel de créer, d'assigner et de suivre les tâches au sein de leurs projets. En intégrant la gestion des tâches directement dans GitLab, les équipes peuvent maintenir un workflow cohérent et s'assurer que toutes les activités du projet de développement logiciel peuvent être facilement suivies et gérées.

capture d'écran montrant la gestion précise des tâches et le suivi des projets avec GitLab

GitLab permet de générer une plus grande valeur ajoutée pour l'utilisateur final en assurant une gestion précise des tâches et un suivi efficace des projets. Les tâches disposent des mêmes métadonnées que les tickets, y compris la personne assignée, l'itération, le poids, les labels, le suivi du temps ainsi que les fonctionnalités de collaboration. Cet ensemble complet de fonctionnalités permet aux équipes agiles et aux chefs de projet de gérer efficacement la charge de travail, de prioriser les tâches et d'assurer une collaboration fluide entre les différents membres d'une équipe.

Epics → Epics GitLab

D'autre part, les professionnels du développement Agile peuvent définir un niveau d'abstraction supérieur à celui des user stories, souvent appelé « epic ». Il représente un workflow plus large, composé de plusieurs fonctionnalités. Dans GitLab, un epic contient également un titre et une description, tout comme les tickets, mais vous pouvez y rattacher plusieurs tickets enfants pour illustrer cette hiérarchie.

capture d'écran d'epics GitLab imbriqués

Avec les epics de GitLab, les équipes agiles peuvent organiser et gérer efficacement de grands projets en imbriquant des epics jusqu'à neuf niveaux de profondeur. Cette structure hiérarchique offre une vision d'ensemble claire de la roadmap du projet et aide les équipes de développement et les chefs de projet à décomposer des initiatives complexes en composants plus gérables. En utilisant les epics enfants et les epics liés, les équipes peuvent plus facilement suivre l'avancement, les dépendances et les jalons du projet, améliorer leur collaboration et garantir une livraison agile cohérente.

Backlog produit → Tableaux des tickets GitLab

Le Product Owner ou le chef de projet crée généralement ces user stories pour refléter les besoins de l'entreprise et des clients. Elles sont triées par ordre de priorité dans un backlog produit en fonction de leur urgence et de l'ordre de développement souhaité. Le Product Owner communique avec les parties prenantes pour déterminer les priorités et affiner constamment ce backlog. Dans GitLab, le tableau des tickets présente les itérations sous forme de listes. Vous pouvez gérer les workflows par simple glisser-déposer et hiérarchiser facilement votre backlog en assignant les user stories au sprint à venir.

Gif du tableau des tickets GitLab

Sprints → Itérations GitLab

Un sprint correspond à une période de temps déterminée au cours de laquelle le travail doit être effectué. Il peut s'agir d'une semaine, de quelques semaines, voire d'un mois ou plus. Le Product Owner et l'équipe de développement décident ensemble du travail qui sera réalisé lors du prochain sprint. La fonctionnalité d'itérations de GitLab permet d'attribuer une date de début et une date d'échéance aux itérations afin de préciser la période de l'itération. L'équipe place ensuite les tickets dans le sprint en les assignant à cette itération particulière.

En utilisant les itérations, vous tirez parti des capacités avancées de GitLab pour la gestion de projet agile, et gagnez en visibilité et en contrôle sur votre planification et vos livraisons agiles.

Points et estimation → Poids des tickets GitLab

Le Product Owner et l'équipe de développement présentent également les user stories et l'effort technique estimé pour chacune d'elles au sein du projet. Dans GitLab, les tickets ont un attribut de poids pour indiquer l'effort estimé.

Le Product Owner et l'équipe de développement décomposent les user stories en livrables techniques, et, parfois, documentent les plans techniques et l'architecture. Dans GitLab, il est possible de consigner ces informations dans le ticket ou dans la description de la merge request, car c'est souvent au sein de cette dernière que la collaboration technique a lieu.

Au cours du sprint (itération GitLab), les membres de l'équipe de développement logiciel récupèrent les user stories sur lesquelles ils peuvent travailler successivement. Dans GitLab, les tickets ont des personnes assignées. Vous pouvez donc vous assigner un ticket pour indiquer que vous travaillez actuellement dessus. Nous vous recommandons de créer une merge request vide liée à un ticket pour initier immédiatement le processus de collaboration technique, avant même d'écrire une seule ligne de code.

Tableau Agile → Tableaux des tickets GitLab

Tout au long du sprint, les tickets passent par différentes phases, tels que « Prêt pour le développement », « En développement », « En phase de QA », « En révision », « Terminé », en fonction du workflow de votre entreprise. Il s'agit généralement de colonnes dans un tableau Agile. Dans GitLab, les tableaux des tickets vous permettent de définir vos étapes et de déplacer les tickets d'une étape à l'autre. L'équipe peut configurer le tableau en tenant compte de l'itération et d'autres attributs pertinents. Lors des réunions, l'équipe examine le tableau pour connaître l'état d'avancement du sprint du point de vue du workflow.

capture d'écran du tableau des tickets GitLab

Le tableau des tickets GitLab extrait également les tickets de manière dynamique, à l'instar de la liste des tickets GitLab. Mais cela permet des workflows plus flexibles. Vous pouvez configurer des listes individuelles dans le tableau, pour refléter les étapes du tableau Agile. Votre équipe peut ensuite contrôler et suivre les user stories à mesure de leur progression, par exemple, lorsqu'elles passent de la phase « Prêt pour le développement » à « Mis en production ».

Charge de travail de l'équipe → Tableaux des tickets GitLab

Dans GitLab, les équipes agiles peuvent optimiser leurs workflows en créant des tableaux de tickets composés de listes limitées à certains assignés. Cette fonctionnalité vous permet de visualiser la répartition des tâches entre les membres de l'équipe et d'améliorer ainsi la livraison agile. Pour la configurer, accédez à votre projet ou groupe, créez un nouveau tableau dans la section « Tableaux » et ajoutez des listes pour chaque personne assignée. Assignez des tickets aux membres de l'équipe, et ils apparaîtront automatiquement dans les listes correspondantes. Cette vue dynamique permet d'équilibrer la charge de travail et de gérer efficacement les tâches.

Capture d'écran du tableau des tickets GitLab organisé

Organisez un tableau des tickets par personne assignée ou par équipe à l'aide des [labels à portée limitée]. Le tableau des tickets de GitLab est diversifié et prend en charge les workflows tout au long du cycle de développement logiciel.

Graphiques d'avancement → Graphiques d'avancement de GitLab

L'équipe de développement a besoin de savoir si elle respecte les délais en temps réel et d'atténuer les risques à mesure qu'ils se présentent. GitLab offre pour cela des graphiques d'avancement (ou burn-down charts), permettant à l'équipe de visualiser le travail prévu dans le sprint en cours, à mesure de sa réalisation.

À la fin du sprint, l'équipe de développement présente les fonctionnalités développées aux différentes parties prenantes. Avec GitLab, ce processus est simplifié grâce aux Review Apps. Elles permettent de présenter du code qui n'a pas encore été mis en production, mais qui se trouve dans divers environnements de test, de staging ou de test d'acceptation par l'utilisateur (UAT), pour faire l'objet d'une démonstration. Les Review Apps et les fonctionnalités CI/CD sont intégrées à la merge request.

Ces mêmes outils sont utiles pour les équipes de développement et les équipes QA afin de garantir la qualité du logiciel, que ce soit par le biais de tests automatisés à chaque étape du processus CI/CD ou de tests manuels dans un environnement de Review App.

Capture d'écran du graphique d'avancement burndown de GitLab

Le graphique d'avancement de GitLab permet à une équipe de suivre le travail de portée limitée « en cours » à mesure de son achèvement dans un sprint. De cette manière, vous pouvez réagir plus rapidement aux risques et vous adapter en conséquence. Par exemple, vous pouvez informer les parties prenantes que certaines fonctionnalités devront être reportées à un prochain sprint.

Les rétrospectives d'équipe à la fin du sprint peuvent être documentées dans le wiki de GitLab, afin que les enseignements tirés et les actions à entreprendre puissent être suivis au fil du temps. Pendant la rétrospective proprement dite, l'équipe peut consulter le rapport d'itération, qui affiche le tableau d'avancement et d'autres statistiques du sprint terminé.

Commencez votre parcours agile avec GitLab

Vous souhaitez améliorer votre gestion de projet agile ? GitLab offre une suite complète de fonctionnalités adaptées aux équipes de développement logiciel et aux chefs de projet agiles, garantissant une collaboration harmonieuse et des workflows performants. Explorez nos options tarifaires, commencez un essai gratuit et découvrez comment GitLab peut transformer vos processus de livraison agile.

Découvrez toutes les possibilités qu'offre la planification Agile avec GitLab et lancez-vous dès aujourd'hui !

Votre avis nous intéresse

Cet article de blog vous a plu ou vous avez des questions ou des commentaires ? Partagez vos réflexions en créant un nouveau sujet dans le forum de la communauté GitLab. Partager votre expérience

Lancez-vous dès maintenant

Découvrez comment la plateforme DevSecOps unifiée de GitLab peut aider votre équipe.

Commencer un essai gratuit

Découvrez le forfait qui convient le mieux à votre équipe

En savoir plus sur la tarification

Découvrez ce que GitLab peut offrir à votre équipe

Échanger avec un expert