When the Agile Manifesto was first introduced, there were a few ‘lightweight’ development processes. More such methods have emerged since and collectively they are described as Agile methodologies.
Agile is not only a set of principles and values, but it is also a way of thinking and acting. Agile is about iterative and incremental delivery, short cycles, delivering business value to customers faster, and getting feedback. Overall, it is about the people, collaboration, and interaction.
It establishes a mindset about transparency, adaptation and inspection. However, it does not consist of any events, roles or artifacts.
So, in this article we will learn about the most popular agile methodologies to really understand what they really are.
A key founding method, Extreme Programming is the source of many popular agile methodologies. It is a disciplined approach that includes continuous planning, high customer involvement, continuous testing, and rapid delivery in very short intervals.
Scrum is also a very popular agile methodology that borrows its name from the Rugby term ‘Scrum‘. This methodology uses this term as a metaphor for a regular update meeting.
Scrum consists of short iterations, also known as ‘Sprints’. These sprints focus on delivering a working software with a prioritized ‘backlog’ for the product as well as the sprint.
Furthermore, the Scrum method specifies a product owner whose role is to set the priorities.
UP is also and incremental and iterative framework that includes implementations like RUP, AgileUP and OpenUP.
Moreover, it is a highly tailorable framework that is risk-focused and architecture-centric. There are basically 4 different phases of UP, namely, Inception, Elaboration, Construction, and Transition, with each phase having a different focus.
DSDM scales around RAD or XP approaches and provides project governance. This approach has defined formal stages within the project phase called pre-project, project and post project.
Business Purpose is the primary criteria for acceptance of the system and delivery.
RAD is a range of iterative and agile approaches and methodologies, described by James Martin.
It consists of analysis, design, builds, and test phases which are repetitively iterated to develop prototypes and versions with updated functionality.
Kanban is an approach that originated from Lean approach, that we will discuss next. And, David Anderson later further developed Lean approach to come up with Kanban.
This approach is basically based on visualization of the workflow. It typically has a physical board that addresses issues causing problems and balancing the demands of the team.
Lean majorly focuses on eliminating waste from the project and delivering value to the customer.
This approach first originated in 1970s from manufacturing and later applied and popularized by Tom and Mary Poppendieck in their book Lean software development.
Currently the buzzword of the software development industry, Agile is a different way of managing software projects. Rather than a specific software development method, it is an umbrella term for a set of methods and practices based on the values and principles expressed in the Agile Manifesto.
In agile methodology, solutions continuously evolve through the collaboration of cross-functional and self-organizing teams that utilize their respective and appropriate practices.
Moreover, there are many other Agile methodologies in use today. Some of these are hybrid methods and numerous in-house customizations that the organizations have developed according to their need.
Sign up to stay updated with the latest insights, news, and more.