Jardin vécu avec les différents désagréments identifiés (enfants partout, herbes et fleurs envahissantes, arbres problématiques...)

[Programmez] Contexte, bugs et botanique

Article publié initialement dans le magazine Programmez!

Introduction

Qu’est-ce qu’un bug ?

Comment gérer les bugs ?

Faut-il nécessairement les corriger ?

Ne doit-on corriger que des bugs ?

Il n’y a pas de « bonne » réponse à l’ensemble de ces questions. La notion de « bug » est floue. On n’y trouve d’ailleurs pas, à l’heure actuelle, de définition sur le glossaire de l’ISTQB. La définition Larousse est celle-ci :

« Défaut de conception ou de réalisation d’un programme informatique, qui se manifeste par des anomalies de fonctionnement de l’ordinateur. »

Ici le bug est lié à un défaut de conception entrainant un comportement qui diverge par rapport à l’attendu… Sans pour autant définir ce qui est vraiment l’attendu.

Pour définir l’attendu on peut imaginer une déviance par rapport à des exigences ou des spécifications, une déviance par rapport à l’attendu d’un utilisateur, un comportement surprenant ou tout élément pouvant provoquer de la frustration.

La définition n’étant pas claire il devient complexe de savoir comment les gérer et donc s’il faut les corriger. Comment s’assurer que des comportements non désirés mais non considérés comme bugs en fonction de la définition adoptée fassent l’objet de correctifs (ou au moins d’une réflexion sur leur correction).

Bref, ces réflexions ne nous aident pas à beaucoup avancer… Et comme le présente Zoé Thivet dans sa conférence, la notion de bug semble encore buggée.

Afin d’apporter des vrais éléments de réponse, je vous propose de sortir du logiciel et de penser à un jardin.

Il était un jardin…

Imaginons le jardin d’une maison indépendante décrit avec ce plan :

Le jardin est organisé autour d’une maison avec des carrés concentriques subdivisés par des zones bien délimitées.

Parmi ces zones on a :

  • Un parterre fleuri autour de la maison dont le rôle est de mettre en valeur la maison
  • Un chemin en gravier qui permet de faire le tour de la maison et d’accéder facilement à toutes les parties du jardin
  • Une zone jardin décoratif en face de la maison afin de proposer une belle vue aux personnes dans la maison
  • Une zone de jeux pour permettre aux enfants de s’amuser dans le jardin sans abîmer des plantes ou zones non prévues à cet effet
  • Une zone avec des arbres fruitiers pour avoir des fruits de saison 
  • Une zone pour le potager afin de permettre d’avoir des fruits et légumes de saison tout au long de l’année
  • Une haie (de cyprès) qui fait le tour de la maison, qui protège des regards extérieurs et du vent

Maintenant que la description théorique est finie, place à la vie dans ce jardin ! Et son lot de désagréments.

Les désagréments constatés

Maintenant que notre jardin a été conçu et implémenté, il est temps de vivre avec !

Malheureusement, malgré une conception qui paraissait super, il y a différents éléments qui posent questions, créent une gêne voire même sont carrément problématiques.

Voici la liste des désagréments qui sortent du lot :

  1. Certains habitants de la maison ont découvert qu’ils avaient une allergie au pollen des cyprès. Les mois de février et mars sont très compliqués !
  2. Il y a de l’herbe qui pousse dans le potager, ce qui gêne dans l’arrosage et la récolte
  3. Le parterre de fleurs génère des graines et des fleurs poussent sur le chemin
  4. Des herbes rampantes non désirées poussent sur le chemin
  5. Des fleurs décoratives s’avèrent envahissantes avec notamment des racines traçantes
  6. Il n’y a que très peu de fleurs en automne et au début de printemps dans le jardin décoratif
  7. Il y a un cerisier dans la zone de jeux, un arbre fruitier qui devrait être dans une autre zone et qui peut potentiellement être dangereux pour les enfants.
  8. L’albizia du jardin décoratif demande énormément d’entretien et crée des tensions avec les voisins
  9. La terre du potager n’est pas très riche, ce qui génère de petites récoltes
  10. L’arrosage doit être quotidien en été. Un jour sans arrosage peut engendre la mort de plantes
  11. Les enfants ont tendance à jouer dans tout le jardin
  12. Les framboisiers sont avec les arbres alors qu’il serait plus logique, pour les habitants, de les avoir dans le potager qui est suffisamment grand.

Au final le jardin ressemble plus à cela :

C’est sûr, il va falloir faire quelque chose car la multiplication des désagréments devient vite problématique.

