20 de December 2024
What is agility and why is it being questioned in companies?
Agility is a methodology used to develop products and services in uncertain environments.
It uses an iterative and incremental approach for the continuous delivery of valuable products and services, and a constant measurement of the results obtained in each cycle.
Although it has been widely disseminated, in recent years, I have seen many organizations use different agile approaches for software development without obtaining the expected results, generating absolute disappointment.
Is this a magic solution for any type of project and context? The answer is no, which is why today the methodology is being questioned by many of the organizations that promoted it as an “infallible remedy.” This has been the result of having used it indiscriminately regardless of the context.
This article explores some possible reasons behind these disparate results and offers recommendations for successful adoption.
The illusion of agility
The first cause of failure has been thepressure to be agileimposing the use of agility as a practice and tool to adapt to change and be competitive without first evaluating the existing conditions.
Agilism led many organizations to improvise when applied in an inappropriate environment. Your success depends on a number of factors, for example:
- The context: Agile works in high-uncertainty environments, where requirements can change and expected results are uncertain.
- Tools and processes: An environment that supports continuous and reliable delivery is essential.
- The architecture: a flexible architecture is necessary to adapt to rapid changes.
Dangers of false agility
The dogmatic application of agilism can lead to:
- Increased complexity: introducing new practices in an inappropriate environment can cause confusion and delay projects.
- Reduced quality: The rush to deliver value can lead to neglecting quality and accumulating technical debt.
- Confusion in roles and responsibilities: lack of clarity in roles can lead to conflicts and delays.
- Missing deadlines: Lack of the right conditions can lead to results similar to traditional approaches, not continuous delivery.
- Increased cost: Frequent implementation of changes without the right tools can increase costs.
If appropriate, tomaximize the benefits of agility, it is recommended:
1. Evaluate the context: analyze whether agility is the best option for each project.
2. Take a gradual approach: start with small projects and gradually scale up.
3. Train and select the right team: Invest in training for successful adoption and start with the teams with the least resistance to change.
4. Invest in tools: Evaluate whether it is necessary to invest in tools to support agility.
Agility is a powerful tool, but it must be used carefully. Proper implementation can lead to greater agility and adaptability. However, improvisation or indiscriminate application can generate more problems than solutions.
For this reason, I always propose to advance gradually and selectively, and in any case take advantage of certain dynamics inherent to agility to capitalize on some of the recommendations and successes of this practice.
The methodologies Agile are recognized as enablers to drive agility and digital transformation.