What is Scrum?
Scrum is a agile framework that helps teams to work together on a software solution by focusing value on customer collaboration, incremental planning and work, continuous improvement and retrospective. Scrum involves several efficient ceremonies which are repeated periodically and lead by the Scrum Master.
I strongly believe that Scrum works and Scrum is a very powerful methodology if it is used properly. Why do I say “if it used properly”? I will address it later, first I will explain why Scrum is so powerful. The reasons are the followings:
High level of transparency
Scrum is powerful because it ensures transparency inside and outside of the team. Inside the team the ceremonies all together ensures a high level of transparency, resulting in a self-organizing team while working on a problem. Outside the team, the most important ceremony is the Sprint Review (Demo) where we present the latest iteration of the product for the customers and stakeholders. Scrum is based on trust, and with this transparency we can achieve high level of trust inside and outside the team.
High level of flexibility and agility
In Scrum, we work incrementally which means that with the planned work we commit ourselves for a given time-frame (Sprint) which takes usually 1-3 weeks. With this relative small incremental time-frame we give us freedom to drive the scope of the project according to the customer requirements. Next to that, with this pace we are always prepared for the continuously changing requirements and for fulfilling the customer’s wishes.
Last but not least, at the Sprint Review ceremony we focus on collecting valuable feedback and profitable ideas while presenting the newly added project features and changes. These feedback are seriously taken into considerations and planning for the next iterations.
As the Agile Manifesto says: Focusing individuals and interactions over processes and tools. Most of the Scrum ceremonies focus on these values and ensure that everything is well communicated, frequently, in a detailed way. We should always prefer face to face direct communication and collaborations over contract negotiations and asynchronous communications.
Within the Scrum team, apart from the Scrum Master and the Product Owner, everybody is the same, everybody is responsible for the product, resulting in a system of democracy. There are no heroes in the team and we should practice knowledge sharing as much as we can, and fulfill additional tasks knowledge sync ups and code reviews.
In my opinion, one of the most important part of Scrum – which is also valid in every other area of life – is the continuous improvement. Generally said, continuous improvement can be applied both on personal and on team level. After the Sprint Review, the most important ceremony is the Sprint Retrospective where we look back at the previous iteration and we see together what went wrong, what are the things we could improve on and what are the puzzlers for the team members and for the whole team. And of course we should also spend time for practicing gratitude when we achieving goals and reaching milestones, for example in the form of Team-Building events.
While there are many important parts of the Scrum framework, having joy during the work is the most important. In order to have a successful team, project and engineering process, we have to continuously keep ourselves and the customer happy, trying to fulfill everyone needs.
Scrum ceremonies explained
As already mentioned, a Scrum team work in a Sprint which usually takes a predefined 2-3 weeks. Within these time, there are many ceremonies taken place which are the essential parts of a successful Scrum working process. Let’s see what are these ceremonies:
The most frequently executed ceremony is the Daily Standup which is – according to its name – being done on foot, in a daily manner, usually every morning and involving all the team members. During a standup we discuss what we have achieved since the previous standup, what are the plans for the given day and we try to find solutions for the possible impediments.
Product Backlog Refinement
First of all we have to understand what the product backlog is. Product backlog is just a list of tasks and feature requests which are called as “User stories” in the Scrum jargon. This list contains additional descriptions having functional and technical requirements relating to the project and the problem domain we are working on.
The Product Backlog Refinement is an ongoing process where the Product Owner and the other team members collaborate on the details of the backlog items, answering questions relating to requirements and making the tasks as clear as possible for all team members.
In sprint planning, lead by the Scrum master, the team sits together and based on the given team capacity and velocity the works and tasks are being planned for the next sprint. At the end of the Sprint Planning a commitment is made regarding the tasks we agreed on to be planned to be pick up.
The Sprint Refinement is the following ceremony after the Sprint Planning. During the refinement, the planned and committed user stories are worked out in order to be ready to be picked up by the developers.
Sprint Review and Demo
As already mentioned at the beginning of the post, the Sprint Review and the corresponding Demo is one of the most important ceremony where the entire Scrum team, stakeholders and potential customers or customer-managers are sitting together discussing the newly implemented features and the close-future plans of the project. The Sprint Review is the best place to get valuable feedback from the customers and stakeholders and the best time for adjusting the project scope to the desired direction.
Last but not least, relating to the inner working within the Scrum team, the Sprint Retrospective is the most valuable ceremony of all. During the retro, we retrospectively look at the previous sprint and we see where we can improve ourselves, both on personal and on team level. Here we must talk about our concerns, and be open about our negative feelings relating to the project in order to find possible solutions for them. Finally, we should also spend time on celebrating our success and achievements.
Now I relate back to what I said at the beginning: Scrum can be a very beneficial framework, but only if it is used properly. Many people and team say that Scrum does not work and they could not apply it successfully on their projects. The problem is that they used “Scrum BUT”. For example “Scrum BUT we do not do Retrospective and Demo” or “Scrum BUT we do only standups”. You can only gain the full advantage and benefits from Scrum if all ceremonies are applied with a lead of a Scrum master. Without it, you are just scratching its surface.
As you can see, Scrum is a powerful, efficient and dynamic framework which is the glue for the team and its engineering process, addressing occurring challenges and problems during a project development. It enables a productive and creative delivery of the product with high agility.