This document provides an overview of Agile software development. It begins by defining Agile development as empowering people through constant feedback and acknowledging change. It then outlines the history of Agile methods from the 1970s to today. Key figures who developed methods like Scrum, Extreme Programming, and others are mentioned. The Agile Manifesto values individuals, working software, customer collaboration and responding to change. Core Agile principles are also outlined. Common Agile practices around design, testing, planning and communication are then explored. Finally, it discusses popular Agile methodologies like Scrum, XP, FDD and Lean and key themes across methods.