Agile development is a way of thinking about software development as expressed in the Agile Manifesto, and acts as an “umbrella” for a group of methodologies. The methodologies are based on process-centric and iterative development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. Agile development is a conceptual framework that promotes evolutionary change throughout the entire life cycle of the project and represents a new, more flexible approach to development than the traditional methods that have previously been the norm for software development.
What is Agile?
The ability to create and respond to change in order to succeed in an uncertain and turbulent environment.
What is Agile Software Development?
Solutions evolve through collaboration between self-organizing, cross-functional teams utilizing the appropriate practices for their context.
A Short History of Agile
In the late 1990’s, several methodologies began to gain increasing public attention, each having a different combination of old and new ideas.
These methodologies emphasized close collaboration between the development team and business stakeholders; frequent delivery of business value, tight, self-organizing teams; and smart ways to craft, confirm, and deliver code.
The term “Agile” was applied to this collection of methodologies in early 2001 when 17 software development practitioners gathered in Snowbird, Utah to discuss their shared ideas and various approaches to software development.
The Agile Alliance was formed shortly after this gathering to encourage practitioners to further explore and share ideas and experiences.
The Agile Alliance continues to curate resources to help you adopt Agile practices and improve your ability to develop software with agility.