Philippe Bourgau

Philippe Bourgau

Continuous Refactoring Coach
· Twitter · LinkedIn · Blog · Company Website · Detailed Bio ·
· Legacy Code Retreat with test data builders and the Mikado method


Life is too short for boring stuff! I help software engineers to reach a productive and sustainable pace through continuous refactoring of their code and organization.

Speaker Track:

* “Live refactoring with Golden Master and Mikado Method” at XPDays Benelux 2019 with good feedback, at SPA Leeds 2020, and at Legacy of Socrates online conf (

* “Let’s play the built-in quality game” at P3X London 2019 (

* “Live refactoring with Golden Master and Mikado Method” at Agile France 2019 (ROTI 4.5, same video at C++ French meetup
* “How we speed up our tests… a machine learning story” at Agile France 2019

* workshop "Tame the Technical debt beast and enjoy sustainable productivity with 3X" at XPDays Benelux 2018 (

* "BDD Alchemy: Change your Heavy Lead (Pb) Code into Pure Gold (Au)" at P3X 2018 (

* quickie "Boostez your teamwork with Randoris" at Devoxx FR 2018 (, at Agile France 2018, and at Devoxx Be 2018 (

* remote talk "eXtreme Practices " at Agile Tour Beyrouth 2016 ( and at SPA Conf 2017

Legacy Code Retreat with test data builders and the Mikado method (Lab)
by Philippe Bourgau, Ahmad Atwi, Christophe Cadilhac, Damien Menanteau, Patrice Dalesme

“Remember to add tests before you fix any bugs!” That’s very nice in theory, but a lot more tricky in practice.

We know we need to add tests, but it’s easier said than done. In legacy codebases, just setting up the objects for the test is most often an unjustifiable nightmarish 2 weeks of work. Mocks are a common workaround, but mocking legacy codebases usually makes them more difficult to change, not less!

In this hands-on mob programming code retreat, you will combine the Mikado Method with test data builders to build a baby-step plan to add your first test to an open-source legacy codebase. We'll draw a graph of nested test data builders so that we can instantiate test data, without mocks.

In more details:

* Test Data Builders simplify and factorize test data initialization
* The Mikado Method is a technique to split a large refactoring in a graph of baby-steps
* These baby steps remain deployable at any time and don’t block other development
* When we combine these 2 techniques together, we get an incremental plan to create test data builders
* At every step, test data is easier to initialize, the overall testability improves, helping everyone to add more tests
* Driven by usage, critical code parts naturally get testable first
* By making reuse and extend the easiest option, these techniques snowball
* Relying on a visual Mikado graph, these techniques are collaborative by design

During the session, every mob will choose to experiment with test data builders, the Mikado Method, or both, thanks to self-service guides. By the end, we will all compare the different techniques to identify the best ways to apply them.

After this session, you will be able to inject these contagious testing techniques into your team!

Join the mailing list

for updates about the DDD Europe Conference and workshops