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 or 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 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.
At the core of it all lies the agile theory, representing the core values and the 12 principles 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.
First generation of agile methodologies.
To begin with, the first generation of agile methodologies were developed straight after the agile manifesto or adapted to fit its requirements. They list closest to agile in the cheat sheet.
Firstly, Agile Modeling, which is a practice-based methodology for effective modeling and documentation of software-based systems.
Secondly, Adaptive software development (ASD), which 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 speculate, collaborate and learn cycles.
Thirdly, Agile Unified Process (AUP), which applies agile techniques including test-driven development (TDD), agile modeling (AM), agile change management and database refactoring to improve productivity.
Crystal Clear Methods 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 prioritisation of scope into musts, shoulds, coulds and will not haves. By that it adjusts the project deliverable to meet the stated time constraint.
Feature-driven development (FDD) is an agile framework 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 one of the most popular agile frameworks 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 which 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 these to be the first generation agile methodologies. They were not influenced by or based on other agile methods. The second generation of methodologies is the exact opposite.
Second generation of agile methodologies.
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).
Scrum-ban is a hybrid of Scrum and Kanban technologies. 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 a framework 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.
Disciplined Agile Delivery (DAD) is a people-first, learning-oriented hybrid agile 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 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 framework 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.
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 methods or by trying to improve a single already existing method out there.
One more interesting thing about the second generation agile methods is that practitioners often use them outside of the traditional agile industry of software development and more often than not adopt to serve larger teams and even full corporations.
The recent agile trends
According to State of Agile report of 2019, Scrum is by far the most popular 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 other Agile methodologies (like Kanban), or a hybrid of methods (like ScrumBan) to reach success.
Scrum Master Trends report from 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, digitalisation and remote workplace accelerate this adoption trend.