Web Development - Agile Methodology - San Diego - Orange County
No CommentsScrum belongs to the family of Agile methodologies. I am not going to talk about how scrum starts and who started it, but I will talk more about what is Scrum and where to go to learn more about it. Scrum is a PM methodology that is being widely used by many major companies such as Google, yahoo, Nokia, and most of the major Japanese gaming companies.
Scrum is a completely different way from waterfall in terms of managing your project. In scrum every thing is a time box.
Here is how it works.
1) Backlog
The Back log is a complete list of all the functionalities needed for the project.
It starts with a meeting with the product owner and the rest of your team to identify the functionalities that needs to be executed (backlog) for the project.
As you’ve already noticed, there is no functional spec or any kind of paper work that does not add value to the project owner. The team members are all there because they are going to be self managed from the start. They will create the backlog with the product owner.
After the backlog is created , the Scrum master (aka the project manager) needs to ask the product owner about the most important functionalities that he/she would like to see implemented first. These functionalities will be taken to the top of the backlog. The team members will then identify the amount of functionalities that can be completed in three months. Yes, the team members are the ones who are going to decide that, because no one can measure the work load and the amount it takes better than the people that are going to do the actual work.
2) Sprints
The first three months the work load will be divided into sprints. Each sprint is like a two week to a one month time box. At the end of each sprint, there needs to be some completed functionalities. Completed means documented, tested , checked in CVS or SVN, and it is on the server and could even be shippable. After completing all the sprints for the first 3 month Phase, there will be a meeting with the product owner to show him/her the progress and present a demo of what the functionalities look like.
3 ) Daily Scrum meeting
After getting your first sprint in place, the team members will sit together to divide the work into very small tasks. Each task will be between 4 to 16 hours. The team will decide on the length of time needed, and the due date for each task.
There will be a daily meeting for all the team members involved in the project. This meeting will take about 10 to 15 min depending on the size of the team. There will be 3 questions in that meeting.
1) what did each team member accomplish the previous day
2) what each team member will accomplish today
3) what are the red flags.
If one of the team members is not completed with his/her tasks, the Scrum master should stop the meeting and ask to meet again in an hour when every one is done with their tasks. Done means documented, tested , checked in.
The product owner or the client can be in that meeting every day if he or she chooses to. They can be there in person or on the phone.
This is a complete transparency between the different individuals on the project.
4 ) Retrospective
At the end of each phase, there is the retrospective meeting. In that meeting, the team members will discuss what went right and what went wrong. How can they improve the next sprint and how can they learn from their mistakes in the first phase.
Whatever could not be completed or whatever needs to change from the first phase can be added to the first sprint in the second phase.
5) Management
There are three managers in Scrum
a) the product Owner
b) the scrum master aka the project manager
c) the team members
6) Burn down chart
the burn down chart is a chart between the workload or the tasks of each phase in the y-axes and the time that needs to complete on the x-axes. this will show the team members the velocity and the speed of the work flow, it will also give a clear presentation of weather or not the project can be completed on time.
7) Iteration
Scrum is an iterative methodology. Unlike water fall, you do not have to wait for the design to start the development. All aspects of the project will be worked on at the same time and the team members will be working on it for the whole life cycle of the project.
Here is a graphical representation of the iteration

A great book to read on Scrum is Agile Project Management with Scrum by Ken Schwaber.
Ken is one of the founders of Scrum.
In my next blog I will talk about other Agile methodologies that go hand in hand with Scrum Such as TDD and XP.

