There’s a hard message to be delivered and you’ve likely heard it already — it’ll be a long time before things return to normal. Health experts and epidemiologists agree on this on all accounts, some saying this crisis will permanently change the way we work. To survive, businesses need to adjust to the new reality, rather than close down to wait out the storm.
This post is not a philosophical debate about the superiority of Agile over Waterfall. It is about why Agile is the only way to move forward, as it is designed to do exactly that — to adapt to changing conditions.
In these challenging times of the COVID-19 pandemic, there’s much uncertainty in the markets and traditional ways of working and delivering products are put to a tough test. In this story, we will explore some new challenges for product development and reasons to double down on Agile practices.
First, a little refresher on Waterfall and Agile and how they differ. This topic has been covered in many other places, so we will just touch on the basics.
The Olden Days, aka Waterfall
Below is a simplified flow of a waterfall project. In practice, there’re a few more phases, for instance — there might be an extensive market research phase or a security review phase, involving the cybersecurity team or a deployment planning phase, with the involvement of infrastructure and operations team.
There’s a lot more to it (formal documents, professional certifications, etc), but the bottom line is — there is an idea and after a sequence of phases, there is a finished product. The focus is on creating and following the plan and less on collaboration and pivots. This process can take anywhere between a year and 5 years and more, depending on the project’s complexity.
The waterfall methodology assumes that all the questions can and need to be answered upfront. It often suits long and complex projects that require detailed planning, like a 10+ year space flight project, for example, although this classical approach is recently put to the test, by companies like SpaceX which deliver traditionally waterfall projects rapidly and continuously pivoting their designs, following the Agile approach.
The New Days, aka Agile
Agile, on the other hand, focuses on early and continuous delivery of incremental product features. Below is a, also simplified, flow of an Agile project.
There’s also a lot more to it, with methodologies like Scrum or Kanban, but the bottom line is — the original idea is refined and delivered incrementally, constantly feeding user input into the next cycle, to develop a product better fit to the needs of end-users and improve the way of working. Agile focuses on team collaboration and recognizes that plans change.
The Agile methodology assumes there are unknowns and intentionally tackles those once they present themselves. It best suits dynamic environments, with constantly shifting market needs or areas with ample unknowns, where full upfront design is not possible. Most technology companies today check both these boxes.
Challenges during COVID-19 crisis
Before we discuss the challenges the pandemic imposes on organizations, there are a few difficult facts, that we all need to accept. I’m not trying to paint any post-apocalyptic images, it’s just a fact. The sooner we accept it, the easier it’ll be to decide how to proceed, rather than remain paralyzed by it.
Firstly, the crisis will not go away anytime soon. The projections are being adjusted daily and according to experts, some form of social distancing will be necessary until a vaccine is developed, which could take up to 12–18 months.
Secondly, some industries like hospitality and travel will shut down almost completely and most other industries will feel the effect of the crisis, due to the network effect of the economy.
Lastly, as a result of the above, change and need for continuous adaptation will be a new norm.
…we also have to recognize that we’re going to have to continue to adapt to this situation for the foreseeable future
Alex Perkins, epidemiologist, University of Notre Dame
Let’s now explore the challenges that teams and organizations face during this crisis. The focus of this story is purely on the organizational and product development hurdles, rather than the (more important!) personal and life-altering tragedies.
There are three major challenges, that teams need to face.
- Sudden remote work. Due to social distancing regulations, most workplaces (except for ‘essential businesses’ like supply chain, transportation, emergency and health services) have gone remote, often from one day to another. This has caught many of the companies unprepared, from either process or tooling perspective. Executives and project managers scramble to quickly establish processes to enable remote work. As experience shows, however, team collaboration is driven by human dynamics, rather than a formal process and therefore constantly evolves. A sudden shift towards remote work creates a disruption in teams’ flow, which will need organizational flexibility to settle.
- Prolonged isolation. As employees work from the safety of their homes, face-to-face communication is exchanged for online presence and much of the communication moves to an asynchronous mode, like emails and chat messages. The loss of physical proximity will affect the feeling of connectedness and trust teammates have towards each other, especially along the manager-employee lines in the org charts. It will be tempting to fill this void with additional regulations, which will only exacerbate the social distance and further degrade the feeling of trust.
- Uncertain markets. The crisis is heavily impacting many industries and bringing some, like hospitality and travel, on their knees. Many services lost their market fit almost instantly (think sports gym, movie theatres) and companies will face very difficult times to stay afloat. In the fast-developing and changing situation, market needs are a moving target. Businesses will need to experiment rapidly and get creative about pivoting their services to digital channels.
Agile to the rescue
We’ll now look at how Agile can help with these challenges through the lens of the Agile Manifesto, a document created by 17 leaders in the software industry in 2001, which gave a start to the Agile movement. It consists of 4 statements and 12 principles, which outline the spirit of the practice. We’ll pick the ones, that are especially relevant.
Responding to change over following a plan. This central concept in Agile methodology allows teams to adjust course. The original requirements specification that now misses the target in the new COVID era, can pivot by responding to user feedback (or lack of user interest) on a cycle basis, which is typically 2 weeks. This puts much less work at risk of being wasteful, compared with a waterfall approach, where the product gets released only once fully developed.
Additionally to product feature specification, the team needs to course-correct the way they work. For teams that are new to remote collaboration, this is especially important, as tweaks like reducing or increasing daily touchpoints, switching email updates for group chats, etc, will be frequent at the beginning. Agile retrospectives develop a muscle for constant refinement and empower the team to self-organize. Having this ability has an added benefit of increasing the team’s morale, work satisfaction and strengthens the feel of trust the team receives from the management.
Individuals and interactions over processes and tools. When adapting to the new standard of remote work, it’s tempting to prescribe a process and a set of tools to tackle it. The individual can easily be trampled in this transition and so it is important to recognize the importance of human interactions and focus the transition around them, rather than on the process itself. The stress of a pandemic can further isolate team members and reduce their happiness, job satisfaction, and productivity.
Implementing this rule might mean prioritizing video group chats over isolated work time or creating space for 1 on 1 ‘water cooler’ conversations, which are often the hidden driver for innovation at companies. Agile daily stand-ups and huddles can satisfy this need.
Customer collaboration over contract negotiation. Whether working with vendors or other internal teams, it’s tempting to work towards a written agreement — either a written legal contract with a software vendor or a JIRA story handed off to the infrastructure team for implementation. While writing down expectations is a good practice and helps as a point of reference for both sides, it creates a wall in between and reduces the opportunity for a constructive conversation. This can result in delays, due to lack of information or execution of a task, which misses the target but follows the specification to the letter.
Instead, try including vendor representatives or external team members in your daily standup meetings or other touchpoints. Misunderstandings are much easier to resolve when spotted early!
Promote sustainable development. When our personal and professional lives both take place at home, the boundary between the two can start to blur. Especially during the COVID crisis, it is tempting to find escape in work, however, this proves to be short-sighted and stress eventually catches up magnified. Experts advise taking care of oneself by consciously taking regular breaks from work and practicing mindfulness. Agile processes promote a healthy and sustainable pace, which, by definition, can be maintained indefinitely.
In closing, as much as it is hard to see now, looking beyond the daily human tragedies of this pandemic, these times are a forcing function for businesses to embrace the remote and Agile work models. As Nick Bloom, a Standford economics professor has concluded in his research, remote work can result in huge productivity gains and workforce churn, although it is not without challenges, especially caused by the feeling of isolation, which Agile practices, implemented with commitment, help prevent.
Finally, let’s remember — adapting to this crisis is not optional and now, more than ever before, companies need to put people and interactions over dry, inflexible processes and fixed plans. It’s time to finally pull the plug on Waterfall!