Il me semble également important de faire remarquer que certains des désagréments, comme celui des plantes envahissantes, sont pourtant conformes avec la description initiale.

L’organisation de la gestion des désagréments

Avant de décider quoi que ce soit, il est important de connaître ses ressources comme les outils (ou l’argent pour en acheter) et le temps que l’on peut accorder au jardin.

Ensuite, il faut également savoir quel est le degré d’irritation de chaque désagrément, son évolution à long terme et les moyens possible pour les corriger.

Pour le temps et les ressources, c’est assez simple :

  • La famille a 30 minutes par jour du lundi au vendredi et jusqu’à 6 heures par week-end sur les 3 prochains mois (soit 6x3x4 = 72 heures) pour la correction des désagréments. Le reste du temps est dédié à l’entretien du jardin avec notamment l’arrosage (1 heure par jour en été) et son évolution.
  • La famille a un budget pouvant aller jusqu’à 1000 € pour l’achat d’un outil ou faire venir des pros. Le budget ne sera dépensé qui si cela est vraiment nécessaire
  • La famille dispose déjà d’outils fonctionnels de bases pour l’entretien de son jardin (petite tronçonneuse, taille haie, pelles, pioche, broyeur, râteaux… et de l’huile de coude !)

Il est maintenant important d’étudier chaque désagrément.

Pour cela nous établirons plusieurs paramètres pour chacun d’eux. Ces paramètres seront :

  • La conformité au plan (Conforme / Non conforme)
  • Le niveau de désagrément : négligeable, relativement gênant, problématique et horrible
  • Les évolutions possibles : se règlera tout seul, stable, empire, empire très vite
  • Les solutions envisagées et leurs coûts
  • Les actions retenues

Ces différents critères permettront de créer des fiches de désagrément (ou tableaux Excel ! :o) afin de prioriser les désagréments :

N° désagrémentNom
ConformitéNiveauEvolution
Solutions possibles
Action retenue

La gestion des désagréments

Il est temps de passer à l’analyse de ces désagréments. Le résultat obtenu par la famille est celui-ci :

