# π Scrum
Scrum is a way to organise teams to meet regularly, and plan work, such that delivery of software becomes a predictable, empirical, and consistent process. Depending where you work, you'll get different flavours and elements of Scrum - such as standups, work managed via a ticket management system, perhaps using two weekly planning and delivery cycles called Sprints. Some teams like to do retrospectives. There are key roles to play the Scrum game - a Product Owner, Developers, a Scrum Master. There are shared goals that are self-orientated by the team based on their understanding of the problem space.
# π§Ά Key Roles
# π Product Owner
The face of the team to stakeholders; responsible for:
- Defining and announcing releases
- Communicating delivery and product status
- Share progress to stakeholders
- Share significant risks, impediments, dependencies, and assumptions
- Negotiate priorities, scope, funding, and schedules
- Ensure that the product backlog is visible, easily understood, and well communicated
# ποΈ Team Members
A team might be a cross-functional team of programmers, engineers, operations, testers, business analysts, data scientists... whatever the job title, team members are the people who work towards a common goal of delivering useful increments of value each sprint.
It's expected that the team is self-organising; whilst no work should come to the team except through the product owner, or the scrum master, who act as shields to protect the team from distractions, the team are encouraged to interact directly with customers or stakeholders to build strong feedback loops and avoid assumptions.
Team members are responsible for:
- Ensuring work is well defined
- Doing the work
- Making sure the work is done correctly
- Keeping the state of work up-to-date
# π¦Ί Scrum master
Scrum is facilitated by a scrum master. This is rarely a dedicated role, but it is an accountable individual who is responsible for removing impediments (blockers) that might prevent the team from delivering product goals and deliverables.
Scrum masters are responsible for:
- Helping the product owner maintain the product backlog
- Helping the team determine a clear definition of done, with input from key stakeholders
- Coaching the team within scrum best practice in order to deliver high-quality features
- Educating key stakeholders on good use of agile practices
- Helping the team identify, remove, or even embrace impediments to the team's progress
- Promoting self-organisation and cross-functionality in the team
- Facilitating team events (ceremonies) to hold the team accountable, and push forward with progress
The scrum master helps people and organizations adopt empirical and lean thinking, leaving behind hopes for certainty and predictability.
# π Definitions of Scrum from other sources
# Wikipedia
Scrum or SCRUM, is a framework for project management, with an initial emphasis on software development.
Scrum is designed for teams of ten or fewer members, who break their work into goals that can be completed within time-boxed iterations, called sprints, no longer than one month and most commonly two weeks. The scrum team assesses progress in time-boxed daily meetings of 15 minutes or fewer, called daily scrums (a form of stand-up meeting). At the end of the sprint, the team holds two further meetings: the sprint review which demonstrates the work done to stakeholders to elicit feedback, and sprint retrospective which enables the team to reflect and improve.
# Value Flow Quality
Scrum describes itself as a βframeworkβ for developing and sustaining complex products.
Scrum is positioned as a process framework within which small teams can design and sustain complex products to effectively deliver the highest value.
# Scrum.org
In a nutshell, Scrum requires a Scrum Master to foster an environment where:
- A Product Owner orders the work for a complex problem into a Product Backlog.
- The Scrum Team turns a selection of the work into an Increment of value during a Sprint.
- The Scrum Team and its stakeholders inspect the results and adjust for the next Sprint.
- Repeat
The Scrum Guide promotoes five key values for building teams: Courage, Focus, Commitment, Respect, and Openness.
Courage - Scrum Team members have courage to do the right thing and work on tough problems.
Focus - Everyone focuses on the work of the Sprint and the goals of the Scrum Team.
Commitment - People personally commit to achieving the goals of the Scrum Team.
Respect - Scrum Team members respect each other to be capable, independent people.
Openness - The Scrum Team and its stakeholders agree to be open about all the work and the challenges with performing the work.