I found this month’s XP Toronto presentation enjoyable and informative. The presentation was done by Dmitri Zimin(e), who posted his presentation on his blog.
Dmitri was quite emphatic that one of his early obstacles in improving the processes at his company was a sort of religious fervour about Agilism. This makes a lot of sense to me. Passion can be valuable, but when you become too fervent you lose perspective and put others off.
He talked a lot about building trust within the organization, and the value that adds. I completely agree. When the different groups are working primarily to protect themselves, rather than achieve a common goal, productivity and morale suffer. It takes time to build that trust; in his case, they have built trust primarily through delivering what they promised, when they promised to deliver it. He also noted that having the product managers sit in on the iteration planning meetings gave the PMs a lot more perspective on the development process, which in turn led to more respect for the developers.
I also resonated with his discussion of team rhythm, and the importance of protecting and preserving that rhythm.
He mentioned that of all the practices they have implemented, they have had the most success with their daily standups. He mentioned that their standups are very focused and efficient, taking on average 1 minute per person. I think this is really important, and I would like to see more emphasis on this in my project room.
Listening to him talk about how they track time made me nostalgic for my old job. At his company, they have stickies for each task, and at the end of each day the developer writes down his/her time on the task, and the revised estimate for the time remaining. This is very similar to how we tracked time at my old job, though in that case it was through a web application called Outreach Project Tool. Because the tool was so easy to use, we tended to keep it accurately updated. The detailed time tracking, of both the revised estimates and the time spent, was a very useful resource when creating new estimates. There were also spaces to make comments on the task as you worked on it. We had even extended OPT to tie into CVS, so you could see all commits made for the task (provided the developer included the task number in the checkin comment). I really liked that tool, and I miss having that framework on which to rely.
In his talk, he raised the question “Are we Agile?” This question seems to come up often in Agile circles, but to me it is much less important than achieving the desired results. It sounds like his company is shipping software in a timely fashion, and the developers have formed into a solid team. They are still improving their process, but aren’t we all? There is always more to learn and understand. To me, trying to decide at which point on your journey you become worthy of a label, e.g. “Agile”, doesn’t add much value to the process.