Benefits and costs of enabling variability and traceability in source code via feature annotations
Examensarbete på grundnivå
Datateknik 180 hp (högskoleingenjör)
Features, which drive the advancement of software systems, are often obscured in modern software projects due to the lack of clear and location-specific documentation. This absence creates significant challenges in software development, notably in time and resource efficiency. This lack of explicit feature documentation often leads to time-consuming efforts in locating features. This study tackles the problem by exploring an innovative approach: embedding feature annotations directly in the source code. It investigates both the benefits and potential costs associated with this practice, filling a gap in the current body of literature. To empirically evaluate this approach, a specialized tool, that we will refer to as an ’annotation logger’ was developed. The goal of the tool is to measure the time efficiency of feature annotations. Despite a few minor inaccuracies, the results of this evaluation demonstrated the tool’s reliability in gathering meaningful data. The findings suggest that, while introducing some additional overhead, feature annotations could fundamentally enhance the software development process by increasing location-specific clarity and reducing search times.
software product lines , traceability , feature location , embedded annotations