Monday, 25 July 2011

ATDD is like a fight in the playground.

Does anybody else find that ATDD is like a fight in the school playground?

I've had limited experience with ATDD but from what I've seen you have to be there from story creation (picking a fight) or at least you have to be very nearby (standing near the fighters and therefore at the front of the crowd) otherwise you'll miss it all (because you're stuck at the back of the crowd).

I've found that everybody is willing to get involved with writing the examples but not always together.

If you're not at the front or involved in the fight directly then you have to fight your way through to get involved.

I've found that sometimes before Dev or Test get near a story the AT's are already written. This might be because of a easy to use DSL or having BA's that can code.

Either way it means that the sharing of knowledge and shared understanding of the requirement that happens when people get together to write the AT's is missed out.

It also means there's no discussion. Why would you discuss what is already there and waiting?

It also means that the AT's are written to one person's perception rather than the team.

Which means there is potential for things to be wrong.

I've also found that sometimes Dev's are so eager to code (like kids to candy) that they write the AT's and are off coding and Testers have no idea what's in the AT's and may have to edit and/or add to them.

So how to you handle that? Is there a way? Unless you're monitoring what everybody is doing I don't think there is, all you can try and do is open up communication and ask to be involved in the AT writing and keep asking otherwise you'll be forgotten.

I think ideally the AT's should be written together and Dev's start coding, Test have a longer, deeper think and add more AT's and BA's have a longer, deeper think about whether things are heading the right way.

Sound crazy? What's your experience?