table des matières
Objectif
- Mettre en place une gestion de projet SCRUM sur la forge logicielle Gitlab
Après avoir suivi cette page, vous aurez configuré :
- Les Labels de votre groupe
- La cadence d’itération (Sprint)
- L’Epic board “Release Planning” avec la priorité des Epics
- L’Issue Board “BackLog” avec les story par Itération
- L’Issue Board “Current Sprint” avec les story prêtes, en cours, terminées
A la fin de la configuration, vous serez capable :
- De suivre vos Epics par Itération (en cours, à suivre, terminée)
- De suivre les Story des Epics de l’itération en cours (prête, en cours, terminée)
- De suivre la réalisation de l’itération dans le BurnDown Chart
- D’utiliser le Workflow Gitlab pour réaliser le projet
Sitographie
La configuration proposée est extraite du tutoriel officiel
Structure Scrum dans Gitlab
Voici la teminologie SCRUM retenue dans Gitlab
- Les features sont les Epic. Idéalement, une Epic correspond à un Sprint (ou Itération)
- Un Sprint à une durée de 1 à 2 semaines.
- Les Jobs Story sont les Issues de votre projet.
- Une Story (ou issue) est un développement d’1 à 2 jours.
- Les Tasks sont des sous-parties d’une issue. Nous ne traiterons pas les Tasks ici.
- Une Task dure quelques heures.
Mise en place de l’environnement
L’environnement SCRUM est à mettre en place au niveau d’un groupe.
La première action est donc de créer un groupe et ensuite de créer votre projet dans ce groupe.
Création du groupe
- Créer un groupe (
exemple KeySafe
)
Création du projet
- Créer un projet (
exemple Trousseau de clés
) dans le groupe - Initialiser le projet sur votre poste
- Faites un premier commit sur la branche
main
Créer les labels
- Les labels vont être utilisés pour catégoriser vos tâches.
Au niveau du groupe (Manage > Labels), créer les labels suivants :
Labels de statut
Ces labels sont des éléments qui suivront vos taches au fur et à mesure de la réalisation
status::ready
status::in progress
status::done
Labels de type
Ces labels vont être utilisés pour définir le type de travail
type::story
Label d’Epics
Ces labels vont être utilisés pour définir la priorité des Epics
priority::now
priority::next
priority::later
- Page de création d’un label
- Liste (partielle) des labels créés
Mise en place de la cadence des Itérations (Sprint)
Il faut préciser combien de temps dure une Itération. Par exemple, si le projet est prévu pour 3 semaines et que l’équipe décide qu’une itération dure 1 semaine, il y aura 3 Itérations.
- Depuis le groupe Plan > Iterations
- Cliquer sur
Nouvelle cadence d’itérations
- Title :
Sprint KeySafe
- Sélectionner la date de début du projet
- Duration :
1
(1 itération dure 1 semaine) - Upcoming iterations
2
(le projet dure (1+2) 3 semaines)
Les Epics
Une Epic est une fonctionnalité que l’équipe peut réaliser en une seule itération.
Créer le tableau de planning des Epics
- Accéder un planning des Epics (Plan > Epics Boards)
- Créer un nouveau tableau
Release Planning
(Dans le coin en haut à gauche)
Ajouter les Epics du projet
- En haut du tableau Open, appuyer sur le
+
- Entrer le nom de l’Epic
Quand j’utilise l’application, je veux créer un utilisateur et son mot de passe principal
- Comme pour la précédente, créer toutes les Epics du projet
- Voici des exemples d’Epics
- Quand j’utilise l’application, je veux créer un utilisateur et son mot de passe principal
- Quand j’utilise l’application, je veux retrouver mes mots de passe enregistrés
- Quand j’utilise l’application, je veux que mon utilisateur puisse créer une liste de mots de passes personnel
- Ajouter les listes
priority::now
,priority::next
etpriority::later
au tableauRelease planning
- Déplacer vos Epics en fonction de leurs priorités
Diviser vos Epics en story
Faites ce travail pour l’Epic en
priority::now
- Aller dans le tableau des Epics (Plan > Epic Board)
- Cliquer sur l’Epic pour définir les story de votre Epic
- Exemples de story
- Je veux créer un utilisateur principal
- Je veux pouvoir stocker plusieurs mots de passes
- Je veux pouvoir mettre à jour et supprimer un mot de passe
Issues Boards
C’est dans les Issues Board que vous allez suivre l’avancement du travail sur un Sprint.
Il va falloir créer 2 Issues Boards.
BackLog
. Pour spécifier quelles issues sont prévues pour cette ItérationCurrent Sprint
. Pour suivre l’avancement du travail sur le Sprint en cours
Créer board de Backlog
- Plan > Issue Board
- Create new Board (en haut à gauche) : Nom
BackLog
- Ajouter des listes
- Selectionner Iterations
- Créer une liste pour les deux prochaines itérations
- Déplacer les story de l’itération en cours sur la liste correspondante
Créer un Issue Board pour l’Itération
- Plan > Issue Board
- Créer un nouveau tableau appelé
Current Sprint
- Cliquer sur Expand
- A coté d’Itération cliquer sur Edit > Current
Vous avez un tableau des Issues filtré par Itération.
Les story de l’itération apparaissent dans le tableauCurrent Sprint
- Ajouter 3 listes au tableau
Current Sprint
- New list → Label
status::ready status::in progress status::done
Finaliser la configuration des Issues
La gestion de projet Agile est un cours séparé.
Pour finaliser la configuration, vous allez donner un poids aux Issues en fonction de leur difficultés (1, 2, 3, 5, 8, 13)
- Pour chacune des story
- Cliquer sur la story
- Indiquer le label
type::story
- Indiquer le poids de la tâche selon sa difficulté estimée
- Déplacer les Story sur le label
status::ready
Info Gitlab est configuré pour un projet SCRUM. Vous êtes prêt à travailler !
Remarques Toutes les actions de configuration ont été réalisées dans le groupe.
Noter que :
Les Epics sont liées à une itération
Les story d’une Epics sont liées à un projet
L’équipe projet retrouve les story de l’itération dans l’issue board du projet et les gère dans le projet.
Pour savoir comment utiliser le Gitlab Workflow, consulter la page suivante.
Gitlab Workflow