Title
Tuning GitHub for SPL development: branching models & repository operations for product engineers
Abstract
SPLs distinguish between domain engineering (DE) and application engineering (AE). Though each realm has its own lifecycle, they might need to be regularly synchronized to avoid SPL erosion during evolution. This introduces two sync paths: update propagation (from DE to AE) and feedback propagation (from AE to DE). This work looks at how to support sync paths in Version Control Systems (VCSs) using traditional VCS constructs (i.e. merge, branch, fork and pull). In this way, synchronization mismatches can be resolved à la VCS, i.e. highlighting difference between distinct versions of the same artifact. However, this results in a conceptual gap between how propagations are conceived (i.e. update, feedback) and how propagation are realized (i.e. merge, branch, etc). To close this gap, we propose to enhance existing VCSs with SPL sync paths as first-class operations. As a proof-of-concept, we use Web Augmentation techniques to extend GitHub's Web pages with this extra functionality. Through a single click, product engineers can now (1) generate product repositories, (2) update propagating newer feature versions, or (3), feedback propagating product customizations amenable to be upgraded as core assets.
Year
DOI
Venue
2015
10.1145/2791060.2791083
Software Product Lines
Field
DocType
Citations 
Fork (system call),Synchronization,Domain engineering,Web page,Computer science,Theoretical computer science,Control system,sync,Merge (version control),Computer engineering,Operating system,Branching (version control)
Conference
8
PageRank 
References 
Authors
0.47
13
2
Name
Order
Citations
PageRank
Leticia Montalvillo181.14
Oscar Díaz241562.28