Exploration Through Example

Example-driven development, Agile testing, context-driven testing, Agile programming, Ruby, and other things of interest to Brian Marick
191.8 167.2 186.2 183.6 184.0 183.2 184.6

Mon, 28 Jun 2004

At Agile Development Conference 2004: whither the Agile Alliance (a sketch)

I'm this year's chair of the Agile Alliance board, assisted as vice-chair by Mike "Power Behind the Throne" Cohn.

It was announced at the opening of ADC that the two North American conferences have merged. There will be a single conference next year, name to be selected by a community process. The two separate conferences were a historical accident, really, the kind of thing that happens when an act like the Agile Manifesto succeeds so wildly.

Mike, Todd Little of the Agile Development Conference, and Lowell Lindstrom and Lance Welter of XP Agile Universe have done an excellent job of laying the groundwork for a merged conference that retains what's been special about each. The highest priority of the Agile Alliance is to make the merged conference go well, mainly by staying out of the way except when the organizers tell us to clear away obstacles.

(There may also be smaller local conferences, modeled somewhat after the No Fluff, Just Stuff symposia. I'm especially interested in events that could bring customers (goal donors, product owners, etc.) together for a day. Those people have a tough job, and there's not enough institutionalized support for them.)

The second priority is to use the web site as more of a hub for a community of members. The two goals of the Agile Alliance are to support people already in agile projects and to facilitate the creation of more agile projects. That's mostly about people and interactions, it seems to me.

For example, a long-ago coworker just contacted me and asked if I knew of Agile opportunities in the Madison or Minneapolis areas. I didn't, though I could get him one link closer to people who did. But wouldn't it be convenient if he could go to the Members section of the website and directly find people in an area who would be willing to answer questions about it? People join the Agile Alliance because they want to support a movement, not because they get that much in tangible benefits - so let's enable their altruism.

I've been the webmaster for the Agile Alliance for about two months, so I'll be doing the hands-on work (at least for a while). I'm not awfully qualified, but I see this as an opportunity to learn better website management. Mike Cohn is the Customer for our product backlog, so we'll be having frequent(ish) new releases of features.

Let me give a big thanks to Ken Schwaber, who founded the Agile Alliance and has been the chair until now, and Micah Martin of ObjectMentor, who created the website for us and has been its webmaster until now. (And continued thanks to ObjectMentor for hosting the website.)

## Posted at 10:14 in category /adc2004 [permalink] [top]

Fri, 25 Jun 2004

At Agile Development Conference 2004: ownership

For whatever reason, I was in a scrappy mood this afternoon and evening. And I took offense to the word "own", as used - for example - in this statement "... and the customer owns the acceptance tests".

I have yet to think through my objection, but it's somewhat summed up in the remark I made twice today: "If she owns them, how much can she sell them for?"

Ownership is all about a culture of scarcity and exclusion, not a culture leaning toward abundance and sharing. You own something if you can prevent someone else from using it. Why is ownership a useful metaphor within an agile team?

## Posted at 07:50 in category /adc2004 [permalink] [top]

At Agile Development Conference 2004: the Blindfold Game

My faithful reader will recall that Elisabeth Hendrickson and I were running a tutorial on exploratory testing, but we wouldn't actually test software. Instead, we would have people create a game that they would then test.

Here's an interesting game that one team created. It was intended to demonstrate the value of rapid feedback. It consisted of two teams of two people. A team consisted of a car and a driver. The "car" was blindfolded. He or she moved in a particular direction until commanded otherwise by the driver. The driver could issue commands at fixed intervals, with one exception: if the car was about to damage itself, the driver could say "stop!" Then they would have to wait for the end of the interval for the next command. We didn't want anyone to tumble off the balcony to the ground floor.

Each team had to make it to a gas station. "Gassing up" was represented by a small tented card. The first blindfolded person to pick up the tented card was the winner.

The trick is that one driver could issue commands every twenty seconds, but the second could do it every five seconds. That is, one car had more frequent feedback. Guess which one won?

Yes, it was the one with more rapid feedback. I thought this game worked nicely. For a team whose whimsicality hadn't been beaten out of them, it would be a fun introduction to the virtues of rapid feedback. Give it a try!

There was one interesting twist. We ran a trial of the game in which the intervals were reduced. The five-second car now got instructions every second. The 20-second car got instructions every five seconds.

