Agile methodology is an approach to project management, typically used in software development. It helps teams respond to the unpredictability of building software through incremental, iterative work cadences, known as sprints.
Scrum is an agile project management approach that combines an empirical process model with clearly defined roles for the management and execution of that process. Within the Scrum framework, there are three roles: The Product Owner, the ScrumMaster, and the Team.
User story is one of the primary development artifact for the XP project teams. A user story contains just enough information so that development team can reasonably give estimate about completing, tester can discuss how it will validated and customer can see its value.