skip to main content
10.1145/3382025.3414979acmconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
research-article

Can microservice-based online-retailers be used as an SPL?: a study of six reference architectures

Published: 19 October 2020 Publication History

Abstract

Microservices are deployable software artifacts that combine a set of business features and expose them to other microservices. Ideally, the reuse and interchanging of microservices should be easy as they are supposed to be independent of each other, both conceptually and technologically. Selecting a service to fulfill a given feature (e.g., managing a cart in a website) recalls the way Software Product Lines (SPL) allow variability. However, in practice, interchanging microservices requires knowing the features that the services propose, how they communicate with other services and their types. In this work, we propose to analyze service dependencies as feature dependencies, at the feature, structural, technological, and versioning level, to assess the interchangeability of services. We analyze six community-selected use-cases and report that services are non-interchangeable systematically.

References

[1]
Sven Apel, Don Batory, Christian Kästner, and Gunter Saake. 2013. Software Product Lines. In Feature-Oriented Software Product Lines. Springer, 3--15.
[2]
Wesley KG Assunção, Roberto E Lopez-Herrejon, Lukas Linsbauer, Silvia R Vergilio, and Alexander Egyed. 2017. Reengineering legacy applications into software product lines: a systematic mapping. Empirical Software Engineering 22, 6 (2017), 2972--3016.
[3]
W.K.G. Assunção, J. Krüger, and W.D.F. Mendonça. 2020. Variability Management meets Microservices: Six Challenges of Re-Engineering Microservice-Based Webshops. In 24rd International Systems and Software Product Line Conf., SPLC. ACM, Montreal, Canada.
[4]
Emil Axelsson and Erik Karlkvist. 2019. Extracting Microservices from a Monolithic Application. Master's thesis. Chalmers University of Technology and University of Gothenburg, Gothenburg.
[5]
Luiz Carvalho, Alessandro Garcia, Wesley K. G. Assunção, Rodrigo Bonifácio, Leonardo P. Tizzei, and Thelma Elita Colanzi. 2019. Extraction of Configurable and Reusable Microservices from Legacy Systems: An Exploratory Study. In Proceedings of the 23rd International Systems and Software Product Line Conf. (Paris, France). Association for Computing Machinery, New York, NY, USA, 26--31.
[6]
Bogdan Dit, Meghan Revelle, Malcom Gethers, and Denys Poshyvanyk. 2013. Feature location in source code: a taxonomy and survey. Journal of Software: Evolution and Process 25, 1 (2013), 53--95.
[7]
Benni et al. 2020. Companion webpage of this paper. https://github.com/ace-design/splc2020-challenge-companion. Accessed: 2020-06-22.
[8]
Michael Gysel, Lukas Kölbener, Wolfgang Giersche, and Olaf Zimmermann. 2016. Service cutter: A systematic approach to service decomposition. In European Conf. on Service-Oriented and Cloud Computing. Springer, 185--200.
[9]
W. Jin, T. Liu, Q. Zheng, D. Cui, and Y. Cai. 2018. Functionality-Oriented Microservice Extraction Based on Execution Trace Clustering. In 2018 IEEE International Conf. on Web Services (ICWS). 211--218.
[10]
Alessandra Levcovitz, Ricardo Terra, and Marco Tulio Valente. 2016. Towards a Technique for Extracting Microservices from Monolithic Enterprise Systems. CoRR abs/1605.03175 (2016). arXiv:1605.03175
[11]
A. Lex, N. Gehlenborg, H. Strobelt, R. Vuillemot, and H. Pfister. 2014. UpSet: Visualization of Intersecting Sets. IEEE Transact. on Visualization and Computer Graphics 20, 12 (2014), 1983--1992.
[12]
Jabier Martinez, Nicolas Ordoñez, Xhevahire Tërnava, Tewfik Ziadi, Jairo Aponte, Eduardo Figueiredo, and Marco Tulio Valente. 2018. Feature Location Benchmark with ArgoUML SPL. In Proceedings of the 22nd International Systems and Software Product Line Conf. - Volume 1 (Gothenburg, Sweden) (SPLC '18). Association for Computing Machinery, New York, NY, USA, 257--263.
[13]
Johann Mortara, Xhevahire Tërnava, and Philippe Collet. 2020. Mapping Features to Automatically Identified Object-Oriented Variability Implementations: The Case of ArgoUML-SPL. In Proceedings of the 14th International Working Conf. on Variability Modelling of Software-Intensive Systems (Magdeburg, Germany) (VAMOS '20). Association for Computing Machinery, New York, NY, USA, Article 20, 9 pages.
[14]
OpenAPI. 2020. Open API specifications. https://swagger.io/specification/. Accessed: 2020-06-22.
[15]
Leonardo Passos, Jianmei Guo, Leopoldo Teixeira, Krzysztof Czarnecki, Andrzej Wąsowski, and Paulo Borba. 2013. Coevolution of variability models and related artifacts: a case study from the Linux kernel. In Proceedings of the 17th International Software Product Line Conf. 91--100.

Cited By

View all
  • (2023)How do microservices evolve? An empirical analysis of changes in open-source microservice repositoriesJournal of Systems and Software10.1016/j.jss.2023.111788204:COnline publication date: 1-Oct-2023
  • (2022)Modeling Performance of Microservices Systems with Growth TheoryEmpirical Software Engineering10.1007/s10664-021-10088-027:2Online publication date: 11-Jan-2022
  • (2022)Re-engineering Legacy Systems as Microservices: An Industrial Survey of Criteria to Deal with Modularity and Variability of FeaturesHandbook of Re-Engineering Software Intensive Systems into Software Product Lines10.1007/978-3-031-11686-5_19(471-494)Online publication date: 5-Jul-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SPLC '20: Proceedings of the 24th ACM Conference on Systems and Software Product Line: Volume A - Volume A
October 2020
323 pages
ISBN:9781450375696
DOI:10.1145/3382025
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 19 October 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. microservice architecture
  2. reverse engineering
  3. software composition

Qualifiers

  • Research-article

Funding Sources

Conference

SPLC '20
Sponsor:

Acceptance Rates

SPLC '20 Paper Acceptance Rate 17 of 49 submissions, 35%;
Overall Acceptance Rate 167 of 463 submissions, 36%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)16
  • Downloads (Last 6 weeks)0
Reflects downloads up to 17 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2023)How do microservices evolve? An empirical analysis of changes in open-source microservice repositoriesJournal of Systems and Software10.1016/j.jss.2023.111788204:COnline publication date: 1-Oct-2023
  • (2022)Modeling Performance of Microservices Systems with Growth TheoryEmpirical Software Engineering10.1007/s10664-021-10088-027:2Online publication date: 11-Jan-2022
  • (2022)Re-engineering Legacy Systems as Microservices: An Industrial Survey of Criteria to Deal with Modularity and Variability of FeaturesHandbook of Re-Engineering Software Intensive Systems into Software Product Lines10.1007/978-3-031-11686-5_19(471-494)Online publication date: 5-Jul-2022
  • (2021)Towards an Ontology-driven Approach to Model and Analyze Microservices ArchitecturesProceedings of the 13th International Conference on Management of Digital EcoSystems10.1145/3444757.3485108(79-86)Online publication date: 1-Nov-2021

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media