Financial AgileWhere software & financial engineering meet

FitNesse In The Real World

Print

IMG_8245Last week Jorrit and I gave a talk to the Agile Holland group called FitNesse in the Real World. We did this in response to criticism of thought leaders like Robert Martin.  Martin had visited the Netherlands a few weeks earlier and held a dojo.  People enjoyed it.  Enjoyed the free beer.  Enjoyed the chance to meet Martin.  But, there were rumblings. That, they said, would never work in the real world...

As a teacher and advocate of best practice, this used to annoy me.  Real world apologists, I used to think, were bullies, they were trying to assert themselves on the group and create an environment that suited them.  Apologism, like political correctness, is a great way to shut people up.  Who could argue against someone dedicated to the real world? Apolgism is a meta-physical belief. It makes the most sense when placed opposite meliorism. Meliorism is also a meta-physical belief that states we can interfere with processes that would be otherwise natural. Meliorism is at the heart of liberal democracies – we certainly didn’t gain liberty overnight. The best popular treatment I found of this is Grayling’s Toward the Light of Liberty.

Real world apologists are nothing to get angry about, they simply betray a lack of knowledge (ironically, about the real world).

We started the session off with a number of slides and an example of a very complicated FitNesse implementation before entering into a fish bowl (a structured discussion method). A fish bowl is not the device that serves as the living quarters for your aquatic pet but a discussion platform.  The format works best for small groups, we have used it successfully with up to 30 people. The idea for this form of structured discussion was developed in the education community and documented in, among other places, Green(2000).

The open fish bowl - what we did last week - is the way to go if your are planning to have a discussion among experts. It’s simple to set up: set chairs in a circle with four (or five) chairs in the middle. Start off with three group members having a discussion in the middle. As soon as someone in the school circle - the wider circle - feels the need to join the discussion he should occupy the empty seat and join the discussion. Once this happens one of the three already in the middle should take a seat in the school circle, rotating out of the discussion.

This format allows for a very dynamic discussion where all attending can join and be heard. It does require some discipline to stick to the format.  It is best to have a facilitator who enforces the rules of the fish bowl, this helps to keep things running smoothly.

Focus is very important to make the discussion meaningful. To obtain this either send out one or two questions or have a short introduction (presentation) before starting to get everyone on the same page.  Carrying out a short presentation was the way we went.  As mentioned in the main body of this blog, we hoped to use the fish bowl to help us create a synthesis of learning techniques.

We used the bowl for a simple reason, we wanted the material to stick, and so we tried to appeal to a number of our audiences' brain regions, visual, auditory, and of course later, vocal.  This is a cheap trick, taken from primary school, where we create a synthesis over the material by presenting it in different ways.

We, of course, were trying to prove a point.  Novices or advanced beginners - as they call them in the Dreyfus model - can be very vocal, the type of people who say things like, “that won’t work in the real world”.  By briefly touching on what I call the Novice Dilemma, we were hoping to bring awareness to the novices and advanced beginners who find themselves tripping up change efforts. Hunt covers the Dreyfus model in Pragmatic Thinking and Learning.  He comes at the material from a software development angle and, because of this, this is not a bad starting point for anyone who is interested in novices and helping them to improve their abilities.  Dealing with education is one way to deal with real world apologists.

We also presented some very simple ideas for the group to digest.  We started with intent.  If you don’t have it, you don’t have software quality.  I presented this by sharing a quote from Deming:

Quality begins with intent, which is fixed by management.  The intent must be translated by engineers and others into plans, specifications, tests, production.

In highlighting intent, I placed some other markers in the minds of the audience.  This led neatly onto the second idea I wanted people to grasp.  A decent testing effort is a team effort, that’s to say it’s systematic and therefore may require a systematic change.  The best tests are not written by developers but by customers, or, God forbid, testers. I hope that the reader can detect my irony here.  I am a big believer in testing as a craft.  I don’t believe in automate-everything or any other such nonsense that gets thrown around in the community.  I believe in delivering software.  Anyone who thinks that an experienced tester is not useful on a software project is a... is a f... is an advanced beginner. And you can’t just do it.  Iterative testing requires a change in the way projects are planned, staffed - you can’t inspect your process without decent inspectors - etc.  And so, yes, it turns out *they* might be right.  If your real world is stuck in a certain mode of development, then yes, Acceptance Test Driven Development won’t work.

Finally, I asked the audience to think about evolution.  We know that useful complexity evolves when we know what the intermediate steps are (or can be).  We had shown a complicated FitNesse implementation, Martin had shown his teaching model, and we now hope to use the goldfish bowl to discuss the bits in between.  I reminded the audience of Al Gore’s An Inconvenient Truth:

The danger, is that people will go from denial to despair without stopping in between to ask themselves what action they can take.

In the goldfish bowl we discussed, what actions can we take.

All in all, it was a success with many people bringing their experiences to the discussion.  We hoped to have inspired people to forget the technologies and their environments (for a moment) and to engage their imaginations.  It’s lack of imagination and experience that are the real blockers to real world anything, and these are the areas that need to be addressed.

References
Deming, W.E. (1983) Out of the Crisis, MIT Press.
Grayling, A.C. (2007) Toward the Light of Liberty, Walker and Company.
Green, T. (2000). Responding and sharing: Techniques for energizing classroom discussions. The Clearing House, 73, 331–334.
Hunt, A. (2008) Pragmatic Thinking and Learning
, Pragmatic Bookshelf. Available at http://www.pragprog.com/titles/ahptl/pragmatic-thinking-and-learning

Attachments:
Download this file (fitnesse_presentation.pdf)fitnesse_presentation.pdf[FitNesse in the Real World]644 Kb11/05/10 15:07

Add comment


Security code
Refresh

FUVIAZRFEB09F