Agile Dilemma: Balancing Yes and Pause in Project Navigation

Foto del autor

By Alberto Cortes

April 9, 2024

Have you ever wondered if our current acceptance of the Agile methodology streams from habit, trendiness or true necessity? Agile methodologies aren’t new in the world of software. This philosophy has become synonymous with adaptability, offering frameworks such as scrum, kanban, and XP. However, it took the tumult of the Covid-19 pandemic to truly test the adaptability promised by agile methodologies. Transformed business landscapes motivated organizations to seek approaches that would allow them to survive and, if possible, prosper amid the crisis. It was in this context that Agile emerged as a guiding light of adaptability.

Today, when we see the pandemic almost as a memory, it’s important to review and reflect on our experiences. While agile has undoubtedly proven effective, is it always the solution? When should we say yes to agile, and when should we pause and consider alternatives?

Let’s strip away the jargon and examine the fundamentals. Agile methodologies are designed to address high degrees of uncertainty (like technical uncertainty or sudden changes in definitions), where requirements evolve rapidly. However, for projects with stable, unchanging requirements, traditional waterfall approaches may be more suitable. It’s like calling a construction team to hang a painting on the wall.

The above already gives us a first decision criterion; but is agile then the answer for all changing scenarios with few certainties? Unfortunately the answer is no. Let’s explore key factors that can guide our decision correctly, whether that’s an Agile or a traditional Waterfall approach:

  1. Are there changing project requirements? 

In projects where requirements are constantly evolving, such as a virtual education platform which as time goes by must address new theories of education, add new functionalities and address priorities that change frequently, agile methodology shines in its ability to adapt to this variability. However, in projects with stable requirements and little dynamism, like a system for calculating taxes payable, where the tax burden is set by law and applied uniformly, the waterfall methodology emerges as the most suitable option.

  1. Is the team experienced? 

Agile methodologies demand autonomous teams, coupled with the skills and maturity of each team member. For teams lacking experience, it’s more suitable to adopt methodologies that mitigate the lack of seniority by allowing longer durations for analysis and technical solution definition, aligning more closely with traditional development philosophies.

  1. Is the technical solution unclear?

Knowing what needs to be done and understanding how to accomplish it are two very different things. In scenarios where the development team confronts high complexity or technical innovations without prior experience, agile methodologies offer significant value. Conversely, when the technical solution is familiar, and the organizational environment remains stable with minimal anticipated changes, waterfall methodology becomes the preferable choice. It’s essential to differentiate between having a clear vision of the desired product and possessing the know-how to execute it. Agile methodologies excel in situations where technical implementation presents challenges or novelty for the development team.

  1. How urgent does the client feel this solution is?

The client’s availability is paramount for project success. Their active involvement significantly contributes to project outcomes. However, integrating the client into the team can pose challenges, requiring trained resources to accompany the project through all stages. If the client cannot actively participate (a potential warning sign! 🚩), opting for the waterfall methodology becomes a more advisable approach.

  1. Is it a system that supports critical infrastructure or does it put lives at stake? 

Agile methodologies embrace the inevitability of error and emphasize adaptability to changes and risk-taking. This is why this approach is wholly incompatible with projects involving critical infrastructure or products that safeguard lives. We wouldn’t want aircraft manufacturers like Boeing or Airbus to experiment with prototype airplanes to ascertain their reliability. Therefore, such projects should raise multiple red flags 🚩🚩🚩 against employing agile methodologies.

  1. Is there a previously detailed and determined price or scope? 

Agile thrives on iterative adjustments to the project scope based on evolving business needs and priorities. However, if the contract stipulates a fixed scope and budget from the outset, with the expectation that the project will be delivered within these predefined parameters, agile methodologies may not be the best fit. In such cases, waterfall methodology would likely be more appropriate.

Agile serves as a framework, but ultimately, the success of any project hinges on the tact, skills, and judgment of the team involved. Knowing when to implement agile is just as crucial as recognizing when it’s not the right fit. It’s this discernment that ultimately guides teams towards successful project outcomes.

Wondering if your project would benefit from Agile methodology? Reach out to us at hello@arionkoder.com for a free consultation today!