2017
DOI: 10.1007/978-3-319-56856-0_8
|View full text |Cite
|
Sign up to set email alerts
|

Tracing Imperfectly Modular Variability in Software Product Line Implementation

Abstract: When large software product lines are engineered, a combined set of traditional techniques, e.g., inheritance, design patterns, generic types, is likely to be used for realizing the variability at the implementation level. In these techniques the concept of feature, as a reusable unit, does not have a first-class representation in implementation, but still an imperfect form of modularization of variability can be achieved. We present in this paper a framework (i) to explicitly capture and document this imperfe… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
16
0

Year Published

2017
2017
2022
2022

Publication Types

Select...
3
2

Relationship

5
0

Authors

Journals

citations
Cited by 7 publications
(16 citation statements)
references
References 10 publications
0
16
0
Order By: Relevance
“…Commonality is a common part of the related variant parts, which are used to distinguish the software products within an SPL. After the commonality is factorized from the variability and implemented, it becomes part of the core [61], except when it represents some optional variability [59]. Such commonalities and variabilities are usually abstracted in terms of variation points (vp-s) with variants, respectively, which are related to concrete elements in reusable code assets.…”
Section: Background 21 Variability In Reusable Code Assetsmentioning
confidence: 99%
See 1 more Smart Citation
“…Commonality is a common part of the related variant parts, which are used to distinguish the software products within an SPL. After the commonality is factorized from the variability and implemented, it becomes part of the core [61], except when it represents some optional variability [59]. Such commonalities and variabilities are usually abstracted in terms of variation points (vp-s) with variants, respectively, which are related to concrete elements in reusable code assets.…”
Section: Background 21 Variability In Reusable Code Assetsmentioning
confidence: 99%
“…Geometry related and charting capabilities being typical of some variability to be handled, we first selected JavaGeom, a library for manipulating and processing several families of geometric shapes, already used in other studies [59], JFreeChart, a charting library, and the AWT part of the Java Development Kit. We then selected two projects from the Apache consortium, CXF, a fully featured Web services framework, which could contain variability in its implementation, and Maven, the build automation tool, which architecture is strongly based on plug-ins.…”
Section: Validation Case Studiesmentioning
confidence: 99%
“…We also showed that both features and vp-s with variants can be used to capture variability in core-code assets but, although their meaning overlaps, they are not the same (I2). We used this analysis on the diversity of variability implementation techniques to build a framework for capturing and tracing the implemented variability [30]. The framework is implemented as an internal domain speci c language (DSL) in Scala and uses re ection to capture variability in terms of vp-s and variants.…”
Section: Discussion and Future Workmentioning
confidence: 99%
“…For example, from the captured variability in Table 6 we can reconstruct an FM similar to the original FM of Figure 1 using the domain speci c language (DSL) we previously proposed [30]. It notably provides mechanisms to capture and document the implemented variability in terms of vp-s and variants, thus helping to reconstruct a variability model.…”
Section: Capturing Variabilitymentioning
confidence: 99%
See 1 more Smart Citation