Effects of Refactoring Legacy Protocol Implementations: A Case Study

  • Authors:
  • Birgit Geppert;Frank Rosler

  • Affiliations:
  • Avaya Labs, Software Technology Research;Avaya Labs, Software Technology Research

  • Venue:
  • METRICS '04 Proceedings of the Software Metrics, 10th International Symposium
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

We report on our experience of applying collaboration-based protocol design in combination with software refactoring as enabling technologies for re-engineering legacy protocol implementations. We have re-engineered a subsystem of a large enterprise communications product. The subsystem implements a standards-based communication protocol with numerous proprietary extensions. Due to many enhancements which the code has undergone, it showed clear signs of design degradation. The business purpose of the re-engineering project was to improve intelligibility and changeability of the code without changing or breaking existing functionality and without imposing a significant performance penalty. We used the re-engineering effort as experimental context for evaluating the enabling technologies. This article reports on our findings and discusses why collaboration-based protocol design in combination with software refactoring worked well in achieving success with our re-engineering effort.