I’ve been up at our main office in Centreville, VA this past week learning all about SCRUM and how it fits into an Agile environment. Where I work at CARFAX we have been adopting Agile principles over the past few years and we are finally to the point where the entire company is starting to migrate and use Agile principles to help get work done. It’s been an exciting time, and I must admit even though I was a non-believer at first I’ve definitely changed my mind and attitude over the past few years!
SCRUM can be thought of as project management for Agile environments, but I think its strongest point is that it helps teams and customers understand where the backlogs are and how they can work to avoid getting trapped in “idle” or “wait” time states. The so-called SCRUM Master works with the Product Owner to make sure that work gets done with as few barriers as possible. You can think of the SCRUM Master as the person in charge of the processes and the Product Owner as the person who is in charge of the product itself.
SCRUM also helps teams start addressing what their produce as releases. For example, I may want to have X, Y and Z in a project, but I’ll be happy to “roll the project out” with X and Y. Z is a “nice to have” but not something that will stop the project from going live to the customers.
It’s amazing how many “nice to haves” there are and how few “must haves” some projects can have. You find out quickly that customers love to pile a lot of “nice to haves” into a project request!
One of the final things that SCRUM helped me better understand was that iterations “are what they are”. Managing by the numbers may not be appropriate in an Agile environment, and things like velocity and number of stories per developer are not only useless for measuing productivity, but can actually hurt a team’s productivity.
I’m excited to continue to learn more about both SCRUM and Agile, and look forward to moving my team at work further down the Agile road. Sometimes change can be exciting.