Agile is often considered one of the most overused words in the Information Technology industry. It has been variously applied to software development, more generally as a project delivery methodology, and even to the flexibility of an entire enterprise or organisation. For good reason, however, as Agile is an important framework. Studying its roots helps to understand this broad usage and why it has expanded to become amongst the most in-fashion mindsets in business for the last 20 years or so.
Agile, as a term, wasn’t popularised until the release of the Manifesto for Agile Software Development in 2001, but the underlying concepts can be traced at least as far back to the 1970s with ideas around evolutionary project management. More loosely linked, but even further back was the work of Walter A. Shewhart, referred to as the father of Statistical Quality Control, at Bell Labs experimenting with Plan-Do-Study-Act (PDSA), an iterative and incremental development methodology to improve products and processes. One of his mentees, W. Edwards Deming, went on to help create the Toyota Production System, the forerunner of Lean Manufacturing.
Ultimately, these early dabblings in new ways of development were being created to overcome the shortfalls of the traditional Waterfall Model, with its more rigid process flow, where requirements for engineering and software design are known and fixed up-front. With increasing technological advances and technological possibilities, organisations like NASA and companies like IBM began experimenting with these iterative ideas when tackling the unknowns involved in new and complex engineering projects, such as designing spacecraft. The Waterfall Model wouldn’t work given the inevitable changes that would surface during the design and implementation phases. These development efforts were simply too unpredictable, and with projects like the first human spaceflight, had too many unknowns.
The 1990s, with the rise of PC computing, is when many of the underlying Agile methodologies truly took shape, though at the time, they were still treated somewhat separately. Scrum was one of the first. An iterative and incremental framework, Scrum brings together self-organising, multi-disciplinary teams to accomplish tasks more quickly. Working in “sprints”, the concept is to take ideas for small features, then code, test and release them within a designated timeframe. Another, Kanban, for example, developed by Toyota as a Just-in-Time production system, became a process-management tool for software development by visualizing the workflow for small teams, emphasising continual delivery as a way of shortening cycle times and releasing features faster. There’s even a hybrid called Scrumban that attempts to extract the best of both frameworks. There are plenty of other examples, too, such as Extreme Programming (XP), first used at Chrysler when trying to combine a number of disparate payroll applications into a single system.
The breakthrough came in early 2001, when a number of the architects of this wide range of software development tools and frameworks came together at a ski resort in Utah. There was a common rejection of the “documentation driven, heavyweight software development processes” of old. The search for common ground amongst the alternatives produced the Manifesto for Agile Software Development signed by all the participants at that gathering. That end result was bigger than the tools and processes that underline Agile. It helped define the values and principles that Agile proponents would use going forward and add credibility and consistency to the frameworks and methodologies that would bear its name. The aim of the Manifesto can be read here.
What is even more impressive is the legacy the Manifesto has left behind. While there were 17 original authors, the document was left open for software developers to sign and agree to over the next 15 years, attracting over 20,000 signatories. The Agile Alliance, a non-profit offshoot founded by some of the 17 original authors, has attracted more than 60,000 members and subscribers to an organisation that continues to promote the principles of the Manifesto today.
While there are critics who believe Agile is dead or has been overused to the point of being meaningless, a large number of experts believe that Agile is poised to expand well beyond the IT industry where it’s likely to transform more than just software development.
Featured Image: agilemanifesto.org