Berlin

November 4 & 5, 2024

New York

September 4 & 5, 2024

Is agile manifesting or preventing AI adoption?

In the rush to adopt AI, many organizations have forgotten – or conveniently overlooked – the fundamentals of agile software delivery.
November 27, 2024

You have 1 article left to read this month before you need to register a free LeadDev.com account.

Estimated reading time: 6 minutes

The first value of the Agile Manifesto is “individuals and interactions over processes and tools.”

Yet, much AI adoption to date has us right back focusing on the shiny tools – ignoring the people, their processes, and the problems they actually want to solve.

AI is already falling short on delivering a return on its astronomical investment. While 84% of business leaders believe that AI will have a big impact on their business, a mere 14% of organizations say they feel fully ready to adopt AI, according to a report by Cisco.

Part of that comes down to neglecting other agile values. Most organizations aren’t focusing on user collaboration, creating processes to respond to this change, or prioritizing working software, yet.

Why AI projects fail

When you don’t involve all the stakeholders early and often for problem identification and goal setting, you don’t build the right thing.

In “The Root Causes of Failure for Artificial Intelligence Projects and How They Can Succeed,” Rand researchers interviewed 65 data scientists and engineers, each with at least five years’ experience. The research coalesced around five familiar reasons that, despite ample investment, most companies aren’t seeing results from AI projects:

  1. Stakeholders misunderstand or miscommunicate the problems needed to be solved by AI.
  2. Organizations lack the proper data to train models.
  3. Organizations are focusing on using new technology, not solving real-user problems.
  4. They still don’t have adequate infrastructure to manage and deploy models.
  5. AI is still confused for a magic wand, but it cannot be used to automate every difficult task – nor should it be.

The majority of these AI challenges come down to miscommunication. Per the report: “Too often, trained AI models are deployed that have been optimized for the wrong metrics or do not fit into the overall business workflow and context.”

Not listening to your developers

This misunderstanding of the type of problems to be solved by AI is particularly apparent when applied to the software development lifecycle.

The State of DevEx Survey, from Atlassian and DX, found that leaders believe that AI is the most effective way to improve developer productivity and satisfaction. In stark contrast, a staggering two-thirds of developers have yet to see any significant AI productivity gains.

“There’s nothing sinister happening here,” Andrew Boyagi, head of DevOps evangelism at Atlassian, said. “The leaders want to empower their devs to be happy, to be productive. But when they don’t understand how to do that, it’s a huge problem.”

This mismatch is in part because most of the AI for software development is focused on code generation. When a good day for developers most often involves having more time to code, don’t look to automate away that feeling.

A hyper focus on AI and especially AI-generated code doesn’t just mean disgruntled employees, it also means worse software. The 2024 Accelerate State of DevOps report, found that an increase in AI adoption reduces delivery stability – measured by change fail rate and failed deployment recovery time – by 7.2%, and delivery throughput – measured by deployment frequency and change lead time – by 1.5%.

We do know that widespread generative AI adoption has led to more code being written than ever, but since most teams didn’t have automated testing down before AI, more bad code is getting through. This risk to software quality will likely carry over to increasing AI security risks as well.

Code generated by AI is also measurably less understandable and maintainable for human coders, which further decreases stability, and could leave developers spending more time fixing bugs.

Where AI is working for devs

The loudest secret in software development is that your users usually know more about their challenges than you do.

That’s certainly the case with internal developers, who, in the same Atlassian-DX DevEx survey, responded that their top time-wasters are technical debt and insufficient documentation. This reflected a closer understanding of their core problem, which includes 69% of developers wasting eight hours a week due to inefficiencies, like looking for things. 

Explaining complex codebases is something that AI is already good at. If leadership understood where developers say they are losing their productivity, then they could pivot AI resources to these sources of toil. 

The 2024 DORA report also found that the only significant positive change due to AI adoption was a 7.5% increase in documentation quality. If context switching is one of the biggest impediments to developer productivity, then leveraging generative AI to create and query documentation could help.

No matter where you are introducing AI into the software development lifecycle, it’s important to allow engineers to experiment safely. “A lot of people are afraid in their current position to use AI and to demonstrate the value because all of a sudden, if you say that you’re more productive, well, will I still have a job?” Patrick Debois said at this year’s DevOpsDays London. “There’s been cases of people not mentioning that they had productivity increases just because they want to fly under the radar.”

Can agile support AI development?

One in five of the interviewees for the Rand report specifically called out “rigid interpretations of agile software development processes” as holding back AI projects.

For instance, DevOps and agile development is normally done by small two-pizza, cross-functional teams, with AI and data science teams remaining largely centralized or siloed off.

Back in 2020, business analyst Snigdha Satti argued that agile processes needed to be changed to work for data science and AI teams. While AI adoption has skyrocketed since then, these issues persist. 

Satti spoke about how the News UK data science team was working on too many tasks, unable to plan and prioritize the backlog. They were unable to scope feasibility and meet stakeholders’ expectations.

Not only were they missing deadlines, the data science team was demotivated. Agile seemed the perfect solution to help the team focus, but Satti soon realized that not all agile is fit for AI purpose.  

For one thing, AI development is very iterative, but it is not easily time-boxed. It’s difficult to break this work into weekly or biweekly estimates and sprints, in part, because machine learning models are constantly in flux, rather than tangible deliverables. They often quickly change scope, requirements, and deliverables. 

On the other hand, agile did eventually help Satti’s team clarify business needs, prioritize backlogs, and foster communication by introducing strict deadlines and encouraging collaboration through sprints, daily standups, and retrospectives.

Just as it always has been, agile is not a panacea for AI projects, but there are principles and techniques that could help your team. Just remember, as Satti said, “don’t let agile stop your team from doing valuable work.”