At Integrum we always are striving to improve our team. We want to be the best ruby on rails development team possible for our customers. Each week we order lunch in and hold a company wide agile retrospective. During this time we reflect on how we can improve. Recently, I had taken at look at an interesting little agile assessment tool from James Shore’s The Art of Agile Development. It basically uses a radar mapping technique to provide assessment. We have done this in the past as part of our retrospectives to see what areas need our attention the most. After seeing some of our results we have been going through exercises as part of the new year to re-evaluate our processes and set team standards for our practices.
Two weeks ago we tried a force field analysis technique to see how we could get better acceptance criteria from our customers and this last week we decided to do the same exercise to gain insight into improving pair programming. I thought this was worth sharing for two reasons.
1. I think the force field analysis technique is pretty effective and wanted to share it.
2. For nearly 2 years we have been 100% pair programming (except when we have odd numbers), but the team still sees room for measurable improvement.
Item #2 fascinates me because it highlights how agile practices can be simple yet complex at the same time. Pairing is simple. Pairing effectively is difficult.
Step 1: Pick a topic (in our case an xp/agile practice).
Step 2: Break the team into groups of around three. For us it usually works out to three groups of three and one group of four.
Step 3: Set the timer and give the groups five minutes to list all the supporting/driving factors for the topic. This would be all the things that make it easy to engage in the topic or reasons why it’s important to do the topic.
Step 4: Go around room to each group. Have them give one thing from their list and write it on the board under the driving column. Repeat this until every group has exhausted all of their items.
Step 5: Repeat steps 4 and 5 for inhibiting/restraining factors for the topic. This would be all the things that make it hard to engage in the topic or make the topic difficult to support.
Step 6: Review items on both lists and clarify. Make sure that the collective doesn’t have any additional items to add.
Step 7: Let each person know they have two votes. Read off each item in the driving column and ask for a vote if they think its “strongest” factor for that column. Tally the vote next to the factor. Repeat this for each item.
Step 8: Pick the top two or three items and draw large arrows towards the opposite column. This highlights that this is a quick win to combat the opposite side so increasing/decreasing this factor has the largest win in making the topic successful.
Step 9: Repeat for the Restraining column.
Step 10: Now that you know what is conspiring against you and what is cheering you on in being successful in the topic have a quick brainstorming session (15 minutes or so) on action items you can do to INCREASE the driving factors and DECREASE the restraining factors.
For us step 10 is where we list our standards for the practice (topic) that was discussed.
Are you doing retrospectives? What techniques are you using? What is working for you? What isn’t working for you?