PL EN


Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
Tytuł artykułu

A model-driven approach to Microservice Software Architecture establishment

Wybrane pełne teksty z tego czasopisma
Identyfikatory
Warianty tytułu
Konferencja
Federated Conference on Computer Science and Information Systems (09-12.09.2018 ; Poznań, Poland)
Języki publikacji
EN
Abstrakty
EN
In this positional paper we propose a model-driven approach which addresses challenges related to modeling, development and deployment of software applications that follow the microservice architecture (MSA) design principles. We argue in favor of a model-driven tool which can be used to resolve challenges from the MSA establishment domain by providing a domain-specific language for MSA modeling and code generators for producing: (i) program and configuration code for MSA implementation; and (ii) program procedures for MSA building, packaging and installation. We give a brief description of two approaches to software application development which emerged in the last decade: the monolithic architecture approach and the MSA approach. We focus on challenges related to MSA establishment and argue that our model-driven approach could be suitable for their resolution. We also propose a plan of research activities aimed at improving our approach and which will lead to the final implementation of a model-driven tool to support such an approach.
Rocznik
Tom
Strony
73--80
Opis fizyczny
Bibliogr. 48 poz., il.
Twórcy
autor
  • University of Novi Sad, Faculty of Technical Sciences, Trg Dositeja Obradovića 6, 21000 Novi Sad, Serbia
  • University of Novi Sad, Faculty of Technical Sciences, Trg Dositeja Obradovića 6, 21000 Novi Sad, Serbia
autor
  • University of Novi Sad, Faculty of Technical Sciences, Trg Dositeja Obradovića 6, 21000 Novi Sad, Serbia
autor
  • University of Novi Sad, Faculty of Technical Sciences, Trg Dositeja Obradovića 6, 21000 Novi Sad, Serbia
