Utilisation de l'atelier craft

Retrouvez notre article de blog dédié à l'Atelier Craft ici : https://promyze.com/ateliers-craft-une-maniere-efficace-de-definir-et-diffuser-les-bonnes-pratiques-de-developpement/

Retrouvez également la vidéo de notre Webinar sur cet atelier ici : https://youtu.be/9tjeOPPZ1ks?t=792 

 

La section de Themis destinée à l'atelier craft a plusieurs objectifs :

  1. Définir des bonnes pratiques de développement
  2. Laisser l'équipe identifier ses bonnes pratiques sur leur propre code afin de voir si elles sont bien suivies et si certaines nouvelles bonnes pratiques ne devraient pas être créées
  3. Diffuser ces bonnes pratiques au sein des équipes de développement

Page Bonnes pratiques

Dans un premier temps, la page Bonnes pratiques va lister ces pratiques, vous pouvez ajouter / modifier / supprimer des bonnes pratiques depuis cette page.

Themis vient avec une liste de bonnes pratiques définies par défaut.

Capture_d_e_cran_2020-03-09_a__16.07.39.png

Les équipes de développement doivent définir leurs propres bonnes pratiques, elles peuvent les définir sur la base de celles qui sont intégrées à Themis par défaut : 

  • Nom
  • Description
  • Exemple de code incorrect
  • Exemple de code correct
  • Solution de refactoring pour une amélioration (exemple : "utiliser un extract method", "utiliser un objet comme paramètre")
  •  Catégories

Vous pouvez copier / coller du code directement depuis votre IDE dans le champ texte de la bonne pratique, le formatage sera conservé.

N'oubliez pas d'utiliser les catégories pour retrouver plus rapidement vos bonnes pratiques.

Les catégories vous serviront également par la suite à identifier des bonnes pratiques spécifiques à un projet ou un langage, si c'est le cas, n'hésitez pas à ajouter une catégorie "Projet Libra" par exemple.

 

Page Atelier craft

Création d'un atelier

Sur la page Atelier Craft, vous devez commencer par créer un Atelier.

Cet atelier a plusieurs attributs :

  • Un nom
  • Une liste de projets concernés
    • Cette liste de projets sera utilisée pour la proposition des fichiers qui seront utilisés lors de l'atelier.
    • Même si vous n'êtes pas développeur sur le projet concerné par l'atelier, vous pouvez toujours participer à celui-là.
  • Une périodicité
    • La périodicité est utilisée pour créer des sessions d'atelier, si vous sélectionnez hebdomadaire par exemple, un nouvel ensemble de fichiers vous sera proposé chaque semaine.

Vous avez plusieurs manières de créer vos ateliers :

  • Un atelier pour un projet précis
  • Un atelier pour un langage (plusieurs projets peuvent donc rentrer dans le périmètre)
  • Un atelier global sur l'ensemble des projets afin de partager des bonnes pratiques générales, indépendantes du langage utilisé

Capture_d_e_cran_2020-03-09_a__16.28.01.png

 

Réalisation d'une session d'atelier

Lorsque vous rejoignez un atelier, vous arrivez sur une session de cet atelier (sur une période précise).

Themis va alors vous proposer une liste de fichiers à utiliser comme support pour l'identification de bonnes pratiques.

Cette liste de fichier est sélectionnée selon plusieurs critères : 

  • Nombre de modifications récentes
  • Nombre de lignes modifiées (ajoutées / modifiées) récemment
  • Nombre de lignes modifiées en un seul bloc

En plus de cette liste de fichier, vous pouvez ajouter un snippet de code manuellement, il vous suffit d'ouvrir la liste des fichiers (en haut à gauche) et de cliquer sur Ajouter manuellement.

L'objectif de cette vue est que chaque membre de l'équipe aille identifier des sections de code où certaines bonnes pratiques de développement n'ont pas été suivies.

Contrairement à une revue de code classique, l'objectif premier n'est pas que l'équipe effectue une modification sur le fichier pour qu'il respecte cette bonne pratique. Le but est de partager cette bonne pratique avec les membres de l'équipe afin que tout le monde la comprenne et la valide afin que celle-ci soit intégrée dans les habitudes de chaque membre de l'équipe dans les prochains développements.

La session d'atelier se découpe en 3 parties :

  1. Le mode Atelier
  2. Le mode Revue
  3. Le Récapitulatif

craftWorkshop.png

 

Le mode Atelier

Dans ce mode, chaque membre de l'équipe peut déposer des tags de bonne pratique sur les fichiers listés dans l'atelier.

Il suffit pour cela de glisser / déposer un tag depuis la liste de droite sur le fichier située à gauche.

Vous pouvez ne sélectionner qu'une partie des bonnes pratiques en cliquant sur la flèche à droite du champ de recherche afin de les filtrer par catégorie.

Capture_d_e_cran_2020-03-09_a__17.35.49.png

Les tags sont triés par ordre décroissant de date de création.

Une fois qu'un tag est posé vous pouvez y ajouter des commentaires en cliquant dessus.

Capture_d_e_cran_2020-03-09_a__17.45.29.png

Les développeurs peuvent contribuer à l'atelier quand ils le souhaitent.

L'idéal étant que chaque développeur contribue à chaque session d'atelier afin de créer un échange récurrent autour de ces bonnes pratiques.

 

Le mode Revue

Dans le mode revue, vous ne verrez pas uniquement vos tags mais les tags de toute l'équipe.

Cela vous permettra de comprendre des bonnes pratiques que vous n'avez peut être pas identifiées.

Capture_d_e_cran_2020-03-09_a__17.47.57.png

Dans cet exemple, Camille a identifié un problème lié aux commentaires qui découpent le code d'une méthode. Cependant, d'autres membres de son équipe ont identifié également un problème de chaîne de caractère placée en dur dans le code, ainsi que plusieurs morceaux de code dupliqués.

Cette partie permet les échanges sur ces bonnes pratiques, soit à but de les diffuser à tous les développeurs et développeuses, soit dans l'objectif d'en créer des nouvelles à partir de notre propre code.

 

Le mode Récapitulatif

Dans cette partie, vous retrouverez comme son nom l'indique, un récapitulatif des différentes bonnes pratiques qui ont pu être identifiées sur la session d'atelier en cours.

Cela permettra à l'équipe d'identifier ses axes d'amélioration actuels en mettant en avant les bonnes pratiques qui ont été le plus identifiées sur la session.

Capture_d_e_cran_2020-03-09_a__18.02.30.png

Dans cet exemple, il s'agit en particulier des fonctions trop complexes, ainsi que de tests manquants.

En cliquant sur le bouton Par utilisateur, vous retrouverez en détail, quels sont les développeurs qui ont identifié ces bonnes pratiques.

Capture_d_e_cran_2020-03-09_a__18.06.08.png

Dans cet exemple, Camille a identifié de nombreuses fonctions trop complexes. Cependant, Pierre, de son côté, a identifié des problèmes liés à des magics numbers, de la duplication de code etc.

Chaque développeur possède ses propres connaissances sur les bonnes pratiques de développement. Il est donc important de capitaliser sur les connaissances de chacun afin de diffuser les connaissances et d'obtenir un code plus uniforme et de meilleur qualité avec l'apport de chacun des membres de l'équipe.

 

 

Cet article vous a-t-il été utile ?
Utilisateurs qui ont trouvé cela utile : 0 sur 0

Commentaires

0 commentaire

Vous devez vous connecter pour laisser un commentaire.