Oct 4, 2009

Scrum

Srcum is another adaptive development style that gets term from the sport of rugby. In rugby scrum is the method used for getting an out-of-play ball back into play. Rugby players hutle together in a big mass while a referee drops the ball and the player scramble to pass the pass between their legs in an effort to pass it to a waiting runner. The basic principle between Scrum in the software development world is that teams hutle together and work rapidly to solve a problem.

“There are three basic concepts that describe Scrum: (1) its philosophy, (2) its organization, and (3) its practices. Focus is placed primarily on the team level, and emphasis’ individuals more than processes, while developers work together to build software in series of mini-projects. Developers work off a list of desired features/needs known as the “product backlog.” If an item is not on the backlog it is not included in the development product.


Image courtesy of: http://www.controlchaos.com/

Scrum organizations is made up of the primary roles: product owner, Scrum master and the Scrum team. The product owner is the client, the one who desired the development product, but they have more of a role then just that. As with Agile development they maintain an active and open dialog of communication with the development team and the Scrum master, but they also maintain the product backlog list. This backlog list is crucial, as nothing is added to the project without being on the list, and they approve and agree to any changes to the list. The Scrum master enforces Scrum practices and acts as a project manager and/or project champion. They help breakdown roadblocks that are hindering the team and is a focal point for communication with the team, but they do not set the schedule or assign tasks, the team does that. The scrum team is a small group of developers (5-9) to develop the software. In large development projects they may split the work among multiple scrum teams.

Scrum practices in many ways are similar to agile development, small teams, strong communication, and routine meetings. The team typically meets once a day for 15 minutes or less. The purpose of this meeting is to answer only three questions:

· “What have you done since the last daily Scrum?”
· “What will you do by the next daily Scrum?”
· “What got in your way, or is in your way, preventing you from completing your work?”

This meeting only to report issues. Problem solving is handled by the team during regular communication/development throughout the day. Development cycles are typically 30 days in length, know as a “sprint”. Where the developers work only on items from the backlog list. If at the end of the 30 days the client desires changes they are added to the backlog list and scheduled for another sprint.

Additional resources:
http://www.controlchaos.com/
http://www.mountaingoatsoftware.com/scrum
http://en.wikipedia.org/wiki/Scrum_(development)


No comments:

Post a Comment