What is Agile development?
Agile software development or abbreviated Agile is a framework for software development based on the principles of iterative and incremental development where user needs are implemented by self-organized, multi-functional development teams.
Agile promotes adaptive planning, time-boxed iterations, encourages rapid and flexible response to change and constant feedback of all stakeholders in the development through frequent inspect - and- adapt activities. Software is delivered iteratively with the highest business value to customers developed first. Agile development involves collaboration of all stakeholders and supports fast and efficient decision-making.
Agile Manifesto introduced the concept of agility in software development in 2001. Since then, the agile movement, with all its values, methods, practices, tools, champions and practitioners, significantly changed the landscape of modern software development. With the start of the agile movements, numerous agile methods and frameworks were born such as Scrum, Lean, Kanban, Extreme Programming (XP), Discipline Agile Development (DAD), Dynamic Systems Development Method (DSDM), Scaled Agile Framework (SAFe), etc. Although each of agile methods and frameworks are unique in its specific approach, they all share a common vision and core values that originate from the Agile Manifesto. The most popular Agile framework is Scrum today and you can read more about Scrum in our blog What is Scrum? where we talk about Scrum and what are its most important characteristics.
If you want to learn more about agile approach for developing software, we recommend the free Agile for Dummies e- book. In addition to the e-book, we recommend the most important Agile organizations that provide a lot of useful information Agile Alliance, Scrum Alliance and Scrum.org.