A. Rahmatulloh, Dewi Wulan Sari, Rahmi Nur Shofa, I. Darmawan
{"title":"Microservices-based IoT Monitoring Application with a Domain-driven Design Approach","authors":"A. Rahmatulloh, Dewi Wulan Sari, Rahmi Nur Shofa, I. Darmawan","doi":"10.1109/ICADEIS52521.2021.9701966","DOIUrl":null,"url":null,"abstract":"The growth in the use of the Internet of Things (IoT) is increasingly massive. Along with the continuous development of the IoT platform, there are obstacles in the number of nodes that continue to increase. In addition, there are growing issues of availability, scalability, and functionality of applications that will lead to dead code. Micro-services architectural pattern emerges as an alternative. However, the service decomposition process and data management on services in Micro-service applications require special attention. Based on the issues described above, in this study, the Micro-services architecture paradigm with a domain-driven design (DDD) approach is applied to develop an IoT Monitoring application that can handle various IoT projects on one platform. The results show that a definition of a service is designed to be more accurate. The application of the DDD concept in breaking down application services helps in mapping each domain. Therefore, it can produce adaptive software products and generate easy-to-maintain code. The Micro-service architecture with a REST API-based approach applied to the IoT monitoring application has worked well, tested at the unit testing, integration, and performance stages. Based on performance testing results, the number of nodes (with three sensors per node) that can access simultaneously reaches 75 nodes. The total sensors in one node can have up to 10 sensors per node with a response time of less than 100ms. System development can be done without overhauling the entire system and does not interfere with the performance of other services.","PeriodicalId":422702,"journal":{"name":"2021 International Conference Advancement in Data Science, E-learning and Information Systems (ICADEIS)","volume":"28 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 International Conference Advancement in Data Science, E-learning and Information Systems (ICADEIS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICADEIS52521.2021.9701966","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
The growth in the use of the Internet of Things (IoT) is increasingly massive. Along with the continuous development of the IoT platform, there are obstacles in the number of nodes that continue to increase. In addition, there are growing issues of availability, scalability, and functionality of applications that will lead to dead code. Micro-services architectural pattern emerges as an alternative. However, the service decomposition process and data management on services in Micro-service applications require special attention. Based on the issues described above, in this study, the Micro-services architecture paradigm with a domain-driven design (DDD) approach is applied to develop an IoT Monitoring application that can handle various IoT projects on one platform. The results show that a definition of a service is designed to be more accurate. The application of the DDD concept in breaking down application services helps in mapping each domain. Therefore, it can produce adaptive software products and generate easy-to-maintain code. The Micro-service architecture with a REST API-based approach applied to the IoT monitoring application has worked well, tested at the unit testing, integration, and performance stages. Based on performance testing results, the number of nodes (with three sensors per node) that can access simultaneously reaches 75 nodes. The total sensors in one node can have up to 10 sensors per node with a response time of less than 100ms. System development can be done without overhauling the entire system and does not interfere with the performance of other services.