The funniest thing is that all those are words I hear almost every day. It all started with a cool idea that developers (that is, people that do programming), came up with a decade or so ago. At its root, it was a way to have managers understand that computer science had become anything but a science or even engineering. It had become clear by then that the current development practices, largely based on proper engineering, with detailed specifications and plans, were getting more and more cumbersome. So a new, leaner method was defined. Someone called it Extreme Programming, and all was good.
Then someone added some stuff and called the thing Agile. It was still good, but you could see something was changing.
Then people started specializing in 'Agile'. And people that never actually programmed anything started giving talks. And then managers wanted something similar because programmers had started to be able to work without them, and they called it Scrum. And Scrum was not bad in itself, but people with too much time on their hands started theorizing about what development was. Developers ignored it for a while (big mistake) and then someday they found out that what they had been doing before was now Scrum and Agile and some other names. And suddenly they had the less useful member of the team be branded Scrum Master and get a pay raise. Then people started signing emails as "Scrum Project Manager", and defining written methodologies for the monkeys to follow.
Anyway... I digress.