Machine Learning Methods in Software Engineering Lab

Applications of data science are growing in popularity in many fields of research and industry, including software engineering. With this group, we aim to merge current state-of-the-art practices in both areas, by improving modern software engineering tools and discovering new ways to develop and maintain code.

Our current areas of interest:

  • Detecting defects in object-oriented architecture and automatic recommendation of appropriate refactorings that optimize code structure.
  • Code clones detection and tools for automatic detection and extraction of reusable code fragments.
  • Building richer embeddings of code for plagiarism detection, method and variable name prediction, and code summarization.
  • Analysis of dynamics of developers’ coding style.
  • Utilizing historical data to augment collaboration tools, e.g. through recommender systems.
  • Anomaly detection on code.
  • Automated code generation from natural language descriptions, API calls used, etc.
  • Automated coding assistance both for students and seasoned developers, including finding/fixing typical errors, IDE feature discovery and adoption, user intent and context analysis.
  • Commit-based analysis of code repositories predicting methods to change, bugs location, and other events.
  • Methods for automated bug detection and program repair.

Our current areas of interest:

  • Detecting defects in object-oriented architecture and automatic suggestion of appropriate refactorings that optimize code structure.
  • Detecting code clones and creating tools for automatic detection and extraction of reusable code fragments.
  • Building richer embeddings of code for plagiarism detection, method and variable name prediction and code summarization.
  • Analysis of developers’ coding style dynamics.
  • Utilizing historical data to augment collaboration tools, e.g. through recommender systems.
  • Anomaly detection in code.
  • Automated code generation from natural language descriptions, API calls used, etc.
  • Automated coding assistance both for students and seasoned developers, including finding/fixing typical errors, IDE feature discovery and adoption, user intent and context analysis.
  • Commit-based analysis of code repositories predicting changes, locations of bugs, and other events.
  • Methods for automated bug detection and program repair.

Seminars

We host open seminars and reading club meetings where we present interesting results of our own and others. Please join our meetup group to stay informed about upcoming sessions.

Records of past seminars can be found in the YouTube channel.

Group Members

Timofey Bryksin
Head of Research Lab
Anastasia Birillo
Researcher
Egor Bogomolov
Senior Researcher
Mikhail Evtikhiev
Researcher
Yaroslav Golubev
Senior Researcher
Artyom Lobanov
Researcher
Elena Lyulina
Researcher
Oleg Smirnov
Researcher
Vladislav Tankov
Senior Researcher
Sergey Titov
Researcher
Anastasia Tuchina
Researcher
Ilya Vologin
Researcher
Igor Davidenko
Researcher
Alexandra Eliseeva
Researcher
Denis Litvinov
Researcher
Olga Petrova
Researcher
Maria Tigina
Researcher
Anna Vlasova
Researcher