Day 2 of Agile 2009, and Johanna Rothman welcomed everybody to the conference and advised that they had 1,350 participants this year from 38 countries. Furthermore, they had 1,300 submissions that they brought down to 300 presentations.
The sessions I attended on Day 2 were as follows:
Keynote: I Come To Bury Agile, Not To Praise It
Alistair Cockburn kicked off his keynote with live bagpipes, you can view the session or download the slides.

- software development is a competitive game – positions, moves, strategies
- conflicting subgoals – deliver software, setup for next game (refactor, document) – moves are invent, decide, communicate
- situations almost never repeat
- as number of people double, communications change fundamentally (crystal clear project classification scale)
- Jeff Patton suggests to video the whiteboard design, rich, 5-7 minutes sweet spot
- always trying to simulate two people at a whiteboard
- distance expensive – 12k per year penalty
- speed – can people detect issues, people care to fix it, can they effectively pass information
- craft teaches us to pay attention to skills and medium (language)
- programming changes every 5 years, need to keep up with cycle
- learn skills in 3 stages – shu (learn a technique, most people learn by copying, one shu does not fit all!, kick people out of shunning box), ha (collect techniques, look for clues) and ri (invent / blend techniques, help guide with ri level responses)
- everybody is waiting on a decision, looks like a manufacturing queue
- continuous flow, small batches of work
- lean – watch queues, not enough resources
- you want knowledge to run ahead of cost – start of project grow knowledge and reduce risk then business value, need to balance
- at end of project, trim tail to deliver or delay to get better
- Tom DeMarco – Slack (agile organization)
- don’t like end of project retrospectives, too late, inside the project you can change anything, after delivery, 2 weeks can be too often because nothing has changed
Release Planning (The Small Card Game)
I had been recommended by numerous people to get along to this tutorial being run by Chet Hendrickson and Ron Jeffries (one of the original XP’ers and both authors of the purple Extreme Programming Installed) and I wasn’t disappointed.

