DisCoPar-Kilimo: a low-code development environment: Geared towards smart agriculture applications

Onderzoeksoutput: PhD Thesis

45 Downloads (Pure)

Samenvatting

Smart agriculture applications (SAAs) improve farming activities in modern farms. Today, designing and implementing SAAs is difficult and costly. Typically, SAAs orchestrate distributed components deployed in microcontrollers, smartphones, and cloud services. Implementing SAAs requires highly skilled engineers as it entails carefully handling distribution to enable the different parts of the system to communicate. However, "skilled developers are hard to find." Moreover, the network infrastructure in rural areas is limited and unreliable, resulting in nonexistent or intermittent connections. This thesis aims to simplify the implementation of SAAs and study software techniques to enable domain experts to implement them.
Smart agriculture applications are often constructed using conventional programming languages that require software development knowledge, which domain experts usually do not have. Low-code development environments (LCDEs) have emerged as an alternative for users lacking technical expertise. The LCDEs offer visual programming environments with "ready-to-use" components, making software development accessible to all technical skill levels. However, certain limitations hinder the widespread usage of LCDEs to develop SAAs.
First, the state-of-the-art LCDEs lack components for specifying edge computations on devices installed in the environment (e.g., crop fields and farms) and assume that sensors gather data and send it to the cloud or server. Second, there are no components to support coordinating the communication between the different parts that compose SAAs, e.g., coordinating the communication between the edge and mobile components. Lastly, the output of the computations done on the devices installed in the environment must be sent to other components on the mobile phones or servers over communication networks, which can fail. The existing LCDEs have limited support for handling failures between the components composing SAAs when the networks become intermittent or unavailable.
In this dissertation, we first identify four categories of components that aim to facilitate the development of SAAs using a low-code development environment. The components encompass functionalities to observe and monitor prevailing environmental conditions, support computation on the devices installed in the environment (i.e., computation at the edge), coordinate the communication between the different components that compose SAAs, and effectively handle partial network failures. We prototype the four component categories by extending a low-code development environment, DisCoPar, with "ready-to-go" components for SAAs. The resulting low-code development environment, which we named DisCoPar-Kilimo, adopts a flow-based programming environment where applications are represented as interconnected nodes that transmit data to one another. The nodes represent software components that perform specific computational tasks in the application. The components are presented in a palette from which domain experts can pick and use them to construct software. The key contributions of this dissertation consist of a set of properties and readily deployable components for building SAAs. Technically, we also contribute DisCoPar-Kilimo, a domain-specific low-code development environment for implementing SAAs.
To assess the effectiveness of DisCoPar-Kilimo, we employed a scenario-based approach and successfully implemented seven representative smart agriculture scenarios on it. Four of these scenarios were based on the identified properties, while the remaining three were derived from existing literature and our experiences with agricultural extension workers (i.e., farmers) in Kenya. The implemented scenarios demonstrate how DisCoPar-Kilimo can be used to construct SAAs and its flexibility in implementing SAAs. From the implemented scenarios, DisCoPar-Kilimo can be used intuitively by domain experts as it hides away application development issues like memory management and coordinating communication, which can take considerable time to configure manually. In conclusion, DisCoPar-Kilimo is unique and can be considered a first in new and future generation LCDEs for SAAs.
Originele taal-2English
Toekennende instantie
  • Vrije Universiteit Brussel
Begeleider(s)/adviseur
  • Gonzalez Boix, Elisa, Promotor
  • De Meuter, Wolfgang, Promotor
  • Scull Pupo, Angel Luis, Promotor
Datum van toekenning26 jan 2024
Uitgever
Gedrukte ISBN's9789464948059
StatusPublished - 2024

Vingerafdruk

Duik in de onderzoeksthema's van 'DisCoPar-Kilimo: a low-code development environment: Geared towards smart agriculture applications'. Samen vormen ze een unieke vingerafdruk.

Citeer dit