History of Agile
In 1957, people started figuring out new ways to build computer programs. They wanted to make the process better over time, so they came up with iterative and incremental methods.
In the 1970s, people started using adaptive software development and evolutionary project management. This means they were adjusting and evolving how they built software.
In 1990s, there was a big change. Some people didn’t like the strict and super-planned ways of doing things in software development. They called these old ways “waterfall.” So, in response, lighter and more flexible methods showed up. These included:
- Rapid Application Development (RAD) in 1991.
- Unified Process (UP), Dynamic Systems Development Method (DSDM) in 1994.
- Scrum in 1995.
- Crystal Clear and Extreme Programming (XP) in 1996.
- Feature-Driven Development (FDD) in 1997.
Even though these came before the official “Agile Manifesto”, we now call them agile software development methods.
In 2001, seventeen software developers met at a resort in Snowbird, Utah to discuss lightweight development methods. They were: Kent Beck (Extreme Programming), Ward Cunningham (Extreme Programming), Dave Thomas (PragProg, Ruby), Jeff Sutherland (Scrum), Ken Schwaber (Scrum), Jim Highsmith (Adaptive Software Development), Alistair Cockburn (Crystal), Robert C. Martin (SOLID), Mike Beedle (Scrum), Arie van Bennekum, Martin Fowler (OOAD and UML), James Grenning, Andrew Hunt (PragProg, Ruby), Ron Jeffries (Extreme Programming), Jon Kern, Brian Marick (Ruby, TDD), and Steve Mellor (OOA). They wrote something important called the Manifesto for Agile Software Development. This was a big moment that set the stage for the agile movement.
In 2005, Alistair Cockburn and Jim Highsmith added more ideas about managing projects, creating the PM Declaration of Interdependence.
Then, in 2009, a group, including Robert C. Martin, added principles about software development. They called it the Software Craftsmanship Manifesto, focusing on being professional and skilled.
In 2011, the Agile Alliance, a group of agile enthusiasts, made the Guide to Agile Practices (later called Agile Glossary). This was like a shared document where agile people from around the world put down their ideas, terms, and guidelines. It’s a bit like a dictionary for how to do agile things.
What is Agile Methodology?What are Agile frameworks?Agile Development ModelsAgile Software Development MethodologyWhat is Agile Product Management?Popular Agile Tools for Software Development
The Agile methodology is a project management and software development approach that emphasizes flexibility, collaboration, and customer-centricity. It is the latest model used by major companies today like Facebook, google, amazon, etc. It follows the iterative as well as incremental approach that emphasizes the importance of delivering of working product very quickly. This article focuses on discussing Agile Methodology in detail.
Table of Content
- What is Agile?
- What is the Agile Methodology?
- History of Agile
- Manifesto for Agile Software Development
- Agile Software Development
- What is Agile Project Management?
- Agile Software Testing
- Agile Methodology Advantage and Disadvantage
- Agile vs Waterfall Methodology
- Life cycle of Agile Methodology
- When to use the Agile Methodology?
- Agile Methodologies vs Traditional Approaches
- Benefits of Agile Methodology
- Limitations of Agile Methodology
- Agile Software Development Interview Questions
- Conclusion
- FAQs