sept. 30

I discovered the CITCON in 2007 when the conference came to Brussels. Since this moment, I felt in love of this kind of session where we can learn so many things by highly motivated people !

So for the third consecutive year, and after Amsterdam in 2008, I came in Paris this year with lots of colleague : Thierry Thoua, Paul Lorena, Marc-André Filion-Pilon and Thibaut Van Spaandonck. Pity that my agile and continuous integration speaker partner Norman Deschauwer could not join us at the end.

But let's summarize a bit the sessions I attended to:

  1. At 10h00, I started with a session I proposed about testing. I wanted to speak about the different level of testing (unit testing, web testing, data oriented testing, ...) but the session was jointed with other one and discussion quickly changed of subject. Many attendees for this session among them Gojko Adzic and Antony Marcano that brought a very interesting experience into the discussion. I can also name Manuel Molinier, Cirilo Wortel, Tiina Kiuru, Markus Hjort, Patrick Debois, Gilles Mantel, Jean-Michel Garnier and Laurent Bossavit.
    We spoke a lot of the notion of done but more at use story level than at technical task level (when you split a story into several tasks, when do you consider your job on thie specific task is over ?) Two definitions were interested : a story is done when everyone feels right about it (everyone meaning the client / product owner, the developper, ...). For Cirilo Wortel, it's when we are able to demo to the client.
  2. At 11h15, I went to a session animated by Steve Freeman. This book author nearly gave us a course about mock objects, accompanied by David Gageot that showed some test code using the Java mock framework mockito. Were also present among others Eric Lefevre, Antonio Goncalves and Gojko Adzic. Some things to record about the session ? Another book reference : Object Design by Rebecca Wirfs-Brock. Check also the website We have spoken a lot of TDD, quoting "Uncle" Bob Martin sentence : The act of writing a unit test is more an act of design than of verification. It is also more an act of documentation than of verification. For Steeve Freeman, for this act of design, we should use interfaces to explicit the relation between objects. Just finding a name for this interface will explicit and document the relation. Check the post of Eric Lefevre for a small debate about this subject between Eric, Steeve and Antonio. The conclusion sentence could be when doing TDD, do not think class first, but role first !
  3. At 14h00, I joined the session proposed by Gojko Adzic about Acceptance testing. Many participants (Henk van Voorthuijsen, Sandrine Raffali, Claire Hernandez, Antony Marcano, Andy Palmer, Jean-Michel Garnier, Cirilo Wortel, Tiina Kiuru, Markus Hjort, Patrick Debois and many more) and lots of information.. Gojko started by its top 5 reasons why agile team fail when they do acceptance testing. The list has been completed during the session.
    1. No collaboration
    2. Focusing on "How" and not on "What"
      • Your test intent is lost inside of all your "FillField" or "ClickButton" sentences
    3. Tests are unusable as live documentation
    4. Expecting acceptance tests to be a full regression test suite
      • Acceptance test are the specifications
      • You do not use acceptance tests to chjeck all your limit values
      • Do not forget other types of tests like Exploratory tests
    5. Focusing on tools
    6. Do not consider acceptance testing as bringing added value
    7. "Test Code" is not maintained "with love"
    8. Management problems : objectives are not aligned between the product owner, the developper, the project manager, ...
    9. No management support
    10. Under estimating skills required to get things done right
    Gojko has detailed all items of this list in its own post about that session. Some reference to read ? The post of Michaël Feathers of 2005 about what is not a unit test.
    Note that we should also avoid to many transformation in the specification. When do they come from ? Ever tried the telephone game ? The client explain what he wants. The analyst will write that down in a document. The developper code acceptance test based on that document. Do you really think the developper will have coded what the client has asked ? Do you have any other "level of indirection" in your company ?
  4. Finally I assisted at 15h15 to the session "Putting Selenium its place". Lots of participant once again counting Cirilo Wortel, Tiina Kiuru, Markus Hjort, Antony Marcano, Andy Palmer and Jean-Michel Garnier. Antony showed us Selenese, ie the Selenium commands and explained us how we could write a unit test using tables listing the commands to use. I am not fan of Selenium, but I found very interesting the demonstration they did about the Page Objects capabalities and how we could extract activities from test to have self explanatory tests.

Unfortunately the last session I was interested in (Architect in Agile) had been cancelled (or moved in a room I couldn't found ?!?). But as I will be present in the next Agile Tour in Lille, I will be happy to facilitate an open space session - since 19h30 - with anyone interested.

Any conclusion to this event ? It was my third CITCON (and the first I was late... sorry guys...). As for each time, I do not have a special aha! moment, but I always like the event as a whole. I like standard conferences, but with Open Space Discussion, I really encountered a real exchange of experiences with all of you ! And I always meet people highly motivated by their job and what they are doing. And this gives me each time enough energy to continue wanting to share experience and ideas with all my team !

So there is one thing sure, if eveything goes well, I will be present for the next edition of the CITCON !

 You want more about the CITCON ?