Sunday, August 15, 2010

Agile readiness assessments at Agile2010

I've posted the images from the session "Look before you leap - Agile readiness assessments done right" at Agile2010.  The images are here

Some of the images are blurry in my browser (IE), but if you 'Save As' to your computer then you get more detail (not sure why).  If there are any images you need more detail on, let me know - I still have all the originals.

Saturday, August 14, 2010

Agile2010 - My Conference Summary

My user stories for the conference were:
- Learn more about coaching and agile assessments (done)
- Get ideas for promoting and increasing agile adoption (done)
- Find better ways to use FitNesse and Selenium (done)
- Acquire some new tools for expressing user needs (done)
- Meet many of the people I’ve been following over the years (done)
- Meet some of the AA-FTT folks (done)

In addition, I encountered a passionate community that is willing to share their time, skills and ideas with anyone who asks. In addition, I encountered a troubled group of leaders that is legitimately concerned about the lack of technical content at the conference. In addition, I encountered leaders advocating for agile in all its flavours instead of promoting any specific one (hurray!). In addition, I encountered people passionate about taking what they have learned in agile and using that to improve communities outside of the business world. In addition, I encountered a few technical folks who undervalue mastery of the ‘soft’ skills over the technical skills. In addition, I encountered new friends that I hope to see again next year. In addition, I encountered a dedicated and friendly volunteer staff that helped make the conference run smoothly. In addition, I encountered a community willing to volunteer their time and money towards a cause (mano-a-mano).

Finally, I encountered a growing and dedicated community that has a lot of success stories to share, some challenges in the road ahead, and hopefully a commitment to continue the fight together.

Thanks all.

Day 5 at Agile2010

The final day of the conference contained three general sessions.  I found a few people who skipped out on these sessions - too bad for them as the sessions were a great wrap up for the entire week.

Dave West talked about Product-Centric Development and the move away from the separation of business and IT (yes please!).  He asked us to start measuring ourselves and our teams by how much value we deliver and not by on-time, on-budget, # of defects, # of stories, lines of code, etc. We can’t make our teams act as part of the business unless we change our measurements.

Ron Jeffries and Chet Hendrickson provided both comic relief and poignant commentary.  I think Chet's comment sums up their talk: "there’s lots of ideas out there and we need to look at every damn one of them”.

Finally, Mike Cohn's talk was a great ending to the conference as he challenged us with some practical ideas of how to spread what we’ve learned using the ADAPT model.  Create Awareness of the problem by communicating using metrics and stories. Focus on one or two reasons to change. Increase the Desire to change by communicating that there is a better way. Get the team to take agile for a test drive and focus on addressing any fears. Develop the Ability to work in an agile manner by providing coaching and training. Promote agile by publicizing success stories or holding agile safaris where people can drop in to agile teams for a short time to see how it works. Transfer agile to all non development teams, departments, divisions, etc. Align promotions, raises, HR, and Marketing. Finally, don’t expect an agile transition to happen all at once. Create an improvement backlog and improvement communities and work on a few stories that are important to your community before tackling the next ones.

A final call to action from Mike: “Now we’ve upped our skills, up yours!”  Well said.

Day 4 at Agile2010

Two of today's sessions were more about aquiring ammunition and ideas for my own future talks than about aquiring new skills.  In confessions of a Flow Junkie, Dave Rooney introduced me to the coin flipping game which contrasts the flow in Agile vs Waterfall.  In the final session of the day, James Shore and Arlo Belshee made us laugh and cry with their Bloody Stupid Johnson routine.  The highlight of the session is the soon to be framed certificate that I attained as an "Agile Software Specialist" or A.S.S.

The session with Gerry Kirk and Michael Sahota was designed to create a knowledge base of methods and tools for doing agile readiness assessments. It was great to see ideas from other coaches and I look forward to the compiled results.

The conference party at Epcot was also a lot of fun and I enjoyed some non-agile time with my agile friends.

Thursday, August 12, 2010

Day 3 at Agile2010

Here is a summary of another satisfying day:

I was introduced to some powerful team wireframing techniques that could be incorporated into the discovery phase of a project as another tool to aid in creating and defining the backlog.  I wonder what my UX friends would think of doing UX as a whole team.  It definitely fits the agile model where every team member provides input and takes responsibility for the whole process, not just their specialty.

The 11am session reminded me of the Trident Splash commercials - I wasn't prepared for the amount of information I received from Jeff Patton and I'll have to review my notes and his slides several times.  What I do know is that there was a lot of valuable information on how to do agile discovery.  The techniques were designed to help you get to a definition of ready - ready to start sprinting.  Some quotes I wrote down: "Our job is to minimize output, and maximize outcome"; "Most agile practives emphasize delivery, and not much discovery", and as an example of that second quote: "velocity is a measurement of output, not outcome".  A good reminder to focus on why the project was started in the first place.  Update 8/31: The slides are now available here

The first session after lunch I joined the presenter up front as a timer object.  Brian Marick was explaining OO programming practices to non-programmers by using volunteers who acted as objects.  He explained SRP, encapsulation, MVC, etc.  You can see a partial video of a previous talk he did on the topic at

Not shockingly, in the last session I learned I was using Selenium in the most basic (and mostly abhorred) way.  I was able to spend some time with Patrick Wilson-Welsh after the session in a mini open jam to go through some coding examples of how to do it the 'right' way.  Good thing I haven't given my Selenium SDEC presentation yet.  Thanks Patrick for spending the extra time - you are one of many at the conference that have shared your time and energy with me and others.

