Publication | Closed Access
Granularity in software product lines
464
Citations
37
References
2008
Year
Unknown Venue
Software MaintenanceEngineeringColored IdeSoftware EngineeringSoftware AnalysisFormal VerificationData ScienceSystems EngineeringSoftware QualityComputer EngineeringFeature ModelingSoftware Product LineComputer ScienceStatic Program AnalysisSoftware Product LinesSoftware DesignCode RefactoringProgram AnalysisSoftware TestingFormal MethodsSpl DevelopmentProduct Line EngineeringCoarse GranularitySystem Software
Building software product lines with features is challenging, and most existing implementations support only coarse granularity, such as adding entire methods, while fine‑grained extensions—like inserting statements within methods—are difficult or require intrusive annotations. This paper investigates how feature granularity impacts SPL development and introduces the Colored IDE (CIDE) tool. CIDE enables concise implementation of both coarse‑ and fine‑grained feature extensions by providing a framework that integrates feature code directly into the base program. Two case studies demonstrate that CIDE simplifies SPL development compared to traditional approaches.
Building software product lines (SPLs) with features is a challenging task. Many SPL implementations support features with coarse granularity - e.g., the ability to add and wrap entire methods. However, fine-grained extensions, like adding a statement in the middle of a method, either require intricate workarounds or obfuscate the base code with annotations. Though many SPLs can and have been implemented with the coarse granularity of existing approaches, fine-grained extensions are essential when extracting features from legacy applications. Furthermore, also some existing SPLs could benefit from fine-grained extensions to reduce code replication or improve readability. In this paper, we analyze the effects of feature granularity in SPLs and present a tool, called Colored IDE (CIDE), that allows features to implement coarse-grained and fine-grained extensions in a concise way. In two case studies, we show how CIDE simplifies SPL development compared to traditional approaches.
| Year | Citations | |
|---|---|---|
Page 1
Page 1