Skip to main navigation Skip to search Skip to main content

Controlling the Attack Surface of Object-Oriented Refactorings

  • Sebastian Ruland
  • , Géza Kulcsár
  • , Erhan Leblebici
  • , Sven Peldszus
  • , Malte Lochau

Research output: Conference Article in Proceeding or Book/Report chapterBook chapterResearchpeer-review

Abstract

Refactorings constitute an effective means to improve quality and maintainability of evolving object-oriented programs. Search-based techniques have shown promising results in finding optimal sequences of behavior-preserving program transformations that (1) maximize code-quality metrics and (2) minimize the number of changes. However, the impact of refactorings on extra-functional properties like security has received little attention so far. To this end, we propose as a further objective to minimize the attack surface of programs (i.e., to maximize strictness of declared accessibility of class members). Minimizing the attack surface naturally competes with applicability of established MoveMethod refactorings for improving coupling/cohesion metrics. Our tool implementation is based on an EMF meta-model for Java-like programs and utilizes MOMoT, a search-based model-transformation framework. Our experimental results gained from a collection of real-world Java programs show the impact of attack surface minimization on design-improving refactorings by using different accessibility-control strategies. We further compare the results to those of existing refactoring tools.
Original languageEnglish
Title of host publicationInternational Conference on Fundamental Approaches to Software Engineering (FASE) : Lecture Notes in Computer Science
Place of PublicationCham, Switzerland
PublisherSpringer Nature Switzerland
Publication date2018
Pages38–55
ISBN (Print)978-3-319-89362-4
ISBN (Electronic)978-3-319-89363-1
DOIs
Publication statusPublished - 2018
Externally publishedYes

Fingerprint

Dive into the research topics of 'Controlling the Attack Surface of Object-Oriented Refactorings'. Together they form a unique fingerprint.

Cite this