The first day of the conference didn’t get started until after lunch, so we took the opportunity to go up the Washington Monument in the morning (I’ve been posting some photos from the trip to Flickr, by the way).
Most of the slides from the conference are on the Agile2007 website, so I’m not going to go into great detail about any of the sessions here (not that I would have anyway!), but just mention the things I thought were interesting enough to specifically note down. This will probably mean that things are a bit jumbled, so sorry in advance.
Jeff Patton (ThoughtWorks)
This was a two-and-a-half hour interactive session, introducing some user-centred design techniques and their use within an agile context. The slides and handouts are on Jeff’s site.
As the title suggests, the session began by covering some topics around user stories, as well as some background on tasks and contexts, using the analogy of rooms in a house (eg the kitchen collects tasks related to food preparation and storage). Using Alastair Cockburn’s goal level model, Jeff suggested not trying to decompose stories below the functional – or “sea” – level (eg “search for a CD by title”), otherwise they start becoming separate tasks which don’t add any value on their own.
There was a mention of the differing definitions of user stories, from Kent Beck’s original “sentence on an index card” to the common “as a… I want to… so that” format, which some people’s prescriptive tendencies have caused me to develop an irrational resistance to (but that’s a rant for another day). One comment was that that format doesn’t work well for stories related to bug fixes or incremental features.
We were also advised to keep UI specifics out of user stories (“find CDs by title” vs “text box for title search”). This is all part of the lean principle of deferring decisions to the latest responsible moment (not the last possible moment!)
We were then introduced to “essential use cases”, which are a lot more lightweight than the ones from RUP. I thought for a minute they might be related to the crazy EssUP process that Ivar Jacobson talked about at BT a while ago, but I think not. Nice to see another use for index cards, and one more reason to use normal ones instead of trying to pre-print them with templates!
Somewhere around this point there was a collective double-take from the audience as someone asked a question and we all realised that it was Alistair Cockburn, who’d sneaked in at the back.
A nice phrase to bear in mind when designing UIs: “could the system tell me more, so I have to click less?”
We then had a go at building a paper prototype interface by drawing elements on index cards, cutting them out and sticking them together. I’m a great fan of low-tech tools, so I was pleased to find a new addition to the toolkit – Pritt repositionable tape! I’ll be buying a roll or two when I get home.
Finally we had a go at running usability testing with the paper prototypes, with one person facilitating the testing, one acting as the computer (swapping “screens” round in response to the test subjects’ input on acetate overlays) and one as observer, taking notes. This seemed like a good way of quickly finding usability issues before you even build anything.
The evening ice-breaker provided a chance to meet a few of the 1100+ attendees, eat and drink (although only the first two beers were free). Having everyone in the same room brought home just how big the conference is.