Kuksa: A Cloud-Native Architecture for Enabling Continuous Delivery in the Automotive Domain
Abstract
Connecting vehicles to cloud platforms has enabled innovative business scenarios while raising new quality concerns, such as reliability and scalability, which must be addressed by research. Cloud-native architectures based on microservices are a recent approach to enable continuous delivery and to improve service reliability and scalability. We propose an approach for restructuring cloud platform architectures in the automotive domain into a microservices architecture. To this end, we adopted and implemented microservices patterns from literature to design the cloud-native automotive architecture and conducted a laboratory experiment to evaluate the reliability and scalability of microservices in the context of a real-world project in the automotive domain called Eclipse Kuksa. Findings indicated that the proposed architecture could handle the continuous software delivery over-the-air by sending automatic control messages to a vehicular setting. Different patterns enabled us to make changes or interrupt services without extending the impact to others. The results of this study provide evidences that microservices are a potential design solution when dealing with service failures and high payload on cloud-based services in the automotive domain.
Keywords
Microservices Cloud-native architecture Cloud computing AutomotiveReferences
- 1.Aderaldo, C.M., Mendonça, N.C., Pahl, C., Jamshidi, P.: Benchmark requirements for microservices architecture research. In: 1st International Workshop on Establishing the Community-Wide Infrastructure for Architecture-Based Software Engineering, pp. 8–13. IEEE (2017)Google Scholar
- 2.Balalaie, A., Heydarnoori, A., Jamshidi, P.: Microservices architecture enables devops: migration to a cloud-native architecture. IEEE Softw. 33, 42–52 (2016)CrossRefGoogle Scholar
- 3.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_15CrossRefGoogle Scholar
- 4.Balalaie, A., Heydarnoori, A., Jamshidi, P., Tamburri, D.A., Lynn, T.: Microservices migration patterns. J. Softw.: Pract. Exp. 48, 2019–2042 (2018)Google Scholar
- 5.Bass, L., Weber, I., Zhu, L.: DevOps: A Software Architect’s Perspective. Addison-Wesley Professional, Boston (2015)Google Scholar
- 6.Chen, L.: Microservices: architecting for continuous delivery and DevOps. In: IEEE International Conference on Software Architecture (ICSA), pp. 39–397. IEEE (2018)Google Scholar
- 7.Contreras-Castillo, J., Zeadally, S., Guerrero-Ibanez, J.A.: Internet of vehicles: architecture, protocols, and security. Internet Things J. 5, 3701–3709 (2018)CrossRefGoogle Scholar
- 8.Datta, S.K., Gyrard, A., Bonnet, C., Boudaoud, K.: oneM2M architecture based user centric IoT application development. In: 3rd International Conference on Future Internet of Things and Cloud, pp. 100–107. IEEE (2015)Google Scholar
- 9.Dragoni, N., Dustdar, S., Larsen, S.T., Mazzara, M.: Microservices: migration of a mission critical system. arXiv preprint arXiv:1704.04173 (2017)
- 10.Ebert, C., Favaro, J.: Automotive software. IEEE Softw. 34, 33–39 (2017)CrossRefGoogle Scholar
- 11.Ebert, C., Gallardo, G., Hernantes, J., Serrano, N.: Devops. IEEE Softw. 33, 94–100 (2016)CrossRefGoogle Scholar
- 12.Fiosina, J., Fiosins, M., Müller, J.P.: Big data processing and mining for next generation intelligent transportation systems. J. Teknologi 63, 21–38 (2013)Google Scholar
- 13.Fowler, M., Lewis, J.: Microservices. https://martinfowler.com/articles/microservices.html
- 14.Google Cloud: Designing a Connected Vehicle Platform on Cloud IoT Core 2019-05-07. https://cloud.google.com/solutions/designing-connected-vehicle-platform
- 15.Häberle, T., Charissis, L., Fehling, C., Nahm, J., Leymann, F.: The connected car in the cloud: a platform for prototyping telematics services. IEEE Softw. 32, 11–17 (2015)CrossRefGoogle Scholar
- 16.Haghighatkhah, A., Banijamali, A., Pakanen, O., Oivo, M., Kuvaja, P.: Automotive software engineering: a systematic mapping study. J. Syst. Soft. 128, 25–55 (2017)CrossRefGoogle Scholar
- 17.He, W., Yan, G., Da, X.L.: Developing vehicular data cloud services in the IoT environment. IEEE Trans. Ind. Inf. 10, 1587–1595 (2014)CrossRefGoogle Scholar
- 18.Jain, P.: Automotive Cloud Technology to Drive Industry’s New Business Models - 2019-05-07. http://shiftmobility.com/2017/06/automotive-cloud-technology-drive-automotive-industrys-new-business-models
- 19.Armbrust, M., et al.: A view of cloud computing. Commun. ACM 53, 50–59 (2010)CrossRefGoogle Scholar
- 20.Levcovitz, A., Terra, R., Valente, M.T.: Towards a technique for extracting microservices from monolithic enterprise systems. arXiv:1605.03175 (2016)
- 21.Lu, N., Cheng, N., Zhang, N., Shen, X., Mark, J.W.: Connected vehicles: solutions and challenges. Internet Things J. 1, 289–299 (2014)CrossRefGoogle Scholar
- 22.Mietzner, R., Leymann, F., Unger, T.: Horizontal and vertical combination of multi-tenancy patterns in service-oriented applications. Enterp. Inf. Syst. 5, 59–77 (2011)CrossRefGoogle Scholar
- 23.Newman, S.: Building Microservices: Designing Fine-Grained Systems. O’Reilly Media Inc., Newton (2015)Google Scholar
- 24.O’Brien, L., Merson, P., Bass, L.: Quality attributes for service-oriented architectures. In: Proceedings of the International Workshop on Systems Development in SOA Environments, p. 3 (2007)Google Scholar
- 25.Pahl, C., Jamshidi, P.: Microservices: a systematic mapping study. In: Proceedings of the 6th International Conference on Cloud Computing and Services Science, pp. 137–146 (2016)Google Scholar
- 26.Rufino, J., Alam, M., Ferreira, J.: Monitoring V2X applications using DevOps and docker. In: International Smart Cities Conference, pp. 1–5 (2017)Google Scholar
- 27.Serrano, D., Baldassarre, T., Stroulia, E.: Real-time traffic-based routing, based on open data and open-source software. In: 3rd World Forum on Internet of Things, pp. 661–665 (2016)Google Scholar
- 28.Shavit, M., Gryc, A., Miucic, R.: Firmware update over the air (FOTA) for automotive industry. SAE Technical (2007)Google Scholar
- 29.Stol, K., Fitzgerald, B.: The ABC of software engineering research. ACM Trans. Softw. Eng. Methodol. 27, 11 (2018)CrossRefGoogle Scholar
- 30.Taibi, D., Lenarduzzi, V., Pahl, C.: Architectural patterns for microservices: a systematic mapping study. In: Proceedings of the 8th International Conference on Cloud Computing and Services Science, pp. 221–232 (2018)Google Scholar
- 31.Thönes, J.: Microservices. IEEE Softw. 32, 116–116 (2015)CrossRefGoogle Scholar
- 32.Yang, M., Mahmood, M., Zhou, X., Shafaq, S., Zahid, L.: Design and implementation of cloud platform for intelligent logistics in the trend of intellectualization. China Commun. 14, 180–191 (2017)CrossRefGoogle Scholar
- 33.Zeller, M., Prehofer, C., Krefft, D., Weiss, G.: Towards runtime adaptation in AUTOSAR. In: 5th Workshop on Adaptive and Reconfigurable Embedded Systems, vol. 10, pp. 17–20 (2013)Google Scholar
- 34.Zhang, T., Antunes, H., Aggarwal, S.: Defending connected vehicles against malware: challenges and a solution framework. Internet Things J. 1, 10–21 (2014)CrossRefGoogle Scholar
- 35.Zhu, L., Bass, L., Champlin-Scharff, G.: DevOps and its practices. IEEE Softw. 33, 32–34 (2016)CrossRefGoogle Scholar