Similarity and Quality Metrics for Microservice and Web Service Architectures
Microservices Architectures (MSAs) have been widely adopted by industry in different domains to address various challenges, from the modernization of monolithic financial applications to large IoT systems. MSA is a compositional approach based on the arrangement of microservices, executing simple tasks and providing limited functionalities, which are put together to form a more complex system. Microservices focus on “doing one thing well,” are based on a “sharing nothing” perspective, and are considered Cloud-Native systems.
Architecting and managing microservices-based systems represent unique technical and organizational challenges, including microservices’ size, scope, number, interoperability, and reuse. Assessing microservices’ interoperability and reuse calls for identifying similarities among microservices based on a multi-level perspective, including functional, technological, and organizational attributes. However, existing similarity approaches in MSA are limited in number and scope.
On the other hand, the reuse of web services for building web services applications, which are compositional architectures, is structured and based on standard repositories, catalogues, and a common description language that eases the retrieval of web services according to the developer’s criteria. Several similarity measurement methods have been proposed to support this approach. These methods mainly use the structure of web services (extracted from the source code based on programming language standards or derived from functional descriptions), semantic analysis, and a combination of the two. They rely on web services functional descriptions formalized using the Web Service Description Language (WSDL) and its extensions, on lexical dictionaries, and ontologies.
Considering the compositional nature of the MSA and Web services architectures, it is valuable to investigate whether extending existing similarity metrics approaches applied in Web services in an MSA context would be effective.
When analyzing web services similarity approaches, researchers must be aware of the absence of a standard language to describe microservices and the diversity of programming languages used to code them, which could be barriers to applying standard structural web services similarity approaches. Also, establishing similarity in the microservices domain calls for using multiple viewpoints and aspects other than functional; thus, using lexical dictionaries employed in common semantic web services similarity approaches could not be enough to address MSAs’ semantic complexity. However, transferring ontological approaches from the web service domain to MSA could be facilitated by using the Ontology of Microservices Architectures Concepts (OMSAC).
We offer a master’s thesis and a bachelor’s thesis around this topic. The proposed topics are:
- Compare similarity metrics approaches in Microservices Architectures and Web Services Architectures, and implement suitable similarity metrics as queries (primarily Master).
- Research and classification of similarity metrics in Web services and Microservices architectures (primarily Bachelor).
This project will be co-supervised by Ass. Prof. Dr. Dominik Bork and Gabriel Morais, MSc.
Further reading material:
- Gabriel Morais, Dominik Bork, and Mehdi Adda. 2021. Towards an Ontology-driven Approach to Model and Analyze Microservices Architectures. In MEDES'21: 13th International Conference on Management of Digital EcoSystems, pp. in press. Paper: https://publik.tuwien.ac.at/files/publik_297256.pdf
- Martin Garriga, Alan De Renzis, Ignacio Lizarralde, Andres Flores, Cristian Mateos, Alejandra Cechich, and Alejandro Zunino. 2018. A structural-semantic web service selection approach to improve retrievability of web services. Information Systems Frontiers 20, 6 (2018), 1319–1344. Paper: https://dl.acm.org/doi/abs/10.1007/s10796-016-9731-1
- Schröer, Christoph, Felix Kruse, and Jorge Marx Gómez. “A Qualitative Literature Review on Microservices Identification Approaches.” Symposium and Summer School on Service-Oriented Computing. Springer, Cham, 2020. Paper: https://link.springer.com/chapter/10.1007/978-3-030-64846-6_9
- David Martin, Mark Burstein, Drew McDermott, Sheila McIlraith, Massimo Paolucci, Katia Sycara, Deborah L McGuinness, Evren Sirin, and Naveen Srinivasan. 2007. Bringing semantics to web services with OWL-S. World Wide Web 10, 3 (2007), 243–277. Paper: http://www.ksl.stanford.edu/pub/KSL_Reports/KSL-06-21.pdf
- Juan Manuel Rodriguez, Marco Crasso, Alejandro Zunino, and Marcelo Campo. 2010. Improving Web Service descriptions for effective service discovery. Science of Computer Programming 75, 11 (2010), 1001–1021. Paper: https://core.ac.uk/download/pdf/82569095.pdf
- Eleni Stroulia and Yiqiao Wang. 2005. Structural and semantic matching for assessing web-service similarity. International Journal of Cooperative Information Systems 14, 04 (2005), 407–437. Paper:http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.90.3036&rep=rep1&type=pdf