A Intel revelou uma nova ferramenta chamada ControlFlag, um sistema de pesquisa para programadores de máquinas que detecta erros de forma autônoma no código.
O anuncio foi feito durante o Labs Day 2020, um evento anual onde empresas de tecnologia e engenharia apresentam seus principais projetos realizados ao longo do ano.
Em testes preliminares, a ControlFlag buscou e detectou novos defeitos em mais de 1 bilhão de linhas sem etiqueta de código de qualidade de produção.
De acordo com a Intel, o sistema mostrou-se promissor como uma ferramenta de produtividade poderosa para ajudar desenvolvedores de software com tarefas de depuração, que ao ser feitas manualmente, geralmente são demoradas e trabalhosas.
A Intel ainda revelou que estima que dos US $ 1,25 trilhão gastos pelo setor de TI da empresa em desenvolvimento de software por ano, 50% dos custos são na depuração de código para buscas de erros e bugs.
"Achamos que o ControlFlag é uma ferramenta nova e poderosa que pode reduzir drasticamente o tempo e o dinheiro necessários para avaliar e depurar o código. De acordo com estudos, os desenvolvedores de software gastam aproximadamente 50% do tempo depurando. Com o ControlFlag e sistemas semelhantes, imagino um mundo onde os programadores gastem notavelmente menos tempo depurando e mais tempo naquilo que acredito que os programadores humanos fazem melhor expressar novas ideias criativas para máquinas", Justin Gottschlich, cientista principal e diretor / fundador de Pesquisa de programação de máquina no Intel Labs.
Como funciona o ControlFlag?
O ControlFlag é excutado por meio de uma combinação de programação de máquina que envolve aprendizado de máquina, métodos formais, linguagens de programação, compiladores e sistemas de computador. Operando especificamente por meio de um recurso conhecido como detecção de anomalias.
O sistema aprende com exemplos verificados para detectar padrões normais de codificação, identificando anomalias no código que podem causar bugs.
Além disso, se forem encontradas anomalias no código, a ferramenta pode detectar essas anomalias independentemente da linguagem de programação.
O benefício mais importante da abordagem não supervisionada do ControlFlag para o reconhecimento de padrões é que ele pode aprender por conta própria e se adaptar ao estilo do desenvolvedor e identificar variações estilísticas em uma linguagem de programação.
A ferramenta também aprende a identificar e marcar essas escolhas estilísticas e pode personalizar a identificação de erros e as recomendações de solução com base em seus insights.
De acordo com a Intel, isso minimiza as caracterizações do ControlFlag de código com erro daqueles que podem ser simplesmente um desvio estilístico entre duas equipes de desenvolvedores como um erro.
Quando a Intel testou o ControlFlag, ele foi capaz de identificar erros no código de qualidade de produção.
Uma dessas bases de código que foi analisada pela ferramenta foi cURL, uma anomalia que não havia sido reconhecido anteriormente, foi identificada no código cURL.
Atualmente, a Intel está usando o ControlFlag internamente para identificar bugs no desenvolvimento de seus próprios softwares e firmwares como um elemento importante do projeto Rapid Analysis for Developers, que visa acelerar a velocidade fornecendo assistência especializada.
Fonte: Intel