TY - GEN
T1 - Variability Management meets Microservices: Six Challenges of Re-Engineering Microservice-Based Webshops
AU - Assunção, Wesley K. G.
AU - Krüger, Jacob
AU - Mendonça, Willian Douglas Ferrari
N1 - DBLP License: DBLP's bibliographic metadata records provided through http://dblp.org/ are distributed under a Creative Commons CC0 1.0 Universal Public Domain Dedication. Although the bibliographic metadata records are provided consistent with CC0 1.0 Dedication, the content described by the metadata records is not. Content may be subject to copyright, rights of privacy, rights of publicity and other restrictions.
PY - 2020/10/19
Y1 - 2020/10/19
N2 - A microservice implements a small unit of functionality that it provides through a network using lightweight protocols. So, microservices can be combined to fulfill tasks and implement features of a larger software system—resembling a variability mechanism in the context of a software product line (SPL). Microservices and SPLs have similar goals, namely facilitating reuse and customizing, but they are usually employed in different contexts. Any developer who has access to the network can provide a microservice for any task, while SPLs are usually intended to implement features of a specific domain. Due to their different concepts, using microservices to implement an SPL or adopting SPL practices (e.g., variability management) for microservices is a challenging cross-area research problem. However, both techniques can complement each other, and thus tackling this problem promises benefits for organizations that employ either technique. In this paper, we reason on the importance of advancing in this direction, and sketch six concrete challenges to initiate research, namely (1) feature identification, (2) variability modeling, (3) variable microservice architectures, (4) interchangeability, (5) deep customization, and (6) re-engineering an SPL. We intend these challenges to serve as a starting point for future research in this cross-area research direction—avoiding that the concepts of one area are reinvented in the other.
AB - A microservice implements a small unit of functionality that it provides through a network using lightweight protocols. So, microservices can be combined to fulfill tasks and implement features of a larger software system—resembling a variability mechanism in the context of a software product line (SPL). Microservices and SPLs have similar goals, namely facilitating reuse and customizing, but they are usually employed in different contexts. Any developer who has access to the network can provide a microservice for any task, while SPLs are usually intended to implement features of a specific domain. Due to their different concepts, using microservices to implement an SPL or adopting SPL practices (e.g., variability management) for microservices is a challenging cross-area research problem. However, both techniques can complement each other, and thus tackling this problem promises benefits for organizations that employ either technique. In this paper, we reason on the importance of advancing in this direction, and sketch six concrete challenges to initiate research, namely (1) feature identification, (2) variability modeling, (3) variable microservice architectures, (4) interchangeability, (5) deep customization, and (6) re-engineering an SPL. We intend these challenges to serve as a starting point for future research in this cross-area research direction—avoiding that the concepts of one area are reinvented in the other.
KW - cloud computing
KW - microservices
KW - re-engineering
KW - software product line
KW - variability management
UR - http://www.scopus.com/inward/record.url?scp=85097831169&partnerID=8YFLogxK
U2 - 10.1145/3382025.3414942
DO - 10.1145/3382025.3414942
M3 - Conference contribution
T3 - ACM International Conference Proceeding Series
SP - 14
EP - 24
BT - Proceedings of the 24th ACM Conference on Systems and Software Product Line, SPLC 2020
A2 - Ali, Shaukat
A2 - Assuncao, Wesley K.G.
A2 - Berger, Thorsten
A2 - Cetina, Carlos
A2 - Collet, Philippe
A2 - Galindo, Jose
A2 - Gazzillo, Paul
A2 - Linsbauer, Lukas
A2 - Lopez-Herrejon, Roberto Erick
A2 - Nadi, Sarah
A2 - Schulze, Sandro
A2 - Trujillo, Salvador
PB - Association for Computing Machinery, Inc
ER -