Agile Methodology – Hierarchy of frameworks and recent trends
The adoption of Agile methodologies has spread far beyond software development since the Agile manifesto was created in 2001. As a result, today Agile is embraced by thousands of engineering, manufacturing, and service companies. The development has also led to rapid branching of methodologies coming from Agile theory. A fresh project manager might even find it hard to handle all the abbreviations before he can get on track in an Agile company.
If you ever found yourself confused by the number of popular Agile methodologies and their hierarchy, then this post is exactly for you. Let’s start from a cheat sheet with all the magic names in one place.
What is Agile methodology?
At the center of it all lies the theory, representing the 4 core values and 12 principles of Agile defined in the manifesto. However, the Agile theory in itself does not provide any specific rules, it simply reflects what the project management teams should strive for. In other words, that is Agile standards like continuous improvements, speed delivery, customer satisfaction, consistency, collaboration, simplicity, and others. Therefore, we separated Agile in the picture, so that we would not start to associate it with just one methodology.
List of Agile methodologies
From the overall Agile rules, stem the various ways of application. And those are what we describe as various Agile frameworks or methodologies. Teams choose to use one of these approaches based on their team process and needs. In fact, teams often switch from one approach to another until they find one that is closest to their style of working and goals.
It is important to note, that all of these approaches are considered to be Agile, but not one of them represents Agile explicitly. We have divided them into the first and second-generation approaches depending on if they were created from scratch or derived as a mix of other Agile applications.
First-generation Agile approaches
To begin with, the first generation of Agile methodologies definition was developed straight after the Agile manifesto or adapted to fit its requirements. They list closest to agile in the cheat sheet.
Agile Modeling is a practice-based framework for effective modeling and documentation of software-based systems.
Adaptive software development (ASD) is an Agile methodology that embodies the principle that continuous adaptation of the process to the work at hand is the normal state of affairs. It replaces the traditional waterfall cycle with a repeating series of speculating, collaborate and learn cycles. Read more on Agile vs Waterfall.
Agile Unified Process (AUP) applies Agile techniques including test-driven development (TDD), Agile modeling (AM), Agile change management, and database refactoring to improve productivity.
Crystal Clear Method is a lightweight, flexible methodology from Alistair Cockburn in 2004. It is designed for small teams of 6-8 people to develop non-critical business applications.
Dynamic systems development method (DSDM) fixes cost, quality, and time at the outset. It uses the MoSCoW prioritization of scope into musts, shoulds, coulds, and will not haves. By that, it adjusts the project deliverables to meet the stated time constraint.
Feature-driven development (FDD) is an Agile methodology that, as its name suggests, organizes software development around making progress on features. However, features in the FDD context are not necessarily product features in the commonly understood sense. They are rather more similar to user stories in Scrum.
Lean software development is a translation of lean manufacturing principles and practices to the software development domain. Adapted from the Toyota Production System, it is emerging with the support of a pro-lean subculture within the Agile community.
Scaled Agile Framework (SAFe) promotes alignment, collaboration, and delivery across large numbers of Agile teams. It leverages three primary bodies of knowledge: Agile software development, lean product development, and systems thinking.
Scrum is the most popular agile project delivery framework for developing, delivering, and sustaining complex products. Its main idea is breaking work into goals that can be completed within sprints. Daily scrums and sprint retrospectives create space for continuous improvement. The Scrum Team consists of a Product Owner, the Development Team, and a Scrum Master. Scrum Teams are self-organizing and cross-functional.
Extreme programming (XP) is a software development methodology that intends to improve software quality and responsiveness to changing customer requirements. As a type of Agile software development, it advocates frequent “releases” in short development cycles.
We consider this list to be the first generation methodologies. They were not influenced by or based on other Agile types. The second generation of methodologies is the exact opposite.
The second-generation Agile methodologies list
In Kanban, we visualize work items to give participants a view of progress and process, from start to finish. For that Kanban practitioners usually use a Kanban board (like Teamhood). There they pull work as capacity permits (work in progress limits exist to ensure a swift workflow). Find more about task management in this Kanban sheet.
Hybrid Agile approach Scrumban
Scrumban is a hybrid methodology made of Scrum and Kanban applications. The main features of Scrumban are on-demand planning, prioritization, pull principle, and the usage of a board to structure workflow.
Large Scaled Scrum (LeSS) is an Agile methodology for scaling Scrum to multiple teams who work together on a single product. The LeSS framework seeks to apply the principles and ideals of Scrum in a large-scale enterprise context swiftly.
DAD Agile methodology framework
Disciplined Agile Delivery (DAD) is a people-first, learning-oriented hybrid project management approach to IT solution delivery. It has a risk-value delivery lifecycle, is goal-driven, enterprise aware, and scalable. It supports a robust set of roles, several delivery lifecycles, and provides choices, not prescriptions.
Nexus is an Agile project framework that extends Scrum to guide multiple Scrum Teams on how they work together to deliver working software in every Sprint. It shows how teams share work, manage and minimize dependencies.
Enterprise scrum is a highly configurable, customer-centric management Agile methodology for achieving true business agility. As well as the organizational ability to adapt quickly and effectively to all forms of change, deliver maximum value and greatest customer satisfaction.
Agile development methodology IXP
Industrial Extreme Programming (IXP) has derived from Extreme Programming and follows the majority of its practices. It adds some new ones as well, such as readiness assessment, viability assessment, project chartering, storytelling, and others. IXPs key values are Communication, Simplicity, Learning, Quality, and Enjoyment.
These second-generation methods come from meshing other Agile methodology or by trying to improve a single already existing method out there.
One more interesting thing about these different Agile methodologies is that practitioners often use them outside of the traditional Agile industry of software development and more often than not adopt them to serve larger teams and even full corporations.
Trends of different Agile methodologies
According to the 2019 State of Agile report, Scrum is by far the most popular Agile methodology among teams. Scrum has got the major preference because it divides complicated tasks into user stories. It also ensures that the end product suits customer needs via frequent iterations and continuous feedback.
However, this method also has its weaknesses. To make up for the shortcomings in Scrum, a large number of companies are also using different types of Agile methodologies (like Kanban), or a hybrid methodology (like ScrumBan) to reach success.
Scrum Master Trends report from the year 2019 shows that 81% of the respondents claimed to use Kanban in addition to Scrum.
In conclusion, the Agile methodologies continue to evolve, while being adopted in different industries and business cultures. The latest developments of mobility, digitalization, and remote workplace accelerate this adoption trend.
2019 - Present Co-founder and CEO @ Teamhood.
2015-2019 Head of software engineering department at Danske Bank.
2017-2018 Partner Associate Professor at Vilnius University. Lecturer of Software Architecture course
2011 - 2015 Managed numerous smaller IT teams at Prewise.
Co-founder of RaveIT, Eylean, No Brakes Games
Certified Agile product owner and practitioner. Managed large scale enterprise projects as well as launch of small startup products.
MSc of Software Engineering at Vilnius University.
Hobbies: Racing, MTB cycling, Windsurfing