The day ended when I didn't win an iPad, but I did thoroughly enjoy playing beach volleyball in the dark until almost midnight with occasional swim breaks.  Thanks to everyone who participated - it was a great way to give my brain a rest.

We're at epcot tomorrow night until midnight so I don't think I'll be posting my Day 4 notes until Friday sometime.

Tuesday, August 10, 2010

Day 2 at Agile2010

Today was another satisfying day at the conference in 'sunny' (I did see the sun this morning) Orlando. I started the day off with 11 other agilists going for a morning run on the paths and walkways around the Disney complex followed by a great breakfast. The catering at the Dolphin has been fantastic so far.

The first of two notable sessions that I attended was called "Effective Questions for an Agile Coach." The two presenters Arto and Sami from Reaktor were great and cleverly crafted the table discussions so that we would fall into common coaching traps and then helped demonstrate better alternatives. Here is a brief overview of some of the ideas from the presentation:
- By giving advice you are creating motivation from the outside. You need to ask effective questions to let them figure it out for themselves
- The four acceptance tests for good coaching questions are a) leads to exploration, b) aim at descriptive answers, c) avoids judgement and d) avoids unproductive states of mind
- Avoid the question 'why'. Try converting the question into a What, When, How Much or How many. For example, instead of Why, ask What benefit did you expect to receive?
- When trying to help the team solve a problem, follow the GROW model. Grow: first, find their goal. Reality: Second, ask questions to help them describe the current state. Options: Third, ask questions to find at least 3 options. Simply ask how would you solve this. What: Finally, ask questions to find agreement on a path forward.

Some other random thoughts:
- I attended an seminar. After playing The Product Tree game and Scream, I want to explore how to introduce these games in my own projects.
- Dave Thomas was funny and poignant as the keynote speaker although I did wonder if his talk was targeted more at those not at the conference than those of us who have already 'taken the pill'. They videotaped his talk and I suggest looking for it in the next few weeks.
- I took some advice from other conference veterans and walked out of a session that was covering topics I was already familiar with. As a result, I had some great conversations about retrospectives and the intersection of agile and church.
- The 'soft skill' sessions at this conference have been great, but I wonder if there is room for more advanced developer topics.
- Played some beach volleyball at the end of the day with 2 other Canadians and a Swede. Are there any Americans at this conference?

More tomorrow...  looking forward to the open jam on ATDD/BDD wording.

Monday, August 9, 2010

Some thoughts from day 1 of Agile2010

I started the day with Mary Poppendieck's talk "Leader's Workshop: Making Change Happen and Making it Stick" which was based on the following book: Switch: How to Change things when change is hard. The talk was split into 3 parts. First you need to Motivate the Elephant, then you need to Direct the Rider, and finally you need to Shape the Path.

Mary suggested that in order to Motivate people, you need to treat them like volunteers. You need to treat them like they could leave at any time. A quote from Peter Drucker: "They need, above all, challenge. They need to know the organization's mission; believe in it, they need to see the results". As our table discussed this concept, we were able to easily relate to our own stories of leading youth at church or in boyscouts. I think this would be a great way to be treated and I can see how it would translate into energized and passionate employees. A volunteer team has to be engaged or they will disappear.

The purpose of Directing the Rider is to provide clear direction. One of the ways to do this when change is difficult is to find the bright spot. When you are having trouble implementing a change, look for some small success and then duplicate it. She gave a great example about post-it notes. When 3M first made the post-it notes, they could not sell them. They test marketed them in several locations and they only sold them in one ("the bright spot"). It turns out that the sales rep in Richmond Virginia decided to give them away and once he did everyone wanted one. 3M then followed this model in other locations and now post-it notes are a household item (and a valuable agile tool!). So, to direct the rider in difficult situations, find instances of success and clone it. A book that she references is: Positive Deviance: Influence: The Power to Change Anything"

Finally, she suggests Shaping the Path by looking at the long term and allowing local decision making. You also need to find ways to make the desired change the path of least resistance. "Change will only stick when the path of least resistance is the path of change." IBM's move towards agile was used as an example. Instead of forcing agile, they allowed it to succeed in smaller teams and then sold and promoted those successes. Soon, everyone wanted to do it.

In summary, to encourage change in a team when it is difficult a) treat your team as volunteers b) find the bright spot and clone it and finally c) make the desired change the path of least resistance.

In the afternoon I went to Hacker Chick and Dawn Cannan's hands on presentation "Better Story Testing through Programmer-Tester Pairing". We had fun doing developer/tester pairing of acceptance tests in FitNesse and Java. I learned a few new FitNesse tricks and also that I haven't lost all my dev skills. I played the dev role and our team was the first to complete the assigned task, beating some notable names in the room <cough>Brian Marick</cough>. The session also re-inforced ATDD and gave me some ideas I'd like to incorporate into a future presentation.

Also, I missed Janet Gregory's talk this morning on the Dance of QA in agile, but I managed to talk to her this evening at the mixer. She gave a quick summary of her talk and how she related it to dance. Agile team members need to be like contestants on "So You Think You Can Dance". On the show, hip-hop dancers learn other dance styles like ballet and vice versa. Similarly, agile team members (including QA) need to improve their skills in all of the disciplines in a project team. An interesting thought.

Thanks to everyone - a great first day.

In other news, Bob Payne is now following me. #Stalker.