Knowledge-Based Library Re-Factoring for an Open Source Project

  • Authors:
  • M. Di Penta;M. Neteler;G. Antoniol;E. Merlo

  • Affiliations:
  • -;-;-;-

  • Venue:
  • WCRE '02 Proceedings of the Ninth Working Conference on Reverse Engineering (WCRE'02)
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software miniaturization is a form of software refactoringfocused on reducing an application to the barebone. Porting an application on a hand-held device is verylikely to require a preliminary step of software miniaturization,plus the development of device drivers dedicated to thenew environment and hardware architecture.This paper presents the process and the lessons learnedre-factoring a large Open Source application to get rid ofextra fat, to introduce shared libraries, to remove circulardependencies among libraries and, more generally, to minimizeinter-library dependencies.While the final goal was to fully exploit shared librariescapabilities, among the various possibilities we defined aprocess based on the existing knowledge about the application,and aimed to minimize the maintenance effort requiredby the miniaturization activities.