Accueil Nos publications Blog REX DDD Europe 2020 – Sepehr NAMDAR

REX DDD Europe 2020 – Sepehr NAMDAR

Cette année j’ai participé pour la deuxième année consécutive à ma conférence préférée : DDD Europe.
J’aime cette conférence car j’y rencontre des personnes brillantes et qui ont les mêmes appétences que moi sur des sujets de design et d’architecture. De plus, cette conférence est un mix de talks et de workshops, là où d’autres types de conférences sont la plupart du temps constituées uniquement de talks.

Sur les 2 jours de ma participation j’ai assisté à 5 talks et 3 workshops que je vous détaille ci-dessous :

Jour 1 :

Talk de Nick Tune sur le sujet Dissecting Bounded Contexts

Nick Tune est l’un des auteurs du livre Domain Driven Design Principles, Practices and Patterns, mon livre préféré sur DDD. J’attendais donc un talk très intéressant, et effectivement ce fut le cas.
Au début du talk, Nick nous a parlé des termes pouvant être confus dans un langage, et les problèmes susceptibles d’en découler. Il a illustré cela avec quelques exemples très drôles.
Puis il a lié le langage à un contexte pour initier le sujet des Bounded Contexts.
En présentant différents types de Bounded Contexts, il a alors expliqué la relation qu’ils ont entre la complexité d’un modèle et la valeur business.
Vous pouvez trouver un résumé de ce qu’il a présenté sur son article : https://medium.com/nick-tune-tech-strategy-blog/modelling-bounded-contexts-with-the-bounded-context-design-canvas-a-workshop-recipe-1f123e592ab

Workshop Messaging Architecture Katas d’Alexander Langer

Un Workshop avec papier et crayon, dans lequel nous avons appris des notions comme Agrégat, Eventual Consistency, Bus de message, Saga et Actor.
Au début de son workshop, Alexander a fait une simulation d’un système avec l’aide des participants afin de mieux comprendre chaque notion. Ensuite nous avons travaillé en groupe pour résoudre quelques problèmes similaires.

Talk de Susanne Kaiser sur le sujet Preparing for a future Microservices Journey Using Wardley Maps

Dans ce talk, Susanne a illustré dans un premier temps les différentes étapes de construction d’une architecture en MicroService, comme par exemple décider sur l’implémentation des :

  • Message Broker
  • Base de données
  • API Gateway
  • Configurations
  • Monitoring
  • Load Balancing

Dans un deuxième temps, Susanne nous a expliqué comment les Wardley Maps peuvent nous aider à simplifier ce travail d’architecture.
L’idée était de laisser de côté les détails techniques et chercher à trouver les parties de notre business qui apportent plus de valeur métier à notre produit, combinant les concepts de DDD et Wardley Maps.

Talk de James Nugent sur le sujet Database Fundamentals for Event Sources Systems

James est l’architecte chez EventStore. Je vous laisse imaginer à quel point il doit être bon dans son travail, d’autant plus que Nick Tune le confirme.
James a comparé différents outils pouvant nous aider à stocker des événements et nous a exposé les forces et faiblesses de chacun d’eux.
Il a conclu en avançant qu’EventStore était le meilleur car adapté pour répondre à ce problème en particulier.

Talk de Elisabeth Hocke sur le sujet A Story of Mob Programming, Testing and Everything

Elisabeth est testeuse et peu technique. Cela ne l’empêche pas de s’intéresser aux bonnes pratiques de développement, de par sa curiosité et sa soif de découvertes.
Elle a donc décidé de se pencher sur le Mob Programming et ses résultats. Au début ce n’était pas gagné car son équipe estimait que cela représentait une perte du temps.
Un jour, un des membres de l’équipe a dû s’absenter de manière imprévue sur une période longue, or il s’avérait que c’était la seule personne à avoir des connaissances sur une partie du système. Depuis cet épisode, ils ont réalisé qu’avoir des pratiques telles que Mob Programming pourraient les aider dans ce genre de situation. Résultat, aujourd’hui ils ont du Mob de temps en temps en cas de besoin.
Elisabeth a fini son talk en présentant les bonnes pratiques pour préparer un Mob Programming réussi et nous a donné des conseils d’actions et comportements à éviter afin de mener à bien cette organisation.

Jour 2 :

Talk de Kent beck sur le sujet Continued Learning : The Beauty of Maintenance

Je n’ai pas besoin de vous présenter Kent Beck !
Kent s’est rendu jusqu’à Amsterdam car il avait entendu parler de DDD et voulait voir comment cette communauté avait grandi, et vu le nombre de participants, il a été très surpris.
Il a donc improvisé un talk en nous livrant des conseils sur la mise en place des bonnes pratiques de développement.
Par exemple, la duplication de code peut parfois être utile surtout lorsqu’on est en train de régler un bug. Dans ce cas, Kent a conseillé de ne pas modifier directement la partie du code concerné, mais plutôt de le dupliquer et faire la correction sur cette deuxième partie. C’est simple si jamais vous devez revenir en arrière, et lorsque vous êtes sûrs que la correction marche bien vous pouvez supprimer la partie dupliquée.
Il nous a donc conseillé de préparer un environnement facile à modifier pour que notre système soit flexible et par conséquent facilement changeable. Une phrase tweetée par plusieurs participants : “Make Change Easy Then Make Easy Change (MCETMEC)”.

Workshop Outside-in development guided by tests de Marco Consolaro, Pedro Santos et Alessandro Di Gioia

Marco, Pedro et Alessandro sont les auteurs du livre Agile Technical Practices Distilled récemment sorti et dont tout le monde parlait durant DDD Europe.
Ils nous ont fait coder sur un Kata en pair programming, l’objectif étant de suivre leur line conducteur pour réussir le projet en TDD Outside-in.
Vous pouvez trouver le Kata sur le lien suivant : https://github.com/AgileTechPraxis/outside-in-kata

Workshop Transport Tycoon DDD Kata de Christian Folie

Christian nous a présenté un problème qui semble très simple à première vue, mais qui devient très très complexe en ajoutant quelques contraintes.
En groupe nous avons donc essayé de trouver des solutions, et l’objectif était de décomposer le problème afin de le complexifier et trouver une solution générale.
Vous pouvez trouver le Kata sur le lien suivant :
https://github.com/Softwarepark/exercises/blob/master/transport-tycoon.md

© SOAT
Toute reproduction interdite sans autorisation de l’auteur.