N° 1Nom : allergie aux cyprès
ConformeNiveau : problématiqueÉvolution : stable
Solutions possibles :
Couper les cyprès mais besoin de refaire une haie pour se protéger du vent (demande environ 40 heures de travail ou fait intervenir un professionnel sur 4 jours : 1200€)
Inconvénient de la solution : il y a des cyprès chez les voisins !
Faire une désensibilisation
Action retenue
Faire la désensibilisation car il n’y a pas de preuve que l’autre solution soit efficace
N° 2Nom : herbe dans le potager
Non conformeNiveau : relativement gênantÉvolution : empire
Solutions possibles :
Pailler le potager ou mettre du paillis (demande achat de « mulch » (Environ 250€ nécessaire pour tout le potager) ou d’un broyeur (500€ mais réutilisable régulièrement))
Action retenue
Achat d’un broyeur car permet de gérer les restes des tailles des arbres (et de la haie) et d’avoir un paillage pour tout le jardin
N° 3Nom : fleurs sur le chemin
Non conformeNiveau : négligeableÉvolution : se règlera tout seul
Solutions possibles :
Ne rien faire car les fleurs c’est joli et ce n’est que des annuelles
Arracher les pousses des fleurs à la main ou avec des outils
Enlever les graviers pour mettre du géotextile et remettre des graviers
Action retenue
Ne rien faire
N° 4Nom : herbes rampantes sur le chemin
Non conformeNiveau : relativement gênantÉvolution : empire très vite
Solutions possibles :
Enlever les graviers pour mettre du géotextile et remettre des graviers
Arracher à la main (à faire régulièrement, par exemple pendant l’arrosage)
Gratter la terre avec un outil pour enlever rapidement des nombreuses herbes puis remettre les graviers déplacés
Mixer les 2 points précédents
Ne rien faire (mais les graviers seront alors très vite recouverts) et c’est moche !
Action retenue
La solution d’arrachage à la main ou avec les outils en fonction du moment
N° 5Nom : fleurs envahissantes
ConformeNiveau : relativement gênantÉvolution : empire très vite
Solutions possibles :
Arracher toutes les fleurs envahissantes à la main (chronophage : 4 heures) maintenant
Arracher les fleurs envahissantes plus tard (+ 1 heure par mois)
Ne rien faire (mais perdre les autres fleurs puis avoir ces fleurs partout dans le jardin)
Action retenue
Arracher les fleurs maintenant puis replanter avec de nouvelles non envahissantes et qui ont une floraison étalée sur l’année (lié au point N°6)
N° 6Nom : manque de floraison au printemps et en été
ConformeNiveau : négligeableÉvolution : stable
Solutions possibles :
Ne rien faire
Mettre des fleurs qui fleurissent aux moments souhaités (ex : crocus au début du printemps)
Action retenue
La 2ème car en synergie avec le point N°5
N° 7Nom : Cerisier dans la zone de jeux
Non conformeNiveau : négligeableÉvolution : stable
Solutions possibles :
Ne rien faire : propose de l’ombre en été aux enfants
Installer une balançoire sur une grosse branche (50 € et 1 heure)
Couper l’arbre (tronçonneuse trop petite, nécessite d’investir dans un nouvel outil : 300 €)
Action retenue
Installer la balançoire car cela fait plaisir aux enfants !
N° 8Nom : Arbre qui demande beaucoup d’entretien
ConformeNiveau : problématiqueÉvolution : empire
Solutions possibles :
Couper l’arbre (la tronçonneuse actuelle est suffisante : 2 heures)
Ne rien faire (très chronophage et relation tendue avec le voisinage)
Tailler l’arbre (4 heures pour diviser l’entretien par 2 mais arbre moins beau et à réeffectuer tous les ans)
Action retenue :
Couper l’arbre
N° 9Nom : terre du potager pauvre
ConformeNiveau : relativement gênantÉvolution : se règlera tout seul
Solutions possibles :
Ne rien faire
Pailler le potager à l’aide du broyeur (synergie avec désagrément N°2)
Ajouter du fumier dans le potager (1 heure)Acheter du mulch
Action retenue
Le paillage au fur et à mesure des broyages (étalé sur plusieurs mois) et le fumier
N° 10Nom : arrosage quotidien
ConformeNiveau : problématiqueÉvolution : stable
Solutions possibles :
Ne rien faire (mais ne pas pouvoir partir en week-end ou en vacances sans trouver quelqu’un pour arroser)
Installer un arrosage automatique sur les parcelles demandant le plus d’arrosage (400 € + 8 heures)
Action retenue
Arrosage automatique pour le potager, le parterre et le jardin décoratif.
Dans le cas de vacances, demander à quelqu’un de passer 2 à 3 fois par semaine pour les arbres et regarder si tout va bien
N° 11Nom : les enfants sont partout !
Non conformeNiveau : relativement gênantÉvolution : se règlera tout seul
Solutions possibles :
Ne rien faire, en grandissant ils feront plus attention
Définir avec les enfants des zones interdites : parterre, potager et jardin décoratif
Installer des barrières pour empêcher les enfants d’aller là où on ne le souhaite pas (1000+ €, 30 heures de travail)
Action retenue :
Définition des zones interdites avec sanction s’ils y vont seuls
N° 12Nom : des framboisiers avec des arbres
Non conformeNiveau : relativement gênantEvolution : stable
Solutions possibles :
Les déplacer dans le potager pour ne pas oublier de les arroser et leur proposer, à terme, une meilleure terre (2 heures de travail)
Ne rien faire pour les laisser à l’ombre ce qui est important pour les framboisiers
Action retenue
Ne rien faire car les framboisiers seront plus heureux à l’ombre des arbres

Remarques sur les choix effectués

Comme vous pouvez le constater, la moitié (6/12) des désagréments est conforme à la description initiale. Cela ne veut pas dire qu’ils ne sont pas réels et qu’il ne faut pas agir.

Des solutions ont été sélectionnées en pesant le pour et le contre mais aussi en fonction des ressources et des synergies possibles comme avec le broyeur qui permet de gérer le problème de la qualité de la terre et de l’herbe dans le potager (les désagréments N°2 et 9).

Il est temps de faire un bilan de ce cette gestion des désagréments !

Les résultats de la gestion des désagréments

Les choix à faire n’ont pas été simples.

Néanmoins, on peut constater que la gestion des désagréments permet de :

  • Rester dans le temps total disponible (moins de 30 minutes par jour) et en tout moins de 50 heures de travail sur les différents week-ends
  • Rester dans le budget de 1000 € (950 €)
  • Résoudre des problèmes qui ont été jugés comme les problèmes principaux.

Vous noterez que :

  • Le niveau de désagrément dépend du ressenti de la famille qui a le jardin
  • Le temps et l’argent disponibles dépendent aussi de la famille
  • L’évolution n’est pas forcément facile à anticiper
  • Les solutions apportées dépendent des connaissances de la famille
  • Les solutions ne sont pas toujours celles auxquelles on pense dans un premier temps

