000%
< back to work

Academic + Open Source·2025

Refactoring Study

Refactoring treated as an engineering activity, measuring whether changes made real maintenance tasks easier across real-world Java systems.

Client
Academic + Open Source
Role
Software Engineer
Stack
Java, Git, SonarQube, RefactoringMiner
Year
2025
  • Java
  • Refactoring
  • Code Quality

Problem

In large Java codebases, small design issues compound over time. My goal was to treat refactoring as an engineering activity, then measure whether the changes made real maintenance tasks easier.

What I did

I selected real-world Java systems (H2 Database, OpenPDF, and JFreeChart) and worked through concrete code smells and refactoring candidates surfaced by SonarQube.

Outcome

Improved readability and cleaner separation of responsibilities, reducing mental load when tracing behaviour across classes.

Highlights

  • Analyzed H2 Database, OpenPDF, and JFreeChart
  • Used SonarQube and RefactoringMiner to surface candidates
  • Documented measurable code-quality improvements