Untangling the Knot

Poster
This poster, presented by James Ivers at Research Review 2024, highlights key insights, methods, and findings in software engineering practice and innovation.
Publisher

Software Engineering Institute

Abstract

Software structure becomes entangled over time, eroding traits like modularity. Automated refactoring can improve the modularity of software at low cost.

Summary

Refactoring software to improve its modularity enables

  • capability reuse
  • migration to cloud or microservices
  • containerizing software
  • development efficiency

Solution

We created a refactoring assistant that analyzes existing code and generates recommendations for refactoring to improve modularity. The assistant

  • solves application-specific problems
  • identifies common code used by multiple features or services
  • provides teams with options
  • works with Java, C#, and C/C++