JetBrains Research — наука, меняющая мир

Co-change Clusters: Extraction and Application on Assessing Software Modularity

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

В рамках семинара мы рассмотрим статью, авторы которой применяют метод под названием "co-change clustering", с помощью которого они выделяют в коде артефакты, подверженные частому совместному изменению. Далее, исследователи оценивают качество их метода кластеризации с помощью сопоставления получившихся кластеров с существующей в проекте системой модулей, а также с помощью исследования семантической близости текстов issues, ассоциированных с внесенными в кластер изменениями. Научившись решать задачу кластеризации совместно изменяющихся частей исходного кода, авторы проводят масштабное исследование популярных open-source проектов, в попытке выделить типичные виды таких зависимостей артефактов, а также оценить их связь с неправильной модуляризацией проекта.

Докладчик: Дмитрий Кравченко.

Язык доклада: русский.

Дата и время: 10-е апреля, 20:00-21:30.

Место: Таймс, аудитория 204.

Видео с предыдущих семинаров доступно по ссылке: http://bit.ly/MLJBSeminars