Abstract
This chapter investigates the use of Computational Intelligence (CI) to tackle two challenges in the area of services. The first is involved with providing efficient decision support for migrating from monolithic to service-oriented software, while the latter addresses automatic service composition, which is a special form of service migration. Migration to service-oriented architecture (SOA) is influenced by a number of different and intertwined factors. These factors are identified through literature review and expert consultation. Different CI models, such as Fuzzy Influence Diagrams and Fuzzy Cognitive Maps, are employed to organize the factors and study their behavior. Various simulations are conducted that enable decision makers to execute what-if scenarios and take informed decisions as to whether to migrate or not to SOA, as well as to study the decisive factors contributing in favor or against this migration. Service synthesis is a tedious task considering on one hand the plethora of available services and on the other their different, often conflicting characteristics. Automation of this task is therefore a critical issue which deserves attention. In this context, the challenge of automatic service synthesis is addressed through specific methods and techniques based on Evolutionary Computation to achieve such automation to the best possible extent.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Balalaie, A., Heydarnoori, A., Jamshidi, P.: Migrating to cloud-native architectures using microservices: an experience report. In: Celesti, A., Leitner, P. (eds.) ESOCC Workshops 2015. CCIS, vol. 567, pp. 201–215. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-33313-7_15
Balalaie, A., Heydarnoori, A., Jamshidi, P.: Microservices architecture enables DevOps: migration to a cloud-native architecture. IEEE Softw. 33(3), 42–52 (2016)
Baresi, L., Garriga, M., De Renzis, A.: Microservices identification through interface analysis. In: De Paoli, F., Schulte, S., Broch Johnsen, E. (eds.) ESOCC 2017. LNCS, vol. 10465, pp. 19–33. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-67262-5_2
Browning, T.R.: Applying the design structure matrix to system decomposition and integration problems: a review and new directions. IEEE Trans. Eng. Manag. 48(3), 292–306 (2001)
Chen, L.: Continuous delivery: overcoming adoption challenges. J. Syst. Softw. 128, 72–86 (2017)
Christoforou, A., Andreou, A.S.: A framework for static and dynamic analysis of multi-layer fuzzy cognitive maps. Neurocomputing 232, 133–145 (2017)
Christoforou, A., Garriga, M., Andreou, A.S., Baresi, L.: Supporting the decision of migrating to microservices through multi-layer fuzzy cognitive maps. In: Maximilien, M., Vallecillo, A., Wang, J., Oriol, M. (eds.) ICSOC 2017. LNCS, vol. 10601, pp. 471–480. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-69035-3_34
Christoforou, A., Odysseos, L., Andreou, A.: Migration of software components to microservices: matching and synthesis. In: Proceedings of the 14th International Conference on Evaluation of Novel Approaches to Software Engineering, pp. 134–146. SCITEPRESS-Science and Technology Publications, Lda (2019)
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002)
Di Francesco, P., Lago, P., Malavolta, I.: Migrating towards microservice architectures: an industrial survey. In: 2018 IEEE International Conference on Software Architecture (ICSA). IEEE (2018). 29-2909
Engelbrecht, A.P.: Computational Intelligence: An Introduction. Wiley, Hoboken (2007)
Esposito, C., Castiglione, A., Choo, K.K.R.: Challenges in delivering software in the cloud as microservices. IEEE Cloud Comput. 3(5), 10–14 (2016)
Frappier, M., Matwin, S., Mili, A.: Software metrics for predicting maintainability. Software metrics study: technical memorandum 2 (1994)
Fritzsch, J., Bogner, J., Wagner, S., Zimmermann, A.: Microservices migration in industry: intentions, strategies, and challenges. In: 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 481–490. IEEE (2019)
Gabrel, V., Manouvrier, M., Murat, C.: Web services composition: complexity and models. Discrete Appl. Math. 196, 100–114 (2015)
Howard, R.A., Matheson, J.E.: The principles and applications of decision analysis, pp. 719–762. Strategic Decisions Group, Palo Alto (1984)
Hu, W., Jian, N., Qu, Y., Wang, Y.: GMO: a graph matching for ontologies. In: Proceedings of K-CAP Workshop on Integrating Ontologies, pp. 41–48 (2005)
Jatoth, C., Gangadharan, G., Buyya, R.: Computational intelligence based QoS-aware web service composition: a systematic literature review. IEEE Trans. Serv. Comput. 10(3), 475–492 (2015)
Konar, A.: Computational Intelligence: Principles Techniques and Applications. Springer, Heidelberg (2005). https://doi.org/10.1007/b138935
Kuhn, A., Ducasse, S., Gírba, T.: Semantic clustering: identifying topics in source code. Inf. Softw. Technol. 49(3), 230–243 (2007)
Levcovitz, A., Terra, R., Valente, M.T.: Towards a technique for extracting microservices from monolithic enterprise systems. arXiv preprint arXiv:1605.03175 (2016)
Mateou, N.H., Andreou, A.S.: Tree-structured multi-layer fuzzy cognitive maps for modelling large scale, complex problems. In: International Conference on Computational Intelligence for Modelling, Control and Automation and International Conference on Intelligent Agents, Web Technologies and Internet Commerce (CIMCA-IAWTIC 2006), vol. 2, pp. 131–139. IEEE (2005)
Mateou, N.H., Hadjiprokopis, A., Andreou, A.S.: Fuzzy influence diagrams: an alternative approach to decision making under uncertainty. In: International Conference on Computational Intelligence for Modelling, Control and Automation and International Conference on Intelligent Agents, Web Technologies and Internet Commerce (CIMCA-IAWTIC 2006), vol. 1, pp. 58–64. IEEE (2005)
Mazlami, G., Cito, J., Leitner, P.: Extraction of microservices from monolithic software architectures. In: 2017 IEEE International Conference on Web Services (ICWS), pp. 524–531. IEEE (2017)
Murata, T., Ishibuchi, H.: MOGA: multi-objective genetic algorithms. In: IEEE International Conference on Evolutionary Computation, vol. 1, pp. 289–294 (1995)
Shachter, R.D.: Evaluating influence diagrams. Oper. Res. 34(6), 871–882 (1986)
Taibi, D., Auer, F., Lenarduzzi, V., Felderer, M.: From monolithic systems to microservices: an assessment framework. arXiv preprint arXiv:1909.08933 (2019)
Taibi, D., Lenarduzzi, V., Pahl, C.: Processes, motivations, and issues for migrating to microservices architectures: an empirical investigation. IEEE Cloud Comput. 4(5), 22–32 (2017)
Van Veldhuizen, D.A., Lamont, G.B.: Multiobjective evolutionary algorithms: analyzing the state-of-the-art. Evol. Comput. 8(2), 125–147 (2000)
Wootton, B.: Microservices: a definition of this new architectural term (2014). http://highscalability.com/blog/2014/4/8/microservices-not-a-free-lunch.html
Zaremski, A.M., Wing, J.M.: Signature matching: a tool for using software libraries. ACM Trans. Softw. Eng. Methodol. (TOSEM) 4(2), 146–170 (1995)
Zaremski, A.M., Wing, J.M.: Specification matching of software components. ACM Trans. Softw. Eng. Methodol. (TOSEM) 6(4), 333–369 (1997)
Zitzler, E., Laumanns, M., Thiele, L.: SPEA2: improving the strength Pareto evolutionary algorithm. TIK-report 103 (2001)
Zitzler, E., Thiele, L.: Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach. IEEE Trans. Evol. Comput. 3(4), 257–271 (1999)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Andreou, A.S., Christoforou, A. (2021). On the Migration to and Synthesis of (Micro-)services: The Use of Intelligent Techniques. In: Aiello, M., Bouguettaya, A., Tamburri, D.A., van den Heuvel, WJ. (eds) Next-Gen Digital Services. A Retrospective and Roadmap for Service Computing of the Future. Lecture Notes in Computer Science(), vol 12521. Springer, Cham. https://doi.org/10.1007/978-3-030-73203-5_4
Download citation
DOI: https://doi.org/10.1007/978-3-030-73203-5_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-73202-8
Online ISBN: 978-3-030-73203-5
eBook Packages: Computer ScienceComputer Science (R0)