Agile methodology is a framework for modern software development. What is the philosophy behind Agile? How does it differ from traditional project management strategies like waterfall? What are the stages, meetings, tools, and team roles? What is Scrum?