Does refactoring improve reusability?

Raimund Moser, Alberto Sillitti, Pekka Abrahamsson, Giancarlo Succi

Research output: Chapter in Book/Report/Conference proceedingConference article in proceedingsScientificpeer-review

64 Citations (Scopus)

Abstract

The improvement of the software development process through the development and utilization of high quality and reusable software components has been advocated for a long time. Agile Methods promote some interesting practices, in particular the practice of refactoring, which are supposed to improve understandability and maintainability of source code. In this research we analyze if refactoring promotes ad-hoc reuse of object-oriented classes by improving internal quality metrics. We conduct a case study in a close-to industrial, agile environment in order to analyze the impact of refactoring on internal quality metrics of source code. Our findings sustain the hypothesis that refactoring enhances quality and reusability of – otherwise hard to reuse – classes in an agile development environment. Given such promising results, additional experimentation is required to validate and generalize the results of this work.
Original languageEnglish
Title of host publicationReuse of Off-the-Shelf Components
Subtitle of host publication9th International Conference on Software Reuse, ICSR 2006
PublisherSpringer
Pages287-297
ISBN (Electronic)978-3-540-34607-4
ISBN (Print)978-3-540-34606-7
DOIs
Publication statusPublished - 2006
MoE publication typeA4 Article in a conference publication
Event9th International Conference on Software Reuse, ICSR 2006 - Torino, Italy
Duration: 12 Jun 200615 Jun 2006

Publication series

SeriesLecture Notes in Computer Science
Volume4039
ISSN0302-9743

Conference

Conference9th International Conference on Software Reuse, ICSR 2006
Country/TerritoryItaly
CityTorino
Period12/06/0615/06/06

Keywords

  • software development methods
  • reusable software components
  • Agile Methods
  • refactoring
  • agile environment
  • agile software development

Fingerprint

Dive into the research topics of 'Does refactoring improve reusability?'. Together they form a unique fingerprint.

Cite this