Dave Thomas (2014), a famous programmer and author, recently proclaimed in his blog that Agile is dead. By itself, another blog proclaiming Agile to be dead is not a big deal, the blog just enters the sea of other blogs on Agile and then gradually disappears from the collective mind of the software development community. Thomas' blog posting was different, for Dave Thomas is one of the 17 software developers that wrote the Agile manifesto: the document that gave birth to Agile. His words are valuable and deserve consideration by every person involved in software development.
The Agile manifesto is a short document, only 68 words long. Most of these words are used to describe what Thomas et al. (2001) believe are the four core concepts that lead to successful software projects:
Individuals and Interactions over Processes and Tools
Working Software over Comprehensive Documentation
Customer Collaboration over Contract Negotiation, and
Responding to Change over Following a Plan
These core concepts ignited a revolution that led 38.6% of IT professionals to adopt Agile in lieu of traditional software development methodologies (West, 2011). The succinctness of the manifesto, however, did not leave room for describing an actual implementation of Agile. Several methodologies sought to fill this void, and in turn they saw their popularity increase as the revolution grew. Of these methodologies, Scrum is by far the most popular (West, 2011).
Scrum was developed with the intention of managing the software development process, while allowing the software developers to pick the specific technique that they use to write software (Abrahamson, Warsta, Siponen, Ronkainen, 2003). The Scrum process is simple: a business owner together with a development team, create a list of requirements that the project must meet. In Scrum terminology, this is called Project Backlog. From the Project Backlog, the development team takes the requirements that they believe can be completed within a certain time (usually a couple of weeks). Scrum calls this period a Sprint. At the end of the Sprint, a fully functional, yet incomplete, product is released. This process is repeated until a functional complete product is created ("Scrum", 2014). The process is better understood through a chart:
Scrum and the Agile mindset are very effective. In Amazon, for example, Scrum is the most prominent software development methodology (Atlas, 2009) and is partly behind Amazon's ability to successfully deliver software products (one popular example is Amazon's cloud computing platform). What would then lead Dave Thomas to declare Agile dead? A research document by Dave West, "Water-Scrum-Fall Is The Reality Of Agile For Most Organizations Today" gives some insight. As West notes, organizations usually carry with them a legacy of traditional management tools and don't know how to adapt them to Agile (West, 2011). Consultants and marketers have noticed this problem and have jumped at the opportunity to help organizations adapt. Unfortunately, their solutions have come in the form of rigid processes that organizations must follow; contradicting the Agile Manifesto's "people before process" principle. The term Agile itself has come under attack: since there is no single Agile methodology, the term has been reduced to a bullet point in whatever methodology the consultant is selling. This is what Dave Thomas argues: that Agile has now become meaningless and no longer helps people develop software (Thomas, 2014). The term Agile no longer fulfills the Agile Manifesto's definition.
Dave Thomas ends his blog post by encouraging us to use the term Agility, and leave the term Agile behind. Ultimately, I disagree with his conclusion. I believe he is correct in his assessment that Agile has been subverted and that the shape the term has now differs from what its original authors intended. As a software developer, I know that there will always be shortcomings in every implementation of an idea. Some implementations are worse than others and this is also true of Agile methodologies. However, the word Agile is now inextricably linked to the Agile Manifesto and the Agile Manifesto is the best embodiment we have of Agile principles. Anyone that wants to learn about Agile will inevitably reach the manifesto. Marketers and consultants help spread the manifesto by letting organizations know that there is another way out there and it is called Agile. Switching terms would only confuse people who are seeking knowledge. In the end, it is up to each organization and to each team to evaluate what is presented as Agile and make their own decision. Fortunately, the Agile Manifesto is out there to guide them. Long live Agile.
- Abrahamsson, P., Warsta, J., Siponen, M.T., Ronkainen, J., (2003) "New directions on agile methods: a comparative analysis," Software Engineering, 2003. Proceedings. 25th International Conference on, 244-254. doi: 10.1109/ICSE.2003.1201204
- Atlas, A., (2009) "Accidental Adoption: The Story of Scrum at Amazon.com," Agile Conference, 2009. AGILE '09. 135-140. doi: 10.1109/AGILE.2009.10
- Beck, K., Beedle, M., Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R., Kern, J., Marick, B., Martin, R., Mellor, S., Schwaber, K., Sutherland, J., Thomas, D., (n.d) Manifesto for Agile Software Development Retrieved September 14, 2014, from http://agilemanifesto.org/
- Scrum (Software Development). In Wikipedia. Retrieved September 14, 2014, from http://en.wikipedia.org/wiki/Scrum_(software_development)
- Thomas, D. (n.d) Agile is Dead (Long Live Agility). Retrieved September 14, 2014, from http://pragdave.me/blog/2014/03/04/time-to-kill-agile/
- West, D., (2011) "Water-Scrum-Fall Is The Reality Of Agile For Most Organizations Today" Forrester Research