The Agile method allows modern development teams to rapidly build software that is both efficient and effective. This course provides a comprehensive introduction to this approach to software development. The course begins with the major teaching points. Next, the methodology is presented, along with the rationale for its adoption. Included here is the Agile Manifesto. This section is followed by one that discusses how Agile teams are structured and types of development projects that are a good fit for Agile. The course delves into the leading challenges faced by Agile software developers today and the best practices that teams should incorporate into their development projects. The advantages that Agile brings to software development are then covered. The course concludes with key principles for Agile.