Doktorego tesiaren irakurketa / Lectura de tesis doctoral

DOKTOREGO TESIAREN IRAKURKETA / LECTURA DE TESIS DOCTORAL

Egilea/Autor: Leticia Montalvillo Mendizabal
Zuzendaria/Director: Oscar Diaz
Izenburua/Título: Supporting the Grow-and-Prune model for Evolving Software Product Lines
Data/Fecha: 2018/07/25
Ordua/Hora: 11:00
Tokia/Lugar: Informatika Fakultateko Ada Lovelace aretoa / Sala Ada Lovelace de la Facultad de Informática

 

Summary

This thesis aims to support the evolution of Software Product Lines (SPLs) by following the grow-and-prune model. Specifically, this thesis provides support for both initiating and enacting the pruning phase. Initiating the pruning requires SPL engineers to conduct customization analysis, i.e. analysing how products have changed the core-assets they were derived from. However, existing tools do not fulfill engineer’s needs to conduct this practice. To address this issue, this thesis elaborates on the SPL engineers’ data needs when conducting customization analysis, and proposes a data-warehouse approach to help SPL engineers on such analysis. Once the interesting customizations have

been identified, the pruning needs to be enacted. This means that product code needs to be ported to the core-asset realm, while products are upgraded with newer functionalities and bug-fixes available in newer core-asset releases. Herein, synchronizing both parties through sync paths is required. However, the state of-the-art tools are not tailored to SPL sync paths, and this hinders synchronizing core-assets and products. To address this issue, this thesis proposes to leverage existing Version Control Systems (i.e. git/GitHub) to provide sync operations as first-class constructs. However, when product’s code changes areincorporated into the core-asset base, the so-called “merge hell” rises. This is due to the divergences that products undergone while at the “grow” phase. To address this issue, this thesis proposes a new practice, i.e. “code peering”, which makes product teams aware of what other product teams are developing. “Code peering” aims to foster cross-product reuse, and hence, resolving merge conflict earlier by product developers. This aims to lessen the chances for a “merge hell” situation at the pruning phase.

 

Erantzuna idatzi

 

 

 

HTML etiketa hauek erabil ditzakezu

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>