Студенты и аспиранты института получили награды Best Paper на конференции SYRCoSE
Студенты и аспиранты института получили награды Best Paper на конференции SYRCoSE
В конце мая в Пятигорске состоялась научная конференция в области программной инженерии SYRCoSE – 2025. Институт прикладных компьютерных наук ИТМО представили две группы студентов и аспирантов, которые разработали инструменты для автоматического анализа парсеров и тестирования файловых систем. Оба доклада получили высокие оценки жюри и удостоились двух из трех номинаций за лучшую статью. Работы будут опубликованы в сборнике трудов ИСП РАН, входящем в перечень ВАК. Подробнее о своих разработках участники рассказали в нашем материале.
Участники конференции, фото из архива ИСП РАН
Участники конференции, фото из архива ИСП РАН
Доклад: DIFFuzzer: Detecting File System Errors with Differential Grey-box Fuzzing

Вячеслав Ковалевский, Валерий Кечин — студенты магистратуры «Инструменты разработки и анализа программ», Владимир Ицыксон — доцент Института прикладных компьютерных наук, руководитель магистратуры «Инструменты разработки и анализа программ»
  • Вячеслав Ковалевский
Файловые системы являются важнейшим компонентом любой современной ОС. Cбои, происходящие в работе файловых систем, могут приводить к катастрофическим последствиям, а обычного тестирования зачастую недостаточно для выявления таких ошибок. Анализом файловых систем занимались многие исследователи, но часть из разработанных ими инструментов уже устарели, а другие имеют существенные ограничения.

Одним из самых эффективных методов динамического анализа программ является фаззинг-тестирование (или просто фаззинг). Его основная идея заключается в том, чтобы генерировать и передавать системе псевдослучайный набор входных данных, который может привести к серьезным программным ошибкам. В силу специфики организации и функционирования файловых систем, фаззинг — в особенности дифференциальный — является наиболее перспективным методом анализа качества и обнаружения неполадок. Этот вид фаззинга позволяет находить семантические ошибки, сравнивая поведение двух и более программ на одинаковых входных данных. Его легко применить для файловых систем, так как обычно они имеют одинаковый интерфейс вызовов.

Занимаясь этой проблемой, мы с моим одногруппником Валерием Кечиным разработали инструмент для тестирования файловых систем. В ходе тестирования обнаружили несколько ошибок, связанных с неправильным поведением реализации файловой системы, которые трудно или невозможно найти с помощью большинства существующих инструментов.

Эта тема очень перспективная, так что мы планируем продолжить над ней работать. Существует множество направлений развития. Например, мы хотим расширить список поддерживаемых файловых операций и реализовать тестирование производительности и устойчивости файловых систем к сбоям.

В этом году наш доклад отметили званием Best Paper, но для меня лучшая награда — это возможность побывать на такой конференции, познакомиться и пообщаться с участниками из других университетов. Хотелось бы увидеть больше докладов на SYRCoSE в следующем году, особенно из ИТМО.
Ольга Бачище, Владимир Ицыксон и Александр Божнюк, фото из архива ИСП РАН
Ольга Бачище, Владимир Ицыксон и Александр Божнюк, фото из архива ИСП РАН
Доклад: PereFlex: A Tool for Automated Evaluation of Error Recovery in Parsers

Ольга Бачище и Григорий Райкин — аспиранты Института прикладных компьютерных наук (выпускники магистратуры «Разработка программного обеспечения»), Дарья Васина, Даниил Шушаков (ИТМО), Ярослав Воробьёв (НИУ ВШЭ), Семён Григорьев (СПбГУ)
  • Ольга Бачище
Наш доклад посвящен анализу восстановления после ошибок в парсерах — это ключевой механизм, который особенно важен для таких инструментов, как IDE. Даже если в коде есть синтаксическая ошибка, разработчику важно видеть, что происходит дальше: парсер должен хотя бы частично продолжать работу. Мы сосредоточились на том, как можно объективно оценить это свойство.
В результате мы разработали инструмент для автоматического анализа парсеров, который позволяет сравнивать их между собой и обоснованно выбирать наиболее подходящий вариант под конкретную задачу — с опорой на количественные метрики.

Над проектом мы работали в сотрудничестве с коллегами из исследовательского центра имени Чебышева. Мы верим, что успех стал возможен благодаря совместным усилиям всей команды. Особенно хочу отметить вклад Ярослава Воробьёва — он взял на себя реализацию технической части, предложил свежие идеи и представил первую версию проекта на Конгрессе молодых ученых (КМУ). Научным руководителем выступил Семён Вячеславович Григорьев, чья экспертиза была крайне важна на всех этапах исследования. Свою роль я вижу в координации разработки, поиске релевантной теории и написании основного текста статей.