DocumentCode :
3067275
Title :
Separating features in source code: an exploratory study
Author :
Murphy, Gail C. ; Lai, Albert ; Walker, Robert J. ; Robillard, Martin P.
Author_Institution :
Dept. of Comput. Sci., British Columbia Univ., Vancouver, BC, Canada
fYear :
2001
fDate :
12-19 May 2001
Firstpage :
275
Lastpage :
284
Abstract :
Most software systems are inflexible. Reconfiguring a system´s modules to add or to delete a feature requires substantial effort. This inflexibility increases the costs of building variants of a system, amongst other problems. New languages and tools that are being developed to provide additional support for separating concerns show promise to help address this problem. However applying these mechanisms requires determining how to enable a feature to be separated from the codebase. We investigate this problem through an exploratory study conducted in the context of two existing systems: gnu.regexp and jFTPd. The study consisted of applying three different separation of concern mechanisms: Hyper/JTM AspectJTM and a lightweight, lexically-based approach, to separate features in the two packages. We report on the study, providing contributions in two areas. First, we characterize the effect different mechanisms had on the structure of the codebase. Second, we characterize the restructuring process required to perform the separations. These characterizations can help researchers to elucidate how the mechanisms may be best used, tool developers to design support to aid the separation process, and early adopters to apply the techniques.
Keywords :
Java; object-oriented programming; software maintenance; software tools; AspectJ; Hyper/J; codebase; early adopters; exploratory study; feature separation; jFTPd; lexically based approach; restructuring process; separation of concern mechanisms; separation process; software systems; source code; system module reconfiguration; tool developers; Computer science; Costs; Delay effects; Delay systems; Packaging; Separation processes; Software systems; Time to market;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering, 2001. ICSE 2001. Proceedings of the 23rd International Conference on
ISSN :
0270-5257
Print_ISBN :
0-7695-1050-7
Type :
conf
DOI :
10.1109/ICSE.2001.919101
Filename :
919101
Link To Document :
بازگشت