To put it simply, agile software development is a way of dealing with constant change, Scrum is an agile methodology.
Source: Screenshot from Video: Explaining Scrum in less than 120 seconds
Source: Screenshot from Video: Agile Scrum in Two Minutes + FREE CHEAT SHEET
General: https://www.mountaingoatsoftware.com/agile/scrum
Roles
The product owner is the project’s key stakeholder. Typically, the product owner will be the primary user of the product, or at least have a deep understanding of who will. Despite this expertise, the product owner does not get to determine how much work happens in the sprint cycles, or alter the goals for that sprint. Product owners must be available to the team, and engage actively with it. Communication is a huge part of this, as the product owner communicates with both the team and other stakeholders.
The Scrum Master is the person who ensures the team keeps to the values and practices of Scrum, sort of like a coach. They remove impediments, facilitate meetings and work with product owners. Interestingly, the Scrum Master is a servant-leader who doesn’t have authority over the team, but does have authority over the process. They can’t fire people, but they can alter how long the sprints are. This can make the role more challenging than a traditional management role.
In a Scrum team, everyone works together to do whatever it takes to complete tasks they’ve all agreed on for a sprint. The Scrum team might have five to nine people on it. When projects are larger, you work with teams of teams, rather than making larger teams. In this case, teams may designate one member to attend meetings with people from other teams for something analogous to the daily Scrum, though it only takes place every few days. This section includes a helpful diagram of such a scenario.
This is, of course, the theory. In practice, Scrum could be called Scrumino, Scrum-In-Name-Only. Just like working with project method Prince2 would in many cases be abbreviated to PINO.