Bibliografia
  • [1] A. Balalaie, H. Abbas, and J. Pooyan. "Migrating to cloud-native architectures using microservices: an experience report," In European Conference on Service-Oriented and Cloud Computing, pp. 201-215. Springer, Cham, 2015.
  • [2] A. Levcovitz, R. Terra, and M. Tulio Valente. "Towards a technique for extracting microservices from monolithic enterprise systems," arXiv preprint arXiv:1605.03175 (2016).
  • [3] J.P. Gouigoux, and D. Tamzalit. "From Monolith to Microservices: Lessons Learned on an Industrial Migration to a Web Oriented Architecture," In Software Architecture Workshops (ICSAW), 2017 IEEE International Conference on, pp. 62-65. IEEE, 2017.
  • [4] “Open Services Gateway initiative” [Online], Available: https://en.wikipedia.org/wiki/OSGi [Accessed: 27-Jun-2018].
  • [5] M. Villamizar, O. Garcés, H. Castro, M. Verano, L. Salamanca, R. Casallas, and S. Gil. "Evaluating the monolithic and the microservice architecture pattern to deploy web applications in the cloud," In Computing Colombian Conference (10CCC), 2015 10th, pp. 583-590. IEEE, 2015.
  • [6] M. Villamizar, O. Garces, L. Ochoa, H. Castro, L. Salamanca, M. Verano, R. Casallas. "Infrastructure cost comparison of running web applications in the cloud using AWS lambda and monolithic and microservice architectures," In Cluster, Cloud and Grid Computing (CCGrid), 2016 16th IEEE/ACM International Symposium on, pp. 179-182. IEEE, 2016.
  • [7] E. Daniel, D. Cárdenas, R. Amarillo, E. Castro, K. Garcés, C. Parra, and R. Casallas. "Towards the understanding and evolution of monolithic applications as microservices," In Computing Conference (CLEI), 2016 XLII Latin American, pp. 1-11. IEEE, 2016.
  • [8] N. Dragoni, G. Saverio, A. L. Lafuente, M. Mazzara, F. Montesi, R. Mustafin, and L. Safina. "Microservices: yesterday, today, and tomorrow," In Present and Ulterior Software Engineering, pp. 195-216. Springer, Cham, 2017.
  • [9] T. Johannes. "Microservices." IEEE Software 32, no. 1 (2015): 116-116.
  • [10] N. Dragoni, I. Lanese, S. T. Larsen, M. Mazzara, R. Mustafin, and L. Safina. "Microservices: How to make your application scale," In International Andrei Ershov Memorial Conference on Perspectives of System Informatics, pp. 95-104. Springer, Cham, 2017.
  • [11] D. S. Linthicum. "Practical use of microservices in moving workloads to the cloud." IEEE Cloud Computing 3, no. 5 (2016): 6-9.
  • [12] K. Bakshi. "Microservices-based software architecture and approaches," In Aerospace Conference, 2017 IEEE, pp. 1-8. IEEE, 2017.
  • [13] J. Bogner, and A. Zimmermann. "Towards integrating microservices with adaptable enterprise architecture," In Enterprise Distributed Object Computing Workshop (EDOCW), 2016 IEEE 20th International, pp. 1-6. IEEE, 2016.
  • [14] “Awesome Microservices” [Online], Available: https://github.com/mfornos/awesome-microservices. [Accessed: 03-Jun-2018].
  • [15] “Microservices Martin Fowler and James Levis” [Online], Available: https://www.martinfowler.com/articles/microservices.html [Accessed: 03-Jun-2018].
  • [16] G. Kecskemeti, A. C. Marosi, and A. Kertesz. "The ENTICE approach to decompose monolithic services into microservices." In High Performance Computing & Simulation (HPCS), 2016 International Conference on, pp. 591-596. IEEE, 2016.
  • [17] “Netflix OSS” [Online], Available: https://netflix.github.io/ [Accessed: 03-Jun-2018].
  • [18] “Adopting Microservices at Nerflix” [Online], Available: https://netflix.github.io/ [Accessed: 03-Jun-2018].
  • [19] I. Lukovic, S. Ristic, S. Aleksic, A. Popovic. "An application of the MDSE principles in IIS* Case," Model Driven Software Engineering-Transformations and Tools (2008): 85.AS
  • [20] J. Porubän, M. Sabo, J. Kollár, and M. Mernik. "Abstract syntax driven language development: Defining language semantics through aspects." In Proceedings of the International Workshop on Formalization of Modeling Languages, p. 2. ACM, 2010.
  • [21] A. Rodriguez. “Restful web services: The basics. IBM developerWorks”. 2008 Nov 6:33.
  • [22] R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, and T. Berners-Lee. “Hypertext transfer protocol--HTTP/1.1”. No. RFC 2616. 1999.
  • [23] “Communication between the microservices” [Online], Available: https://dzone.com/articles/communicating-between-microservices [Accessed: 03-Jun-2018].
  • [24] “Maven” [Online], Available: https://maven.apache.org/ [Accessed: 03-Jun-2018].
  • [25] “Gradle” [Online], Available: https://gradle.org/ [Accessed: 03-Jun-2018].
  • [26] “JAR file” [Online], Available: https://docs.oracle.com/javase/tutorial/deployment/jar/basicsindex.html [Accessed: 03-Jun-2018].
  • [27] “Docker” [Online], Available: https://www.docker.com/what-docker [Accessed: 03-Jun-2018].
  • [28] “Aws Multicontainer Docker Configuration” [Online], Available: https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker_v2config.html [Accessed: 03-Jun-2018].
  • [29] C. Esposito, A. Castiglione, and K.-K Raymond Choo. "Challenges in delivering software in the cloud as microservices." IEEE Cloud Computing 3, no. 5 (2016): 10-14.
  • [30] B. Terzić, V. Dimitrieski, S. Kordić, G. Milosavljević, and I. Luković. "Development and evaluation of MicroBuilder: A Model-Driven tool for the specification of REST Microservice Software Architectures," Enterprise Information Systems (2018): 1-24.
  • [31] “Netflix Turbine” [Online], Available: https://github.com/Netflix/Turbine [Accessed: 03-Jun-2018].
  • [32] “Spring Cloud Dashobard” [Online], Available: https://github.com/VanRoy/spring-cloud-dashboard [Accessed: 03-Jun-2018].
  • [33] “EMF” [Online], Available: http://www.eclipse.org/modeling/emf/ [Accessed: 03-Jun-2018].
  • [34] “Ecore” [Online], Available: http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/ecore/package-summary.html [Accessed: 03-Jun-2018].
  • [35] Eysholdt, Moritz, and Heiko Behrens. "Xtext: implement your language faster than the quick and dirty way." In Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion, pp. 307-309. ACM, 2010.
  • [36] “Sirius” [Online], Available: https://www.eclipse.org/sirius/ [Accessed: 03-Jun-2018].
  • [37] “Xtend” [Online], Available: http://www.eclipse.org/xtend/ [Accessed: 03-Jun-2018].
  • [38] “Apache Kafka” [Online], Available: https://kafka.apache.org/ [Accessed: 03-Jun-2018].
  • [39] “IBM Container Service” [Online], Available: https://www.ibm.com/cloud/container-service [Accessed: 03-Jun-2018].
  • [40] “Aws Multicontainer Docker Configuration” [Online], Available: https://www.ibm.com/cloud/ [Accessed: 03-Jun-2018].
  • [41] “Netflix Spinnaker” [Online], Available: https://www.spinnaker.io/ [Accessed: 03-Jun-2018].
  • [42] G. Sousa, W. Rudametkin, and L. Duchien. "Automated setup of multi-cloud environments for microservices applications," In Cloud Computing (CLOUD), 2016 IEEE 9th International Conference on, pp. 327-334. IEEE, 2016.
  • [43] F. Rademacher, J. Sorgalla, S. Sachweh, and A. Zündorf. "Towards a Viewpoint-specific Metamodel for Model-driven Development of Microservice Architecture," arXiv preprint arXiv:1804.09948 (2018).
  • [44] J. Sorgalla. "Ajil: A graphical modeling language for the development of microservice architectures," In Extended Abstracts of the Microservices 2017 Conference. 2017.
  • [45] “Slaying Monoliths at Netflix with Node.js” [Online], Available: https://www.linux.com/news/event/nodejs/2017/3/slaying-monolithsnetflix-nodejs/ [Accessed: 03-Jun-2018].
  • [46] “Node.js” [Online], Available: https://nodejs.org/en/ [Accessed: 03-Jun-2018].
  • [47] “Apache Zookeeper” [Online], Available: https://nodejs.org/en/ [Accessed: 03-Jun-2018].
  • [48] “Nerflix Eureka” [Online], Available: https://github.com/Netflix/eureka [Accessed: 03-Jun-2018].
Uwagi
1. Track 4: Software Systems Development & Applications
2. Technical Session: 5th Workshop on Model Driven Approaches in System Development
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-12a35fb9-0103-4f5f-b6b0-17db2e2c7c68
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.