Affiliation:
1. ITIS Software, Andalucía Tech, Universidad de Málaga, 29071 Malaga, Spain
Abstract
The success of the Internet of Things (IoT) has driven the development, among others, of many different software architectures for producing, processing, and analyzing heterogeneous data. In many cases, IoT applications share common features, such as the use of a platform or middleware, also known as message broker, that collects and manages data traffic between endpoints. However, in general, data processing is very dependent on the case study (sensors that send temperature data, drones that send images, etc.). Thus, the applications responsible for receiving and processing data, which we call consumers, have to be built ad hoc, since some of their elements have to be specially configured to solve specific needs of the case study. This paper presents Flextory, a software factory tool to make it easier for IoT developers to automatically construct configurable consumer applications, which we call FLEX-consumers. Flextory guides developers through the process of generating Java consumers by selecting some desired features such as, for instance, the particular communication protocol to be used. This way, the developer only has to concentrate on designing the algorithm to process the data. In short, the use of Flextory will result in consumer applications with configurable behavior, namely FLEX-consumers, that can connect to a messaging server (for example RabbitMQ) and process the received messages.
Funder
Spanish Ministry of Economy and Digital Transformation
Spanish Ministry of Science, Innovation and Universities
Reference39 articles.
1. Hassan, R., Qamar, F., Hasan, M.K., Aman, A.H.M., and Ahmed, A.S. (2020). Internet of Things and Its Applications: A Comprehensive Survey. Symmetry, 12.
2. (2024, March 28). Advanced Message Queuing Protocol. Available online: https://www.amqp.org/.
3. (2024, March 28). MQTT: The Standard for IoT Messaging. Available online: https://mqtt.org/mqtt-specification/.
4. Pohl, K., Böckle, G., and Van Der Linden, F. (2005). Software Product Line Engineering: Foundations, Principles, and Techniques, Springer.
5. Butting, A., Kirchhof, J.C., Kleiss, A., Michael, J., Orlov, R., and Rumpe, B. (2022, January 6–7). Model-Driven IoT App Stores: Deploying Customizable Software Products to Heterogeneous Devices. Proceedings of the 21st ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences (GPCE 2022), New York, NY, USA.