Laboratório de Métodos de Aprendizado de Máquina em Engenharia de Software

As aplicações da ciência de dados estão cada vez mais populares em muitos campos de pesquisa e na indústria, inclusive na engenharia de software. Com esse grupo, pretendemos fundir as práticas atuais de última geração em ambas as áreas, melhorando as ferramentas de engenharia de software modernas e descobrindo novas formas de desenvolver e manter código.

Nossas áreas atuais de interesse:

  • Detecção de defeitos na arquitetura orientada a objetos e recomendação automática de refatorações apropriadas que otimizem a estrutura do código.
  • Detecção de clones de código e ferramentas para detecção automática e extração de fragmentos de código reutilizáveis.
  • Construção de incorporações mais elaborados de código para detecção de plágio, previsão de nomes de métodos e variáveis e resumo de códigos.
  • Análise da dinâmica do estilo de codificação dos desenvolvedores.
  • Uso de dados históricos para ampliar as ferramentas de colaboração, por exemplo, por meio de sistemas recomendadores.
  • Detecção de anomalias no código.
  • Geração automatizada de código com base em descrições de linguagem natural, chamadas de API usadas etc.
  • Assistência para codificação automatizada tanto para estudantes quanto para desenvolvedores experientes, incluindo localização/correção de erros típicos, detecção e adoção de recursos IDE, intenção do usuário e análise de contexto.
  • Análise baseada em submissões de métodos de previsão de repositórios de código para alteração, localização de bugs e outros eventos.
  • Métodos para detecção automatizada de bugs e reparo de programas.

Nossas áreas atuais de interesse:

  • Detecção de defeitos na arquitetura orientada a objetos e sugestão automática de refatorações apropriadas que otimizem a estrutura do código.
  • Detecção de clones de código e criação de ferramentas para detecção automática e extração de fragmentos de código reutilizáveis.
  • Construção de incorporações mais elaboradas de código para detecção de plágio, previsão de nomes de métodos e variáveis, e resumo de código.
  • Análise da dinâmica do estilo de codificação dos desenvolvedores.
  • Uso de dados históricos para ampliar as ferramentas de colaboração, por exemplo, por meio de sistemas recomendadores.
  • Detecção de anomalias no código.
  • Geração automatizada de código com base em descrições de linguagem natural, chamadas de API usadas etc.
  • Assistência para codificação automatizada tanto para estudantes quanto para desenvolvedores experientes, incluindo localização/correção de erros típicos, detecção e adoção de recursos IDE, intenção do usuário e análise de contexto.
  • Análise baseada em submissões de previsão de alterações em repositórios de código, localização de bugs e outros eventos.
  • Métodos para detecção automatizada de bugs e reparo de programas.

Seminários

Realizamos seminários abertos e reuniões de clubes de leitura, onde apresentamos resultados interessantes, tanto nossos quanto de outros parceiros. Participe do grupo de meetups para manter-se informado sobre as próximas sessões.

Pode-se encontrar os registros dos seminários passados no nosso canal no YouTube.

Membros do Grupo

Timofey Bryksin
Chefe de Laboratório
Danny Dig
Consultor Científico
Maksim Sheptyakov
Gerente de produto
Olga Galchenko
Gerente de Projetos
Egor Bogomolov
Pesquisador Sênior
Yaroslav Golubev
Pesquisador Sênior
Rauf Kurbanov
Pesquisador Sênior
Vladislav Tankov
Pesquisador Sênior
Mikhail Arkhipov
Pesquisador
Elizaveta Artser
Pesquisadora
Anastasia Birillo
Pesquisadora
Alexandra Eliseeva
Pesquisadora
Mikhail Evtikhiev
Pesquisador
Timur Galimzyanov
Pesquisador
Evgeniy Glukhov
Pesquisador
Evgeny Grigorenko
Pesquisador
Konstantin Grotov
Pesquisador
Yury Khudyakov
Pesquisador
Zarina Kurbatova
Pesquisadora
Denis Litvinov
Pesquisador
Anna Potriasaeva
Pesquisadora
Agnia Sergeyuk
Pesquisadora
Anton Shapkin
Pesquisador
Oleg Smirnov
Pesquisador
Maria Tigina
Pesquisadora
Sergey Titov
Pesquisador
Timofei Vasilevskii
Pesquisador
Ilya Vlasov
Pesquisador
Yaroslav Zharov
Pesquisador
Dariia Karaeva
Desenvolvedor de Software
Vladimir Poliakov
Desenvolvedor de Software