Scrum is an empirical process control framework that businesses use to deliver important features to customers within 30 days. It encompasses a set of practices and values that help teams deliver product features in an iterative and incremental fashion. Scrum is especially useful in complex situations - that is, environments in which the final product must be produced by a collaborative team process whose members work together to discover the end result because technology and requirements continually emerge throughout the lifecycle of the project.
The core roles are those committed to the project in the Scrum process—they are the ones producing the product (objective of the project). They represent the scrum team. In addition to the three core roles, there are five meetings (sprint planning, daily scrum, sprint review, sprint retrospective and optional release planning) and five artifacts (product backlog, sprint backlog, sprint burndown, optional release backlog and optional release burndown).
The Product Owner represents the stakeholders and is the voice of the customer. He or she is accountable for ensuring that the team delivers value to the business.
The Product Owner writes customer-centric items (typically user stories), prioritizes them, and adds them to the product backlog. Scrum teams should have one Product Owner, and while they may also be a member of the development team, it is recommended that this role not be combined with that of Scrum Master.
The Development Team is responsible for delivering potentially shippable product increments at the end of each Sprint.
A Development Team is made up of 3–9 people with cross-functional skills who do the actual work (analyse, design, develop, test, technical communication, document, etc.). The Development Team in Scrum is self-organizing, even though they may interface with project management organizations (PMOs).
Scrum is facilitated by a Scrum Master, sometimes written as ScrumMaster, who is accountable for removing impediments to the ability of the team to deliver the sprint goal/deliverables. The Scrum Master is not the team leader, but acts as a buffer between the team and any distracting influences. The Scrum Master ensures that the Scrum process is used as intended. The Scrum Master is the enforcer of rules. A key part of the Scrum Master’s role is to protect the Development Team and keep it focused on the tasks at hand.