What is scrum?
Scrum is the most popular agile framework and has been adopted widely. It’s an agile framework that helps teams deliver customer value early and often in a highly predictable manner in small iterations.
Scrum does not only provide a lot of answers, actually scrum surfaces a lot of questions about your organization, inefficiencies, dysfunctions, problems, team allocations, that you and your organization has to answer and adapt.
Scrum has very simple and easy rules but is very hard to implement because a change is required.
The content below was extracted from a great set of engaging videos by Sally Elatta, the Agile Expert for PMI’s LEAD Community of Practice. It’s a great resource, as she reviews the most important Scrum terms.
Scrum Vs Traditional Way
Traditionally there were a group of people that implement a project, this group of people consists of a Sponsor the one that afford the project and hires a project manager to allocate the resources, people and all necessary to get the project done.
The project manager creates a schedule with tasks and milestones dependencies with a lot of detail, that is the project plan, then allocate resources that creates the team with a Business Analysts that gather requirements from Business Manager Experts or Business customers, then there is an Architect or software engineer that will design how it is going to be done, finally there is a developers team that could have front end developers, back end developers, software designers, that will estimate the tasks in hours and finally testers that will assure the quality of the product, after that will send the results again to the Business Manager Expert that will perform the user acceptance test, and if everything is ok, this will be the final product.
Then there will be a team that works as a one cross functional team and they work together on the backlog.
There will be also a product owner that is the person in charge of the backlog that is ranked with the highest value items at the top. It will also have the scrum master that is the person that will facilitate this entire process.
The three Roles of Scrum
Product Owner (PO): responsible for the Return Of Investment (ROI), the PO is responsible for maximizing the business value delivered by the team. The PO should be just one person and is responsible for the backlog and the story priority. It is necessary that it should be just one person because the team cannot have a bunch of bosses and different people telling them what to do, that will cause a lot of chaos. This is also one person that will accepts or rejects the work and helps to define what is done or not; an item on the backlog is not done until the PO based on his acceptance criteria accepts that it is done.
The PO should be knowledgeable, it is not necessary he know everything about the system but he has to be knowledgeable about the requirements that are currently being asked, the PO should be empowered, he should make decisions to let people know yes or no, do it this way, not that way and finally the PO should be engaged, the project can’t have a PO that does not show up on any meeting and does not help to plan.
The SM should assure the team is focused on delivering value; the SM is a servant leader that builds self organizing teams that can manage their own work in terms of the tasks and breakdown; then SM removes impediments in order the team can advance with their work, when there are impediments he is on top of it. SM keeps the process healthy; he makes sure the process is followed, the rules are followed, the PO is actually engaged and from education perspective the SM assures the whole team understands the process.
Finally the SM should empower the team, build high performance teams not commanding and controlling but empowering and allowing them to develop their tasks and get the work done.
Team: the Team is a cross functional group of people generally 7 +/-2 members and is responsible for turning the product backlog into increments of value each spring.
Cross functional means not just developers not just testers, it is compounded by the people that are needed depending on the iteration you are, it could require data base architects, designers, architects developers, testers, etc. Actually you will have core team members and maybe architects dba’s that will be engaged every one and then but not 100% dedicated to the team.
The team is self organized, they still have leadership, they still know what the vision is and within the knowledge, but they know how to get the work done, they know how to break down their tasks and they commit to tasks themselves. The team members are generalizing specialists that means they are not generalists that knows a bit about everything neither they are specialists that work on a specific task and that´s it, they can contribute on tasks that they know about that, if there is work about testing and one member have the skill to do that will contribute on this task.
Finally the Team delivers value in small chunks, the sprint is divided into stories and the team delivers stories in small frequent batches, the team works with engineering best practices and quality excellence.
The scrum process
The Scrum is carried alone with sprints that are fixed time boxes; the backlog is being moved story by story from top to bottom into a specific sprint.
Velocity and Points
Sprint has stories that has points, points means the size of every story, the additions of all point in the sprint is the velocity, if the team can manage a velocity of 12 points then the team will grab stories from the top of the backlog and move them to the sprint up to complete the 12 points that are the velocity the team can manage in the sprint.
After several sprints that the team will manage sometimes more sometimes less points then you can get the average velocity of the team so every sprint will be filled up with stories that will cover the velocity with more accuracy based on the history.
The four scrum Ceremonies
The ceremonies are the more popular meetings the scrum process has, there are four of them, sprint planning where the plan for the sprint is created based on the priorities, daily scrum to provide visibility about how progress is going, sprint review or Demo meeting intended to show up the results of the sprint and finally retrospective meeting that provides inspection and adaption to the scrum process.
- Sprint planning
Is carried alone the first day of the sprint and the team with the PO get together and start moving stories from the top of the backlog, confirming with the PO which are the priorities, enlighten any questions about the stories and adding so many stories the team can commit to make in the sprint. After adding stories the team will split the stories into actual tasks (create UI, Code, Unit Test validation logic, user acceptance testing, etc.) and size those tasks in terms of hours.
- Daily scrum
It is a meeting also called stand up meeting because it should be held stand up and just 15 minutes length.
The team members get together every day and ask themselves three questions about accomplishments from yesterday, what they are planning to accomplish today and if there are any impediments.
Usually the three questions are as follows:
- What did I complete yesterday?
- What am I working on today?
- What is slowing me down?
This meeting is where the SM and the rest of the team can hear of impediments and things that are slowing the project down, impediments are the root cause of killing a lot of projects so that is why in scrum spirit of visibility and inspection and adaption every single day the team has to provide visibility of how it is going on.
- Sprint review
It is the demo meeting, it is the meeting to show and tell, the meeting to show the results of the sprint, even though you have nothing to show it should be scheduled and tell why was not possible to accomplish visible content on the sprint why anything was done and provides the reason or impediments of that so the SM can manage to remove those impediments for the next sprint and have a successful sprint.
- Retrospective Meeting
This is the last ceremony where the team goes through what worked well and what needs to be improved, this is the heart of inspection and adaption within scrum, here the team look into the last sprint and asks what has been going well? Are our daily meeting healthy? Is the PO engaged? Are the requirements of the right level? You know how to deal with each other? Are we working well each other? Or there is a person dominating and everyone else has no voice; all these things related to the team dynamic or the actual process should be brought up in a healthy retrospective, retrospective is one of the healthiest things you are doing and without it you won’t be able to improve the process.
The three legs of scrum
Scrum is supported over Transparency, Inspection and Adaptation.
Transparency means we needs to have visibility on everything that is going on; that is why we have the Planning meeting that provides visibility for the team about what is going to be done in the sprint, the we have the daily scrum that provides visibility about daily tasks, impediments and how are they going on and the final review to show visibility about accomplishments, results, progress and the retrospective meeting that is the meeting that helps with the inspection and the adaption of the process.
Inspection and adaption are the heard of it that is where the things noticed on the retrospective meeting should be used to adapt the process.
The five values of scrum
The scrum is based on Commitment, Focus, Openness, Courage and Respect.
- The team members commit themselves to the work what they will get done.
- Focus means the team should focus on the sprint have the things they have committed to do on to have them done by the end of the sprint.
- Openness is to be opened to provide visibility, opening to say if there is something we are struggling, be open about the priorities, be open about our tasks, be open about our accomplishments if we said we will have something done and we are not having it done, this can be also honesty about if we will be able to accomplish something on the sprint or not.
- Courage, this value means you should have the courage to speak up when you know something is not going well, when you know this project will not going to make it or when you know there is an impediment that will cause major issues. Courage means you are free and confident to speak openly and honestly with the team.
- Respect means that we will have to respect individuals, we will respect each other, we show respect by allowing people to commit with themselves about their work not telling them what to do, they are adults they are able; respect them not making them work overtime everyday but give them a sustainable pace so they can have a good work and live balance. Also it means respect the process and the people within the process so we can actually deliver value.
The Three Artifacts
Product Backlog: prioritized list of desired project outcomes or features, is the place where the PO can add items to be done or anybody from the team or stake holders can add items to the list the those items should go through the product owner for organizing it according to importance.
Sprint Backlog: is the list that will be covered in this sprint, with the stories and tasks. It is the set of deliverables from the product backlog that the team agrees to complete in a sprint usually broken into work items.
Burn down charts: shows at a glance the remaining work at Release or Sprint level, those charts add visibility to show the remaining hours, story points or hours to complete the sprint.