Thesis subject

Low code IoT development in Smart Farming (MSc)

Internet of Things (IoT) is one of the key enablers of emerging approaches for smart farming (including arable farming, greenhouses, livestock, etc.) to cope with increasing demands on productivity and cost-effectiveness of agricultural solutions. The complex network of devices needed for monitoring and controlling the farming operation is designed and operated as an IoT system through sensors, computers, communication protocols, and so on. A simple example would involve the scenario of greenhouse automation, where (1) sensors measure the moisture and temperature, (2) the sensor data is sent to a central computer to process it, (3) based on the data the computer decides whether to turn on/off the heater and irrigation, (4) which are executed by the control software on the actual heater and irrigation system, and (5) the whole system is monitored and managed through an app on a smartphone.
Developing such systems from scratch using a purely code-centric approach proves to be difficult, especially for a lot of potential users being non-experts in programming. To cope with developing complex IoT systems, low-code development platforms[1] have been introduced in other domains such as web applications and enterprise software (see this short video on YouTube [2]). In such approaches, the developers are mostly abstracted away from programming, and can focus on designing the business logic in a visual manner. The platform in turn handles the creation and deployment into specific code, computing platforms and communication protocols.

------------------------------------------------------------------
[1] https://en.wikipedia.org/wiki/Low-code_development_platform
[2] https://www.youtube.com/watch?v=JwM9NrePPMc

Short description

While low-code IoT platforms have been enjoying popularity in certain domains, their use in the agri-food domain has not yet been explored. We would like to investigate the existing low-code and other related approaches (such as no-code, model-driven, model-based) for their feasibility to use in IoT-based smart farming. A starting point is to study the existing approaches and the functionalities they provide, and conceptually map them into the requirements of smart farming systems. This mapping can reveal the benefits, challenges and further opportunities of using low-code platforms for smart farming.

Based on a concrete platform such as NodeRed or ThingML , a demonstration and validation should be performed using a small yet realistic use case of IoT in smart farming. The benefits of the low-code approach on a design level can be demonstrated regarding usability (e.g. using visual models rather than programming), flexibility and interoperability (map into multiple devices and protocols) and quality (detect bugs already on design level) [1].

Considering the difficulties of having IoT systems deployed on physical devices, the system can be rather validated through simulation (see [3] for an example). The NetLogo simulation environment can be used to transform the low-code system and run experiments, e.g. on performance. NetLogo is a multi-agent programmable modeling environment, which can be easily programmed to model the IoT system in smart farming. In this smart farming system, we will simulate all the IoT devices and servers that are used in the farming application. The focus of the simulation will be on the coordination among the devices, while ignoring the detailed communication and data processing algorithms.

    Objectives

    In this thesis, we answer the following research questions:

    • RQ1: What are existing approaches for low-code (and related) approaches for IoT?
    • RQ2: How do these approaches satisfy the requirements of IoT-based smart farming?
    • RQ3: What are conceptually the benefits, challenges and opportunities of using low-code platforms for IoT-based smart farming?
    • RQ4: How can we design a smart farming solution using low-code platforms?
    • RQ5: How can we validate the low-code approach e.g. in terms of usability, maintainability, quality and performance (the latter using a simulation environment)?

      Tasks

      The work in this master thesis entails:

      • To collect full-text articles or PDFs from primary studies SLRs in the low-code (and related) approaches for IoT
      • To assess the suitability of low-code IoT platforms for smart farming, and to identify the benefits, challenges and opportunities
      • To design an IoT-based smart farming solution using an existing low-code platform, such as NodeRed or ThingML
      • To deploy, demonstrate and validate the low-code solution in the NetLogo simulation environment

          Literature

          • [1] Baba-Cheikh, Zeineb, Ghizlane El-Boussaidi, Julien Gascon-Samson, Hafedh Mili, and Yann-Gael Guéhéneuc. "A preliminary study of open-source IoT development frameworks." In Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops, pp. 679-686. 2020. https://dl.acm.org/doi/pdf/10.1145/3387940.3392198
          • [2] Ihirwe, Felicien, Davide Di Ruscio, Silvia Mazzini, Pierluigi Pierini, and Alfonso Pierantonio. "Low-code Engineering for Internet of things: A state of research." In Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, pp. 1-8. 2020. https://dl.acm.org/doi/pdf/10.1145/3417990.3420208
          • [3] Ahmed, Nurzaman, Debashis De, and Iftekhar Hussain. "Internet of Things (IoT) for smart precision agriculture and farming in rural areas." IEEE Internet of Things Journal 5, no. 6 (2018): 4890-4899. https://ieeexplore.ieee.org/iel7/6488907/6702522/08521668.pdf


          Requirements

          • Courses: -
          • Required skills/knowledge: programming knowledge (Python or R to interact with NetLogo, JavaScript or Java to work with low-code platforms), interest about IoT and smart farming

            Key words: internet of things, low-code platforms, modeling and simulation

            Contact person(s)