The session ran sort of like this:
- we ask the product ogres to put information onto cards
- this is an important project – managers in clouds who have managers in clouds have stated it must be done in six months
- sort cards into 6 columns, need all 45 cards done in six months
- Round 1 – plan out the project for 6 months) – our team just put 6 columns and layed the cards out evenly (8, 8, 8, 7, 7, 7), some teams went a little light at the beginning and end, another team decided to do everything in 4 months, another team everything in 1 month!
- Round 2- nature (Chet) said we got 5 out of 8 cards done , so replan the next 5 months (this number was different for different tables). We asked if all stories were of equal effort, but nature did not know
- Round 3 – nature said we got 6 cards done, so, now, how long will the project take? What if you were told that the number on the upper right hand corner is effort and you can get 10 done per month (we had a total of 90)
- At this point, some teams put small stories at the end of each iteration and put more valuable stories at the beginning (customer value, we were told, was the number in the lower left)
- Round 4 – now we need to decide which month to ship (we chose two months)
- Round 5 – given we now know the value, we were told not to replan, take total and how on a burnup chart to see burn
- Round 6 – replan using cost and value (we did some maths and got 6:1. 4:1 and 3.5:1, maximum value in column 1 was 75, then 45 and then 30)
- the team that ships every month gets the same value sooner
- fewer products cannot meet this than you realise
- how long will it take us and how much is it worth are the fundamentals
- value is simple if you use simple values (we used 3, 6, 9)
- dependencies are far less common than we believe
Facilitation Patterns & Antipatterns
This was a workshop led by Steven “Doc” List from ThoughtWorks and involved some great playing cards that I am still hoping may get sent my way one day.
UPDATE 13/10/2009: About 12 hours after posting this, a deck of cards arrived in the post at work. Many thanks Steven and ThoughtWorks for keeping your promise and sending the cards through!
- facilitation about leading the group not running the group
- want to enable decisions
- leave bias, prejudice, opinions at the door, otherwise get somebody else to do it
- meetings should be collaborative and enjoyable, but must have an agenda
Patterns (these are behaviours not identities)
- Switzerland – neutrality, whether facilitator or participant need to decide if you are being neutral, a participant that is neutral not adding value, good value as a facilitator
- Guide – show the way, avoid potholes and pitfalls, help move through the process by the way I interact with the group and help the group interact
- Curious George – always aks questions for no particular purpose
- Sherlock Holmes – seeking data and information to reach a conclusion, passion for information
- Benevolent Dictator – always for own good, but always taking control, believe have more experience than the rest of team, always believe they know best but with a good heart (like relatives)
- Repititor – more he tells you, the more likely you will get it
- Professor Moriarty (the evil genius) – manipulating other people to do work for him, cooerce other people to ask questions, manipulation
- Gladiator – all about combat, being right is more important than what they are right about, enjoy getting into an argument, always one on one so rest of group usually disengages, loud, active, don’t give up easily
- Superhero – here to rescue rather than how to do things, bring special skills, knowledge and powers so you obviously want to use them, will always standup or represent you whether you need them to do that or not
- Orator – champion of not being done, wants to be heard all of the time
- Conclusion Jumper – smart, mean well, want to move on quicker, jump to what they believe is the conclusion
How to deal with these behaviours, do the facilitation four step
- Interrupt – what is relevant to controlling the group
- Ask – “Make it a question, do you mind if I ask Charlene…”
- Redirect – redirect the conversation
- Commit – live up to the commitment
- ground rules – work agreements, how we choose to behave, usually get 5 or 6 when you ask the group, put them on a wall, need group to be self managing, don’t want to be a policeman, unless you have to
- starfish – keep doing, start doing, stop doing, do more of, do less of – look for idea clusters, useful anytime not just retrospectives, useful because there is no room for many roles because people are writing things down
- circle of questions – around in a circle, ask question to person next to you, usually have to cut it as it will keep going, eliminates dominination as everybody gets to ask and answer, pre-emptive or remedial
- margolis wheel – circle of chairs outward and outside circle inwards. Inside are answers. Each person gets input from 6 people and ask 6 people, can be lengthy
- parking lot – facilitator does not own it (can’t determine what goes in or out), should ask “should we park this”, must be dealt with before the end of the meeting (see Collaboration Explained – Jean Tabaka)
For more information:
Finally, from some of the questions at the end:
- remote faciliation is harder, Jean Tabaka has a virtual seating chart, 4 step always works
- antipattern – people expect the boss to run a meeting, but they always have an opinion or axe to grind
I also found the following blog post on this session: http://www.selfishprogramming.com/2009/08/31/agile-2009-facilitation-patterns-and-antipatterns/
Can You Hear Me Now… Good!
This session was on ways to deal with distributed project teams and was delivered by Mark Rickmeier.
One problem on distributed projects – communication breakdown
- developers assume requirements
- testers assume
- sloppy handoffs
- waste
- people working on wrong things or different things
- management decide on incorrect data
- breakdown in relationships (people on team make it successful)
Agile processes can solve these issues – distributed requires more effort but agile team and communication processes mitigate the risks
How to organise teams
- dysfunctional when skills are together in different locations
- functioning slightly better – developers and testers together and customers and analysts together
- most effective – cross fucntional teams in both locations (expensive and difficult to do)
Five p’s of communication
- purpose – dialogue vs discussion – what is purpose of discussion – ideas or to make a decision
- preparation – plan ahead, agree core hours and don’t schedule outside of that without warning, understand key dates
- process – have im fallback options because phone systems fail, announce roll call so you know who is on the other end of the phone
- participation – know, see, hear your audience, interact and share the same data
- capture next steps, send reminder to ensure agreements are met (cultural wording can cause problems)
Tools
- IM – extremely useful
- star phone for speakerphone
- video conference – two camera, one on audience and one on whiteboard
- web conferencing multi-view
- interactive whiteboard – skype to take control in blank powerpoint page
All tools improve communication
- Muppet Show syndrome – turn team into Waldorf and Statler – consistent ridicule – us vs them
- IM – is good to know if they are online, busy, at their desk – Trillian Astra, Digsby, Adium, Pidgin, Campfire (recommended – allows chat, build system reports, keep transcript of conversations)
- Desktop sharing – Yuuguu (recommended, integrates with Skype), ShowMyPC, CrossLoop, LogMeIn, SkyFex
- VOIP – Skype (recommended, market leader and lots of plugins), JAJAH (up and coming), Yahoo!
- Web Conference – WebEx, GoToMeeting, Adobe Acrobat Connect Pro, Dimdim (1/10th of cost of WebEx and similar features, free up to 20 users)
- Wiki tools – MediaWiki (Wikipedia so people familar with look), Confluence (amazing features, powerful and easy), Socialtext
- Issue / task tracking – Mingle, Jira, Basecamp
- Application Lifecycle Management – Mingle, VersionOne, Rally
- someone in audience did all of these through Second Life
Distributed release planning – don’t do it distributed, try and get at least a subset of team together
- share vision from stakeholders and build trust in the release plan
- get people together to share context and get to know everybody
- the challenge is that it is expensive to get people to travel – always do at the outset if that is all you can afford
Iteration planning – planning poker distributed? – planningpoker.com
Sign up for iteration as a team, use online tool like Mingle to update card statues prior to standup
Daily standup – local participant can see reactions of people and can see the card wall
- have a local team standup and distributed cross team huddles with end of day handoff
- distribute team standup, cross team huddle and end of day huddle
- distributed daily standup – use camera, remember that it is about issue identification not remediation
- challenge that overlap times are not good, beware of the personal cost of people
- information from standup feeds the entire team
Retrospective
- hard, can have many us vs them issues
- worst thing you can do is one location or nothing at all
- individual retrospectives better if ideas are shared
- best is collaborative using CardMeeting or Google Spreadsheet – multiple tabs for likely topics, use tagcloud to capture popular topics in Google Docs, get people to write cards ahead of time to save valuable time
Closing thoughts
- look at staffing
- get good communications infrastructure
- kick off team in one location
- get to know people to move them from them to us
More details can be found at offshore.thoughtworks.com
ThoughtWorks Open Office
My original plan for Tuesday night was to attend that Chicago Groovy User Group with Paul King (but I mixed up the times and did not catch Paul in the corridors), so I decided to get along to the ThoughtWorks open office instead (at their offices on the 25th floor of the Aon Center, the third tallest skyscraper in Chicago).

Martin Fowler and Jim Highsmith both spoke, and the Agile PMI community was launched. I got to marvel at the original Cruise Control instance that was still running after all of these years and some great conversation was had with the rest of the Australian (and ex-patriot Australian) attendees.
Like this:
Like Loading...
You must be logged in to post a comment.