Scrumalicious
February 20, 2008
Scrum is a form of project management used mainly for software development, but can be applied to many different types of projects and industries. First off, let me say that my team does not practice authentic scrum. We are still in the limbo of trying to educate our clients and transition the project to scrum. As it stands today, we practice a mix of scrum and agile development, that works, but not as efficiently as it could.
I’m sure many of you are asking, what is it? Why the funny name?
The name scrum is a Rugby term, for a type of play that involves advanced teamwork, and physical proximity to make goal. To the Brits, the term also means hubbub, and confusion. In scrum project management, both of these meanings apply.
Scrum project management is designed to create “team ownership and management.” This team atmosphere means there will be discussion and communication between team members, which creates a louder, more dynamic development environment. This is encouraged, as it leads to team buy-in to the project and also increased team morale. It works best when the team members all sit near each other, so they can shout out questions, or when they are “blocked.”
One of the largest benefits of scrum is the increased project visibility. Every day there is a Morning Scrum, a quick meeting of all team member where they discuss what they completed yesterday, what they will be working on today, and if they are being blocked in any way. This is helpful because it allows everyone to see and hear the progress. It also brings everyone together to help work on a “blockage” or to jump in and help when a team member is almost done with their task, and another team member could use some help.
In my team, we have broken down all larger tasks into daily tasks. These tasks are assigned to individual team members. We have a board that we break into three sections, the backlog of tasks to be completed, In Progress, and done with development. (Ideally, we would have sections for in QA and then a “done done” section where all tasks that have been given a clean bill of health by QA, live. But, we are still developing, and we don’t have room on our board for that many columns.) Every morning during Morning Scrum, the team members go up to the board and move a task into the appropriate column. As they are moving their task(s) they discuss what they did, and mention any difficulties they encountered.
Later that day, I go up to the board and update our burn down chart. The burn down chart is the number of hours we have left on the project. This is plotted on a graph, next to the ideal rate of completion. This way, we can visually see where we are in relation to where we should be to complete the project on time. (This chart also visually shows any scope increase and how that affects the ideal rate of completion.)
One of the most outstanding benefits of scrum project management is the introduction of daily tasks, the visibility of remaining work in relation to remaining time, and the team buy-in and ownership of the project. Adopting these basic principles, again in part, we still do not practice “pure” scrum, has helped my team be on-target, working only during normal business hours. This is a great contrast to a release in which there were developers working 89 hours a week to meet our deadline, after we realized, too late, that we were way behind where we needed to be.
This is about as much as I will get into Scrum basics at this time. If you’re interested in learning more, there are some good books out there and classes by Ken Schwaber. There is also a good website, www.scrumalliance.org.
February 21, 2008 at 7:12 am
interesting! what are other specific methods in project management?
February 21, 2008 at 4:28 pm
There is the out-of-date waterfall method, and the iterative death march, which is good scrum, gone bad. The waterfall method is one long project, with all the functionality delivered at the end. (Whereas scrum provides usable functionality after each sprint, which are typically a month long.) The iterative death march, is like scrum, but may not be there completely, essentially it involves racing to complete too much work in too little time. The quality of the product suffers, team morale goes down, and the project is usually abandoned or transferred to another team.
February 25, 2008 at 7:46 am
Hm… iterative death march… I’m glad there’s a name for what I’ve been doing for the past couple months!
I’m glad you guys are getting some good use out of scrum practices. We are too, it’s just hard when tasks change several times a day. It sort of kills the “here’s the final list of things to do in this sprint” idea that makes the whole thing work.