“Is agile new? I thought it was just another management fad from the early 2000s.” I was talking with a friend of mine about what makes agile transformations successful when he suddenly asked me this question.
As with any good question, the answer depends on how you look at it. The agile movement started almost two decades ago. Though it isn’t exactly new, that doesn’t really make it yesterday’s news either. Modern business history shows us that most management paradigms last for anywhere from 20-30 to 40-50 years — until new and better paradigms come along to replace them.
Agile started in 2001, when 17 programmers gathered on a ski retreat in Snowbird, Utah, a ski resort about 25 miles outside Salt Lake City. When a blizzard came and snowed them in at the hotel, the group got together and started talking about how they built software and managed projects with their clients.
In the course of the conversation, the members of the group found out that their ways of work had a surprising number of similarities. They wrote them down on a whiteboard and created the Manifesto for Agile Software Development, a four-bullet, 68-word document that gave birth to the agile movement as we know it today.
The agile manifesto says:
“We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.”
The men signed the manifesto and spent the rest of their time skiing and adding 12 agile principles to the document. Some of the authors say the 12 agile principles are an official part of the agile manifesto; others that it consists of only the 4 values.
Before agile became the norm that it is today in the software development community, most projects were managed using waterfall methods. Whereas agile is iterative and incremental, water project management is linear and sequential. In waterfall, projects are planned out in advance task by task, fixing the scope, budget, and timeframe.
Instead of working in short cycles and shipping potentially shippable software at the end of each, a waterfall team makes a detailed and step by step plan for how to deliver the entire project from start to end. That is traditionally done in sequential phases, each of which is normally weeks, months, or on rare occasions years long.
Two of the biggest problems of waterfall software development projects were that requirements were collected at the start of projects. Yet they often changed as the project progressed. Even if they didn’t, initial assumptions about how the software system should work would turn out wrong and require rework. Since these flaws were discovered late in the testing and operations phase of a project, the cost of change would often turn out to be unbearably high.
Even Winston Royce, the American computer scientist who’s credited for being the first to talk about the waterfall project management methodology per se, was highly critical about its effectiveness. “I believe in this concept,” he wrote in the 1970s in an academic paper, “but the implementation described above is risky and invites failure.”
Agile was a fresh breath of air for developers and their customers. Since agile teams worked in short cycles (iterations) and shipped features small and often (building products incrementally), they could discover flaws and change early on, adjusting their plans accordingly. Change was no longer intimidating. It was welcomed by the stakeholders and the development teams.
The word about the agile manifesto spread quickly. The agile movement grew popular in the software development community and got picked up by big companies and fast-growing startups in the tech sector. Many of them had success using agile. Their teams would keep delivering higher value at a lower cost — all while staying engaged and motivated.
As agile gained ground, so did a number of organizations created to promote agile (Agile Alliance) and train individual practitioners on agile frameworks (Scrum Alliance, Scrum.org, Scaled Agile Framework, and others). Many of these organizations were created by some of the co-founders of the agile manifesto. Others, like Extreme Programming co-founder Ron Jeffries, critique their approach to mass training and certification.
For some companies who build and sell agile collaboration software like Atlassian (maker of Jira and Trello) CollabNet (maker of VersionOne), agile has also become a big business. Atlassian, for example, is now a public company with 170,000 customers and 10 million monthly active users of their collaboration tools. 83% of Fortune 500 companies use Atlassian tools.
Speaking of Fortune 500, some of the biggest companies in the world are currently going through agile transformations. Agile transformations are a new management paradigm where companies create a network of self-organized teams. They are promoted as a way to increase organizational resilience and achieve competitive advantage by big consulting firms like McKinsey & Company, Bain & Company, and Boston Consulting Group.
In 2001, #agile had humble beginnings as a 68-word statement on a whiteboard. Today, it’s become an industry of its own.
This decade, agile will have plenty of opportunities to prove itself as a management paradigm. 2020 started with a pandemic and economic shock from government lockdowns that caused many companies to tighten their belts and focus on survival rather than growth.
How will this affect modern management practices? Will organizations and leaders revert to old ways of command-control, or will they adopt and adapt agile as the de-facto way to operate in a VUCA (an army acronym that stands for “Volatile, Uncertain, Complex, and Ambiguous”) environment?
Will most agile transformations succeed or fail? And what will that mean for the way companies are run? Will big data and artificial intelligence allow leaders and teams to gain more insight into their organizations, products, services, than before?
When it comes to the future of agile, there are plenty of open questions. And, if 2020 has shown us one thing, it’s that most people’s crystal balls have run out of batteries.
Is Agile a Framework or Methodology?
Many newcomers to agile confuse it for a framework or methodology. Agile is neither; it’s simply a mindset for building software products and managing software development projects.
The agile mindset is based on 4 values and 12 principles. The mindset, values, and principles give birth to an infinite number of agile practices. These agile practices are packaged in agile frameworks and agile methodologies, which allow individuals and teams to practice agile in a repeatable and scalable way.
Like the rules of a game, an agile framework gives individuals and teams an approach with which to think and a structure with which to and work in an agile way. Like a guide on how to play the game, agile methodologies give guidance on which agile practices to use.
For example, XP sets out “simple rules” that programmers can use to build software and manage their projects. This includes working in an iterative and incremental way, but it also includes specific practices like unit testing, pair programming, and integrating code often.
What Are Different Agile Frameworks?
The most popular agile framework is Scrum. Scrum has a number of adaptations, like Scrum of Scrums (“SoS”) and Large Scale Scrum (“LeSS”), that attempt to scale the framework for the enterprise. One of the most popular agile software development methodologies today is Extreme Programming (“XP”). Both Scrum and XP were co-founded by signatories of the agile manifesto.
Over the course of time, a number of additional frameworks got adopted or created by the agile community. This includes Objectives & Key Results (OKRs), a lightweight management method that Andy Grove introduced to Intel as its CEO in the 1970s. Today, OKRs are used by Google, Spotify, Twitter, LinkedIn, and other big companies and fast-growing startups in tech.
Another agile framework that’s gaining ground in recent years is the Scaled Agile Framework (“SAFe”), which takes the concept of roles, events, and artifacts from Scrum — and scales it to the level of the enterprise. SAFe attempts to give everyone in the organization, from senior management and enterprise architecture to development and IT operations teams, a role to play, event to attend, and artifacts to manage; working and syncing in one big cadence.
Can Agile Be Used for Non-Software Projects?
Yes, agile principles and practices can be used for non-software projects. Many companies outside the technology sector use agile to manage their business, operate business units, or run programs and projects in a way that’s responsive to change and maximizing delivery of value.
In “Who Can Learn Agile? Is It Only for Software Developers?”, I shared how the National Public Radio in the U.S. launches new radio shows in small batches and tests out which ones appeal to their listeners before they decide which ones should go primetime. NPR took the decision after a number of high-budget and high-expectation programs flopped.
Another example for how companies outside tech are using agile is John Deere, who in the 2010s had serious delays on a project to launch a new farming machine — and decided to go all-in on agile instead, teaching a team of 150 employees Scrum and turning into the framework for running the entire project.