Skip to main content

Qu'est-ce que le Hype Driven Development ?

Courbe Hype

Qu'est-ce que le Hype Driven Development ?

C'est lorsque les décisions à propos d’architectures logicielles ou de stack technique sont prises sur des avis biaisés, les médias sociaux, et plus généralement les tendances, plutôt qu’en faisant des recherches solides et en considérant l’impact sur le projet.

❓ Comment reconnaître une tendance ?

La plupart ont une structure similaire :

1️⃣ Problème réel et solution 🤨

Une équipe rencontre un pb pour lequel aucune solution n'existe. Elle décide de créer un nouvel outil / librairie / paradigme pour résoudre ce pb.

2️⃣ Annonce publique, buzz et mots clés 📢

L’équipe souhaite partager son travail au reste du monde. Le problème est souvent non trivial, les créateurs sont donc fiers de présenter les résultats de leur solution. Ils écrivent des articles de blogs, font des présentations dans les conférences. Les gens commencent à aimer cette nouvelle solution. Le problème c'est le manque d'information sur le contexte, le problème et les détails de la solution car il faut plus qu’un tweet ou qu’un article de blog pour les présenter.

3️⃣ La folie commence 🤪

Les développeurs "Hype Driven" commencent à lire les articles, participent aux conférences. Bientôt des équipes dans le monde entier commencent à utiliser cette solution. Elles se précipitent sur la solution même si elle ne solutionne aucun de leurs problèmes actuels.

4️⃣ Déception 😭

Les sprints passent, la solution n’améliore pas le quotidien de l’équipe autant que souhaité et demande beaucoup de travail supplémentaire. Il y a beaucoup de réécriture de code, de nouvelles connaissances à acquérir. L’équipe travaille moins vite, le management est énervé. Tout le monde se sent abusé.

5️⃣ Prise de conscience 🤔

L’équipe fait une rétrospective et réalise quelles sont les contraintes de cette solution et à quoi elle pourrait être plus utile. Les développeurs deviennent plus sages… jusqu’à la prochaine tendance.

❓ Comment éviter ce phénomène ?

● Faites des recherches et tester avant de décider

Prenez un peu de temps pour construire le prototype en utilisant cette nouvelle technologie avant de prendre votre décision, le temps que vous puissiez vous faire votre avis, analyser les avantages et inconvénients, ...

● Evaluez les bénéfices/risques

La plupart des technologies sont créées pour résoudre un problème particulier.
Avez-vous ce problème ? Est-ce un gros problème ? Cette solution vous fera-t-elle gagner beaucoup de temps ? Vaudra-t-elle le coût d’apprentissage et/ou de réécriture ?

● Assurez-vous que l'équipe disposent des compétences nécessaires

Un bagage technique solide et l'expérience peuvent aider à prendre du recul. Les personnes qui connaissent différents paradigmes, comprennent les théories de la programmation et ont une bonne culture de l’ingénierie se laissent moins facilement tenter et peuvent être plus hésitantes au moment d'adopter une nouvelle solution.

Source

https://medium.com/@shulard/hype-driven-development-5f01041b0de7