Variability management: re-engineering microservices with delta-oriented software product lines

Maya R.A. Setyautami, Hafiyyan S. Fadhlillah, Daya Adianto, Ichlasul Affan, Ade Azurat

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Combining microservices and software product line engineering (SPLE) is a challenge in variability management. This paper proposes a solution to that challenge by re-engineering existing webshop systems into a product line application. We first perform feature identification to analyze the features of subject systems. We introduce a mechanism that models the variability and designs a software product line architecture based on existing features. We use a UML diagram with the UML-DOP profile to abstract microservice variability in SPLE. Then, a transformation into a product line application is conducted to generate running applications based on selected features. We utilize a preliminary framework of microservice variability based on delta-oriented programming.

Original languageEnglish
Title of host publicationProceedings of the 24th ACM Conference on Systems and Software Product Line, SPLC 2020
EditorsShaukat Ali, Wesley K.G. Assuncao, Thorsten Berger, Carlos Cetina, Philippe Collet, Jose Galindo, Paul Gazzillo, Lukas Linsbauer, Roberto Erick Lopez-Herrejon, Sarah Nadi, Sandro Schulze, Salvador Trujillo
PublisherAssociation for Computing Machinery
Pages301
Number of pages1
ISBN (Electronic)9781450375696
DOIs
Publication statusPublished - 19 Oct 2020
Event24th ACM Conference on Systems and Software Product Line, SPLC 2020 - Virtual, Online, Canada
Duration: 19 Oct 202023 Oct 2020

Publication series

NameACM International Conference Proceeding Series
VolumePart F164267-A

Conference

Conference24th ACM Conference on Systems and Software Product Line, SPLC 2020
Country/TerritoryCanada
CityVirtual, Online
Period19/10/2023/10/20

Keywords

  • delta-oriented programming
  • microservice
  • re-engineering
  • software product line engineering
  • UML profile

Cite this