Will artificial intelligence (AI) help DevOps efforts finally move from fragility to agility?
The software industry speculates that AI can greatly accelerate not only code generation, but the entire lifecycle:
- Technical data
- Documentation
- Testing
- Deployment
AI has been used for several years in its operational and predictive form. She works behind the scenes to automate workflow and scheduling. But now CIOs and their teams are interested in the potential of generative artificial intelligence.
“The combination of DevOps and AI fields can be complementary”
Over the next three years, the number of IT teams using AI to improve the software development lifecycle is likely to increase from 5% to 40%, according to analysis published by Gartner and led by Manjunath Bhat.
Optimism is therefore in place. “The combination of DevOps and AI domains can be complementary by improving all phases of the software development lifecycle,” explains ZDNET Billy Dickersonsoftware engineer at SAS.
Furthermore, there is already a lot of activity in generative artificial intelligence and the DevOps process.
Generating code is only part of AI talent
Almost all (97%) of the 408 CIOs interviewed as part of a investigation published by Stonebranch indicate that they are “interested in integrating generative artificial intelligence into their automation programs”. These professionals “consider generative artificial intelligence as an essential tool for connecting tools and empowering a wider range of users,” the authors of the survey point out.
AI drives DevOps, but DevOps also drives AI application development. 72% of respondents have adopted machine learning pipelines to power their generative AI initiatives.
Generative AI can therefore create or modify code. But this is only part of the development process.
“On average, programmers spend between 10 and 25% of their time writing code”
“On average, developers spend between 10 and 25% of their time writing code,” writes Gartner. “The rest of the time is spent reading specs, writing documentation, code reviews, meetings, helping colleagues, debugging code, collaborating with other teams, securing the environment, troubleshooting production incidents, and learning technical and business concepts. »
Integrating AI into “all stages of the DevOps feedback loop increases team collaboration and improves results,” says SAS’s Dickerson.
When it comes to planning, “AI can make the project management process more efficient by automatically generating requirements from user requests, detecting mismatched deadlines, and even identifying incomplete requirements. »
Caution during installation
AI can also take over heavy code review and development processes, according to Dickerson. “Not only can AI offer code generation suggestions to developers, but it can also contribute to the review process. »
However, CIOs must be careful. “Overreliance carries risks,” says ZDNET Ian Fergusondirector of the SiFive company.
“If we don’t understand how the autonomous AI platform came to a decision, we lose responsibility. Without the transparency of AI thinking, we risk blindly accepting the results without being able to question or confirm them. »
“Human oversight to ensure artificial intelligence makes the right decisions”
Mr. Ferguson recommends fostering “the dynamic of collaboration between humans and artificial intelligence. AI can take care of the coding, humans need to take ownership of defining the system’s behavior.”
Mr. Dickerson also advises caution. “AI can automate many tasks. It would be ideal to have human oversight to ensure that the AI is making the right decisions. It is a best practice to ensure human approval of every important business decision. »
Gartner explains that applying artificial intelligence to the life cycle “can lead to a move instead of a economy some efforts. This creates a false impression of saving time. For example, time saved during coding can be offset by increased time spent on code review and debugging.”
AI for software development and testing
Still, there is reason to be excited. AI can help or accelerate the later stages of the DevOps process. For example, the software development and testing phase. “AI can evaluate the inputs and outputs of the creation process and look for patterns of failure to optimize the recovery interval,” says Dickerson.
“With its ability to analyze large amounts of data and make predictions, AI can help analyze test results. This can help identify the most influential and least reliable test patterns. »
In the implementation phase, “AI can automate the provisioning, configuration and management of shared infrastructure resources. It can run deployments that use these self-generated artifacts, freeing up engineers to spend more time on complex deployments.”
AI to track and measure
When it comes to monitoring and measurement, “because deployments can produce a large amount of data, DevOps teams can have trouble assimilating the information needed to solve problems.”
“To aid in this effort, artificial intelligence can analyze metrics and logs in real-time to detect problems much earlier.
And enable faster resolution. AI can predict bottlenecks, identify areas for improvement, and help optimize all stages of the DevOps lifecycle. »