Au-delà de la caractérisation des désagréments, la manière de les solutionner ou non va également dépendre du contexte et de possibles synergies. Les solutions peuvent venir de l’extérieur comme pour l’allergie aux cyprès. Il est donc important de prendre en compte des éléments extérieurs au jardin.

Le jardin, après la correction des désagréments, n’est ni le jardin conçu ni le jardin tel qu’il était avant les modifications apportées pour répondre aux désagréments. Il ressemble plus à cela :

Comme vous pouvez le constater : il n’y a plus d’herbes dans les allées, les enfants ne sont plus dans le potager… et la haie est toujours là !

Enfin, le jardin continue de vivre, de nouveaux désagréments vont apparaître, certains qui n’étaient pas visibles vont le devenir et il sera indispensable, pour la famille de continuer à l’entretenir !

Et le rapport avec les services numériques et les bugs ?

Il est maintenant temps de revenir au sujet initial : les bugs !

Les « bugs » sont des éléments difficiles à définir ! Ils sont, à l’image des désagréments, plus ou moins importants, plus ou moins conforme à de l’attendu (présent dans des spécifications, exigences ou User Storys)… ont leur apportera (ou non) des solutions plus ou moins variées.

Si l’on prend l’exemple de la haie, cela pose un vrai problème à un membre de la famille qui est allergique. La solution a été de garder la haie mais de faire une désensibilisation. On peut faire le parallèle avec un service numérique compliqué à utiliser. Une solution pourrait être d’améliorer l’UX mais aussi de proposer une formation adéquate afin de pouvoir se servir correctement et facilement de ce logiciel.

Si l’on se penche maintenant sur la gestion des bugs. Il est important de savoir les organiser et les regrouper afin d’avoir une vue d’ensemble. Cela permet de se poser et de définir, avec les moyens disponibles, la meilleure stratégie dans son contexte.

Pour les bugs on parle généralement d’impact (ou sévérité) et de priorité. Dans le jardin on a abordé un niveau de désagrément (pour la sévérité) et une évolution de ce désagrément. Il est important de ne pas se fier à un seul indicateur !

De même, il est préférable d’étudier plusieurs manières pour répondre à un bug. L’idéal est de trouver la cause racine et de régler cela mais ce n’est pas toujours possible. Les échanges avec des membres de l’équipe sont très souvent particulièrement fructueux et permettent de trouver des solutions auxquelles on n’avait pas forcément pensé.

Enfin, dans certains cas, la solution peut être de ne justement rien faire et de laisser les choses évoluer comme elles le souhaitent, certains bugs sont devenus des fonctionnalités très appréciées (comme les dossiers cachés !)

Un grand merci ) Julien Cahu et Zoé Thivet pour leur revue et leurs retours qui ont permis d’améliorer fortement cet article.

Pensez à rejoindre le groupe « Le métier du test » si vous souhaitez échanger sur le test

Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles

N’hésitez pas à faire vos propres retours d’expérience en commentaire.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

culture générale

La politique de test: la boussole des tests dans l’entreprise

La politique de test est un concept que je trouve très intéressant mais qui au final voit assez peu le jour concrètement dans un document… ou lorsque c’est le cas se retrouve être un document « mort » c’est à dire inutile, inutilisé et non maintenu. C’est d’ailleurs en partant de ce

Lire la suite »
Image de mise en avant du webinaire améliorer la qualité lors d'une transformation Présentateurs: Manaëlle Perchet et Jean-François Fresi
Présentation

[Webinaire] Améliorer le niveau de qualité lors d’une transformation

Revivez le webinaire de la taverne du jeudi 6 février sur l’amélioration de la qualité lors d’une transformation: Voici le support: Pour cet événement la taverne a eu le plaisir d’accueillir des spécialistes de la transformation: Manaëlle PERCHET Passionnée par les enjeux liés à l’adaptation au changement, Manaëlle s’engage à

Lire la suite »
Qualité

Principes SOLID simplifiés (1/5): Responsabilité unique

Les principes S.O.L.I.D dans un contexte d’automatisation des tests L’acronyme S.O.L.I.D a été inventé par Michael Feathers à partir des principes de programmation orientée objet identifiés par Robert Cecil Martin, Ces principes visent à rendre le code plus lisible, facile à maintenir, extensible, réutilisable et sans répétition. L’automatisation des tests c’est un vrai projet de développement et lorsque

Lire la suite »