Scrum Agile Flashcards
3 role du devloppement scrum
- Le SCRUM master: style de management participatif, coach, s’assure de la
productivité (protège l’équipe des interférences externes) et du respect du
processus, anime les rencontres; - Le/la propriétaire du produit: porte la vision du produit, expert du domaine
métier, rédige/explique les scénarios utilisateurs, émet ses priorités et les met
dans le carnet de produit; - L’équipe de développement: transforme les besoins en fonctionnalités
utilisables, est pluridisciplinaire.
2 principaux event de la methodologie scrum
- L’itération («Sprint»): d’une durée fixée par l’entreprise (varie de 7 jours à 30
jours calendrier) débute avec une rencontre de planification de l’itération, continue
avec le travail de développement et la revue d’itération, et se termine par une
réunion de rétroaction (appelée « rétrospective »); - La mêlée quotidienne: une courte réunion de synchronisation des membres de
l’équipe, debout d’un maximum de 15 minutes pour que chacun présente ce qu’il a réalisé hier (en lien avec le carnet de sprint), dire ce qu’il va faire aujourd’hui
(toujours en lien avec le carnet de sprint), et exprimer s’il y a des obstacles qui
ralentissent ou bloquent la progression.
qu’est ce que le sprint 0 ou iteration 0
- Établir les priorités fonctionnelles: Le/la propriétaire du produit va dicter les
éléments du carnet de produit qui doivent être réalisés avant les autres; - Mettre en place/tester l’environnement de travail: Le SCRUM board, la gestion
de version sur GitLab (ou autre), les environnements (Dev, Test), les outils de
tests,…; - Architecture logicielle et technologies: l’équipe fait la conception de
l’architecture haut niveau du «front-end et back-end», décide des technologies,
cadriciels (frameworks), bibliothèques (librairies); - Concernant l’estimation: les éléments du carnet de produit pour lesquels on a
suffisamment d’informations (c-à-d. ceux qui étaient essentiels dans l’ordre de
priorité) peuvent être estimés avec un assez grand niveau de confiance par
l’équipe à ce stade-ci. Ensuite, on estime le reste des éléments du carnet par
analogie.
que faut il faire avant d’entammer un sprint
- Vérification que l’itération précédente est terminée: Tous s’assurent
que les travaux de l’itération précédente sont terminés; - Présentation du propriétaire de produit: Fait une synthèse des
objectifs, jalons et dates cibles et précise les tops « stories » du carnet de
commandes (Quoi et Comment). Il précise quel devrait être le but de la
prochaine itération; - L’équipe: identifie les éléments du carnet de produit à inclure dans
l’itération, confirme les estimations et le but du sprint (ce n’est pas un
contrat ferme), chaque membre identifie ses responsabilités, découpe les
« stories » en tâches (estimables en heures), met ses tâches dans le
tableau SCRUM (doit tenir compte des disponibilités de l’équipe, soit de
70% à 80% de sa capacité pour se protéger des risques et obstacles,
sinon le but du sprint ne tiendrait pas, ni le principe de « rythme
soutenable »).
Qu’est ce qu’une burn down chart
un graphique qui mesure l’avancement du sprint
Possible derive du burn down chart
-une autre personne du management peux s’emparer du burn down chart
-faire attentio a ce qu’on mesure(il faut mesurer ce qui est terminer)
Codage en binome c’est quoi?
un pilote qui code et un copilote qui review le code
avantage:
* L’amélioration de la cohésion de l’équipe : les développeurs ne travaillent plus seuls
devant leur ordi, ils sont en contact permanent → pendant la durée du binôme de 1 à 4
heures par jour car c’est épuisant intellectuellement;
- Le partage des connaissances : il n’est pas rare d’avoir dans une équipe un développeur
particulièrement doué. L’échange précédemment évoqué va tirer toute l’équipe vers le haut
au travers du partage de connaissances; - Un meilleur code : deux développeurs valent mieux qu’un. Le pilote peut se concentrer sur
l’implémentation de l’algorithme, la gestion des contraintes et la validité du code pendant
que son “copilote” veille à ce que le projet aille dans la bonne direction et remplisse
l’objectif premier. De plus, la revue du code en continu effectuée par le “copilote” va
permettre d’obtenir un code optimal, souvent plus court et moins complexe; - Une forte capacité d’échange : les deux
développeurs peuvent échanger sur la meilleure
voie d’implémentation et élucider la problématique pour mieux cerner les objectifs; - Une meilleure gestion du temps : les points précédents devraient typiquement augmenter
la qualité et permettre une implémentation de l’objectif plus rapidement.
quelle sont les trois question a repondre dans une melle quotidienne
- Qu’est-ce que j’ai fait hier dans l’objectif de finaliser une story?
- Qu’est-ce que je vais faire aujourd’hui dans l’objectif de finaliser une
story? - Quels obstacles me ralentissent ou me bloquent?
et le scrum master va en particulier:
* Maintenir le burn down chart, calculer la vélocité (c.-à-d. la productivité
moyenne de l’équipe pour aider aux prochaines estimations)
* Classer les obstacles, les éliminer au plus tôt
revue d’iteration c’est quoi
On vient confirmer la réalisation des éléments du carnet:
– L’équipe démontre au PO les éléments conformes à la
définition de « terminé »
* Si ce n’est pas « terminé » on ne le montre pas et on reporte sa
complétion et sa démonstration au sprint suivant;
* Typiquement, on exécute les tests d’acceptation de chaque élément
terminé → ne devrait pas durer plus de 2 heures;
– Le PO va formellement approuver ou pas chacun des éléments
* Le PO peut aussi ajouter des éléments au carnet et les prioriser pour les
prochains sprints, à la lumière de ce qu’il vient de constater;
– Le SCRUM master va:
* Noter les éléments approuvés ou pas de façon à confirmer la vélocité
finale du sprint (soit en #USP/sprint, soit en #PFC/sprint)
* S’assurer que les éléments non terminés seront pris en compte dans le 14 prochain sprint planning.
reunion de retrospective c’est quoi
– Examiner les résultats des améliorations précédentes;
– Déterminer comment améliorer la situation ou le processus:
* Relation clients, relation entre les développeurs
* Interdépendances avec d’autres projets
* Processus SCRUM
* Problèmes technologiques (ceux qu’on n’a pas pu résoudre en cours de sprint)
– Deux techniques populaires:
* «Good»/ « Bad »/ « Ugly » → Nos bonnes pratiques (on en prend
conscience), nos pratiques irritantes (elles sont faciles à régler), nos mauvaises
pratiques (oh là là, celles-là doivent être réfléchies)
– Le SCRUM master va:
* Noter les améliorations à apporter;
* Soutenir l’équipe à élaborer les solutions de ces améliorations afin qu’elles
15
prennent effet tout de suite après.
Pourquoi separer devloppement et maintenance
-Moins d’indepencdance tends a produire des ligicielle moins maintenable
-Plus difficle d’engager des devloppeur qui vont aussi faire la maintenance
-perte de connaissance quand il y a un depart
et si ils sont separer:
permets de progressivement integrer un programmeur
specialise le personel
bonne communication entre dev et maint et rotation(plan de carriere)
approche du produuit minimal viable?
preferer un petit systeme fonctionel des que possible qui va evoluer plutot que cree un gros projet qui ne sera fonctionnel qu’a la fin
parallele devOps - dev Agile
P.22
5 principe de devops
Qualité
Petits lots
Automatisation
Amélioration continue
Responsabilité