Research group

Machine Learning Methods in Software Engineering

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.

Group Members

Timofey Bryksin
Timofey Bryksin
Head of Research Lab/Group
Aleksei Shpilman
Aleksei Shpilman
Advisor
Vladimir Kovalenko
Vladimir Kovalenko
Senior Researcher
Anastasia Birillo
Anastasia Birillo
Researcher
Egor Bogomolov
Egor Bogomolov
Researcher
Mikhail Evtikhiev
Mikhail Evtikhiev
Researcher
Yaroslav Golubev
Yaroslav Golubev
Researcher
Ekaterina Koshchenko
Ekaterina Koshchenko
Researcher