Refactoring a legacy component for reuse in a software product line: a case study

Autor: Thomas Patzke, Ronny Kolb, Dirk Muthig, Kazuyuki Yamauchi
Přispěvatelé: Publica
Rok vydání: 2006
Předmět:
Zdroj: Journal of Software Maintenance and Evolution: Research and Practice. 18:109-132
ISSN: 1532-0618
1532-060X
DOI: 10.1002/smr.329
Popis: Product lines are a promising approach to improve conceptually the productivity of the software development process and thus to reduce both the cost and time of developing and maintaining increasingly complex systems. An important issue in the adoption of the product-line approach is the migration of legacy software components, which have not been designed for reuse, systematically into reusable product-line components. This article describes activities performed to improve systematically the design and implementation of an existing software component in order to reuse it in a software product line. The activities are embedded in the application of Fraunhofer PuLSE™-DSSA—an approach for defining domain-specific software architectures (DSSA) and product-line architectures. The component under investigation is the so-called Image Memory Handler (IMH), which is used in Ricoh's current products of office appliances such as copier machines, printers, and multi-functional peripherals. It is responsible for controlling memory usage and compressing and decompressing image data. Improvement of both the component's design and implementation are based on a systematic analysis and focused on increasing maintainability and reusability and hence suitability for use in a product line. As a result of the analysis and refactoring activities, the documentation and implementation of the component has been considerably improved as shown by quantitative data collected at the end of the activities. Despite a number of changes to the code, the external behavior of the component has been preserved without significantly affecting the performance. Copyright © 2006 John Wiley & Sons, Ltd.
Databáze: OpenAIRE