Scrum is an approach to project management that is aligned with the Agile Manifesto. The Agile Manifesto is a description of the core values of agile project management:
- Individuals and their interactions are above processes and tools.
- Functioning software is above comprehensive documentation
- Collaboration with the customer is above contract negotiation.
- Responding to change is above following a plan.
Scrum Methodology & Process
Scrum is based on the theory of empirical process control or “empiricism” for short. Empiricism means that you gain knowledge from experience and you make decisions based on what you know. Scrum takes an iterative, incremental approach to optimize predictability and control risk.
Three pillars support any empirical process control: Transparency, Review, and Adjustments.
Transparency requires that you define tasks according to a common standard so that viewers share a common understanding of what they see.
Scrum users need to regularly review Scrum artifacts and progress against Sprint goal achievement to identify issues and deviations. Their examinations should not be so frequent that they interfere with work.
If it is determined that the results are deviating from acceptable limits and that the resulting product will not be as acceptable, the team must make adjustments.
Roles in Scrum
In Scrum, you do a basic distinction between:
First of all to the roles:
He is in constant contact with the stakeholders, the development team, and the Scrum Master. The Product Owner is responsible for the Product Backlog. It is a listing of all requirements and desired goals that the product should fulfill and also by what priority.
The Scrum Master is a facilitator, supporter, and problem solver at the same time. He makes sure that everyone acts according to the Scrum values and pillars. He helps the team to use the artifacts and ensures that the Scrum events are carried out according to the rules and effectively.
The development team
This team is the operational unit. It is self-organized and cross-functional. This means that the team has every necessary capacity to implement the planned backlog items. The development team optimally consists of between 3 to 9 people. Scrum master and product owner are usually not counted here unless one of the two roles has an additional developer role.
- Stakeholders- Are the clients of the product.
- Scrum Mentor- Supports the Scrum Master and the development team throughout the process.
Events in Scrum
A short development cycle in which the team creates potentially shippable product functionality. Sprints, typically last between one and four weeks. Sprints can also be one day but last no longer than four weeks. sprint duration can change as the project progresses, but this also changes the velocity (time analysis to optimize sprints).
The Sprint Goal is an overarching purpose for the Sprint that can be achieved by implementing the Product Backlog items. It provides direction to the development team as to why they are building this product increment. The team establishes the Sprint Goal during Sprint Planning.
The Sprint Goal provides the development team with some flexibility in terms of the functionality to be implemented in the Sprint. However, the Sprint Goal can also be any other unifying element that motivates the development team – instead of running in different directions – to work together.
A meeting at the beginning of each sprint in which the Scrum team commits to a sprint goal. For this meeting, a time-box of 8 hours is set for a 4-week sprint. Less time is required for shorter sprints. Also, the requirements that support this goal and become part of the sprint are identified together, as well as the individual tasks that need to be completed to complete each requirement.
A 15-minute coordination and synchronization meeting is held daily in a sprint. development team members indicate what they completed the previous day, what they will complete on the current day, and if there are any obstacles in their way.
A meeting at the end of each Sprint, initiated by the Product Owner, in which the development team demonstrates to stakeholders the deployable product functionality completed in the Sprint. A timebox of 4 hours is provided for this. For shorter Sprints, the time is adjusted accordingly.
The deployable product functionality is demonstrated to stakeholders at the end of the sprint and can potentially be delivered to customers.
A meeting at the end of each sprint where the team reviews its processes. This is less about the perception of the team, during the sprint. The following questions could be asked as an example in the retrospective:
- What went well and what did not?
- Was I over-or under-challenged?
- How was the collaboration in the team?
- What was the reason?
- What did we learn for the future?
- Did we orient ourselves to the Scrum values?
- Are there any open questions or suggestions?
Artifacts in Scrum
The backlog is a collection of requirements that the customer (stakeholder) wants for the product and has agreed with the product owner.
To prioritize this collection of requirements, the product owner discusses and agrees with the development team in the refinement of which requirement has the highest effort. Then the team prioritizes the backlog. The development team is always involved. In Scrum, we always start with the highest priority. The Scrum Master usually supports the refinement of the Product Backlog to keep the group focused and task-oriented.
The sprint backlog is also a list. It makes visible the work that the development team does in a sprint. It contains all the product backlog items that the team will work on in that sprint and the associated tasks. The Team creates the Sprint Backlog during Sprint Planning. You can also add new tasks at any time during an ongoing Sprint.
A product roadmap describes the company’s path over some time (usually one year) to make the vision a reality. This is a document in which the team can record what will be implemented by product development in a future period. A roadmap should focus the company’s resources on a common goal in a planned manner. A product roadmap is a strategic tool for product management.
A release plan specifies the features that the team will develop in the next sprint and gives an approximate date for the release. The plan should include the responsibilities, resources, and activities needed for the release.
Scrum is centered on the 12 agile principles. These principles form a set of guidelines that help project teams implement agile projects. You can find the 12 principles here.
Benefits of Scrum Methodology
Scrum has many advantages over traditional development methods.
Scrum processes are executed in different work periods. This allows the team to focus on one feature at a time. The Team then can easily adapt to the user and it can scale in terms of design, scope, functionality more easily and transparently.
Meeting customer expectations
The customer can set their expectations and specify the value that each requirement brings to the project. The team can then estimate these and the product owner sets its priority. This person also checks during the sprint that the team meets the requirements and provides feedback to the team.
React flexibly to changes
It is possible to react quickly and flexibly to customer requests and market developments. Due to the agile way of working, it is possible to adapt to the changing requirements in projects.
Shorter time to market
The customer can already use the product before the team fully finishes the product.
Higher software quality
With the agile way of working you can ensure a higher quality of the software since you deliver a functional version after each iteration.