EVOL Lab logo EVOL Lab

EVOL Lab / Projects / MOVis

Active repository Qt / C++ FSE 2026 demo

MOVis

MOVis is an interactive visual analytics system for localizing missed patches across software variants. It combines a Qt-based interface with the PaReco backend so developers can explore variant relationships, drill down into files and commits, and reason about missed patches visually.

Illustration showing interactive missed-patch visualization for MOVis
Illustrative view of MOVis linking software variants, patches, and file-level drill-downs inside an interactive visual workflow.

Overview

MOVis is the visualization counterpart to missed-patch analysis. Where mining tools recover candidates from related repositories, MOVis helps developers and researchers inspect those relationships through an interactive interface that highlights variants, patches, files, and commit-level details.

The artifact supports reproduction of an FSE 2026 tool demonstration paper and includes a Qt-based GUI, the PaReco analysis backend, scripts, Docker support, and development guidance for Linux, macOS, and Windows. It is designed to be self-contained enough for reproduction while still being extensible for new datasets and ranking logic.

What the project focuses on

  • Interactive localization of missed patches across software variants.
  • Visual exploration of patch, file, and commit relationships.
  • Integration of a Qt GUI with mining and analysis backends.
  • Reproducible demonstrations of software-variant maintenance workflows.

Key takeaways

  • Combines a Qt/C++ interface with the PaReco backend for analysis and extraction.
  • Supports local and Docker-based execution on Linux, macOS, and Windows setups.
  • Focuses on exploratory navigation across variants, files, and missed patches.

Why it matters

Missed-patch evidence is harder to act on when it stays trapped in tables or scripts. MOVis makes those relationships visible so developers can inspect, compare, and reason about synchronization opportunities much more directly.