I'd been the five-second car, now the one-second car. Our team noticed two things. One was that the stress level increased dramatically. Both I and the driver got flustered keeping up with the demands of the clock. The other was that we didn't beat the five-second person by much.

Does this tell us anything about iteration length? Beats me, really. But I have heard comments that make me think that one week iterations are too short for some people, that they feel they don't really get a chance to get into the flow before they have to switch direction. They might well be able to learn to be comfortable with one-week iterations: but is it possible that a given team has a "natural" iteration length that it needs to discover?

## Posted at 07:50 in category /adc2004 [permalink] [top]

Thu, 24 Jun 2004

At Agile Development Conference 2004: verbal explanations

I had a thought at a session yesterday. The agile methods depend a great deal upon the Goal Donor explaining her desires to the development team. And yet, most people are lousy at explaining themselves. They're lousy because they're not taught about:

  • how to use stories (linear narratives) to engage the listener
  • how and when to draw pictures
  • how and when to use examples
  • when to drop into showing vs. just talking
  • the importance of repeating yourself
  • "active speaking": probing to see if you're understood
  • answering the question behind the question
  • ... and so forth (what do I know? I'm a fairly good explainer, but I'm all self-taught.)

As I think about this, I find myself really annoyed. How can people not be taught this broadly useful life skill? It's not as if XP Customers are the only people who have to explain themselves. Where's a writers' workshop for verbal explainers - a forum where an explainer can make an explanation, be videotaped and audiotaped, have listeners offer both due praise and constructive criticism?

If anyone knows of anything like this, please contact me. I want to attend and bring this knowledge back into the agile world.

## Posted at 21:09 in category /adc2004 [permalink] [top]

Wed, 23 Jun 2004

At Agile Development Conference 2004: a LAWST extension

I'm at ADC, and I'll be posting occasional thoughts in this blog category.

Ole Larson did a session on customer collaboration. He ran it in something like the LAWST format. The neat extension was that, in the beginning, the participants broke into pairs. Each person explained her story to her pair, taking exactly five minutes. Then the pair reciprocated. Then the pairs coalesced into quartets, and each person in the quartet again explained her story to the other three. Then the quartets decided which of the four stories would be presented to the whole group, in the conventional tell-the-story, clarifying-questions, open-game format.

The advantages? The story gets more concise and clear each time, and the whole group's time isn't spent on a suboptimal story.

## Posted at 17:13 in category /adc2004 [permalink] [top]

About Brian Marick
I consult mainly on Agile software development, with a special focus on how testing fits in.

Contact me here: marick@exampler.com.




Agile Testing Directions
Tests and examples
Technology-facing programmer support
Business-facing team support
Business-facing product critiques
Technology-facing product critiques
Testers on agile projects

Permalink to this list


Working your way out of the automated GUI testing tarpit
  1. Three ways of writing the same test
  2. A test should deduce its setup path
  3. Convert the suite one failure at a time
  4. You should be able to get to any page in one step
  5. Extract fast tests about single pages
  6. Link checking without clicking on links
  7. Workflow tests remain GUI tests
Permalink to this list


Design-Driven Test-Driven Design
Creating a test
Making it (barely) run
Views and presenters appear
Hooking up the real GUI


Popular Articles
A roadmap for testing on an agile project: When consulting on testing in Agile projects, I like to call this plan "what I'm biased toward."

Tacit knowledge: Experts often have no theory of their work. They simply perform skillfully.

Process and personality: Every article on methodology implicitly begins "Let's talk about me."


Related Weblogs

Wayne Allen
James Bach
Laurent Bossavit
William Caputo
Mike Clark
Rachel Davies
Esther Derby
Michael Feathers
Developer Testing
Chad Fowler
Martin Fowler
Alan Francis
Elisabeth Hendrickson
Grig Gheorghiu
Andy Hunt
Ben Hyde
Ron Jeffries
Jonathan Kohl
Dave Liebreich
Jeff Patton
Bret Pettichord
Hiring Johanna Rothman
Managing Johanna Rothman
Kevin Rutherford
Christian Sepulveda
James Shore
Jeff Sutherland
Pragmatic Dave Thomas
Glenn Vanderburg
Greg Vaughn
Eugene Wallingford
Jim Weirich


Where to Find Me

Software Practice Advancement


All of 2006
All of 2005
All of 2004
All of 2003



Agile Alliance Logo