X
Innovation

Rote automation is so last year: AI pushes more intelligence into software development

There's been a lot of attention on employing generative AI to create or modify software code. Now it's time to look at how AI can assist IT professionals and managers in other ways.
Written by Joe McKendrick, Contributing Writer
Abstract AI representation
sankai/Getty Images

Will artificial intelligence (AI) help move DevOps efforts from fragile to agile? There is speculation across the industry that AI can greatly accelerate not just code generation for software, but all the details that follow -- including specifications, documentation, testing, deployment, and more. 

AI has been used for several years in its operational and predictive form, working behind the scenes to automate workflows and scheduling. Now, IT managers and professionals are embracing the potential of generative AI

Also: Agile development can unlock the power of generative AI - here's how

Within the next three years, the number of platform-engineering teams employing AI to augment the software development lifecycle will likely increase from 5% to 40%, according to an analysis published by a team of Gartner analysts led by Manjunath Bhat

Across the IT industry, there is notable optimism about the potential boost AI provides to DevOps and associated Agile practices. "Combining the DevOps and AI domains can be complementary by enhancing all phases of the software development lifecycle and enabling software to ship to market more rapidly, reliably, and efficiently," Billy Dickerson, principal software engineer with SAS, told ZDNET.

Also: 3 ways to accelerate generative AI implementation and optimization

Much activity is taking place around generative AI and the DevOps process. Just about all (97%) of the 408 technology managers in a survey released by automation specialist Stonebranch indicated they are "interested in incorporating generative AI into their automation programs." These professionals "see genAI as a pivotal tool to connect a more diverse set of tools and empower a broader range of users," the survey's authors point out. 

AI boosts DevOps, but DevOps also boosts AI application development, the Stonebranch survey shows. At least 72% of respondents have embraced machine learning pipelines to power their generative AI initiatives.

While there has been a lot of attention on using generative AI to create or modify software code, this is only a fraction of the development process. It's time to look at how AI can assist IT professionals and managers in other ways

"Developers on average spend anywhere between 10% and 25% of their time writing code," Gartner's Bhat and his co-authors wrote. "The rest of the time goes into reading specifications, writing documentation, doing code reviews, attending meetings, helping co-workers, debugging preexisting code, collaborating with other teams, provisioning environments, troubleshooting production incidents, and learning technical and business concepts -- to name just a few."

Integrating AI with "all phases of the DevOps feedback loop -- plan, code review and development, build, test, deploy, monitor, measure -- increases collaboration in teams and positively improves results," SAS's Dickerson pointed out. With planning, "AI can make the project management process more efficient by autogenerating requirements from user requests, detecting non-aligned timelines, and even identifying incomplete requirements."

Dickerson said AI can also handle the heavy-lifting processes in code review and development: "Not only can AI offer developers suggestions for autogenerating boilerplate code, it can also contribute to the code review process. This approach amplifies collaboration between teams and can lead to more innovation, faster time-to-market, and better alignment with business objectives."

Still, technology managers and professionals need to exercise caution in terms of going too far with AI-fueled DevOps and other Agile practices. "Overreliance poses risks," Ian Ferguson, senior director of SiFive, and formerly vice president of marketing at Lynx Software Technologies, told ZDNET.

Also: Generative AI is the technology that IT feels most pressure to exploit

"Without an understanding of how an autonomous AI platform arrived at a decision, we lose accountability," Ferguson said. "Without transparency into an AI's reasoning, we risk blindly accepting outcomes without the ability to question or validate them. We face a future in which a very limited set of companies can create complicated systems, or we see a reduction in the quality of systems."

Ferguson urged fostering "a collaborative dynamic between humans and AI in DevOps. The AI can handle rote coding while humans must own the definition of a thorough set of system requirements and behaviors," he explained. 

Dickerson also advised caution when proceeding with AI-driven DevOps: "Since AI can automate many tasks in the DevOps feedback loop, it would be ideal to have human oversight to ensure AI is making the correct automated decisions. The best practice is to ensure human approval of every important business decision."

In their report for Gartner, Bhat and his co-authors said that applying AI to one part of the software development lifecycle "can result in shifting rather than saving effort, creating a false sense of time savings. For example, time saved during coding can be offset by increased time for code reviews and debugging."

Also: AI business is booming: ChatGPT Enterprise now boasts 600,000+ users

There are, however, reasons to be excited about the impact of AI on DevOps. Evidence suggests AI can be applied to assist or accelerate later stages of the DevOps process. When it comes to the software build and test stage, for example, "AI can evaluate the inputs and outputs of the build process and look for failure patterns to assist in optimizing the meantime to recovery," Dickerson said.

In addition, "with its ability to analyze vast amounts of data and make predictions, AI can also assist with analyzing test results. This can help identify patterns of the most impactful and unreliable tests to assist in optimizing the testing process."

At the deployment stage, "AI can automate the provisioning, configuration, and management of common infrastructure resources. In turn, this can trigger deployments that use these autogenerated artifacts, which can then allow engineers to spend more time on complex deployments," Dickerson said.

For monitoring and measuring, "because enterprise deployments can produce a large quantity of data, DevOps teams can struggle to digest the necessary information to resolve issues that arise," Dickerson said. "To assist with this effort, AI can analyze metrics and logs in real-time to detect issues much earlier and allow for faster resolution. By analyzing continuous data and patterns, AI can forecast potential bottlenecks, identify areas of improvement, and assist in optimizing all phases of the DevOps lifecycle."  

Ferguson said that with human oversight, "AI can strengthen approaches like DevOps and Agile." He said the effective combination of AI and humans across the software lifecycle can increase productivity and innovation: "We must proactively shape this future, though, through transparency, trust-building, workflow re-engineering, and skills training."

Editorial standards