The design and development of technology applications has to deal with many variables. Reference is obviously made to established hardware and software support, particularly with regard to the choice of appropriate operating systems, development model, environment and programming language. With the growth of networked and web-exposed systems, we are increasingly dealing with IoT (Internet-of-Things) systems: complex applications consisting of a network of often heterogeneous elements to be managed like an orchestra, using existing elements and creating new ones. Among the many fields affected by this phenomenon, two in particular are considered here: industry and medical, key sectors of modern society. Given the inherently parallel nature of such networks and the fact that it is commonly necessary to manage them via the Web, the most prevalent de facto model employs an architecture relying on a paradigm based on data flows, representing the entire system as a kind of assembly line in which each entity acquires input data and returns an output in a perfectly asynchronous manner. This thesis highlights some notable limitations of this approach and proposes an evolution that resolves some key issues. This has been done not only on a purely theoretical level, but with actual implementations currently operational and thus demonstrated in the field. Rather than proposing an abstract formalisation of a new solution, the basic principles of a whole new architecture are presented here instead, going into more detail on some key features and with experimental and practical feedback implemented as a full blown software platform. A first contribution is the definition of the principles of a new programming architecture, disseminated with some published articles and a speech in an international congress. A second contribution concerns a lightweight data synchronisation strategy, which is particularly useful for components that need to continue working during offline periods. A third contribution concerns a method of storing a symmetric encryption key combined with a peculiar retrieval and verification technique: this has resulted in an international patent, already registered. A fourth contribution concerns a new data classification model, which is particularly effective for processing information asynchronously. Issues related to possible integrations with artificial intelligence systems have also been addressed, for which a number of papers are being written, introduced by a presentation that has just been published.

EFA (EVENT FLOW ARCHITECTURE) PRINCIPLES ILLUSTRATED THROUGH A SOFTWARE PLATFORM. Software architecture principles for IoT systems, implemented in a platform, addressing privacy, sharing, and fault tolerance

Naimoli, Andrea Eugenio
2024

Abstract

The design and development of technology applications has to deal with many variables. Reference is obviously made to established hardware and software support, particularly with regard to the choice of appropriate operating systems, development model, environment and programming language. With the growth of networked and web-exposed systems, we are increasingly dealing with IoT (Internet-of-Things) systems: complex applications consisting of a network of often heterogeneous elements to be managed like an orchestra, using existing elements and creating new ones. Among the many fields affected by this phenomenon, two in particular are considered here: industry and medical, key sectors of modern society. Given the inherently parallel nature of such networks and the fact that it is commonly necessary to manage them via the Web, the most prevalent de facto model employs an architecture relying on a paradigm based on data flows, representing the entire system as a kind of assembly line in which each entity acquires input data and returns an output in a perfectly asynchronous manner. This thesis highlights some notable limitations of this approach and proposes an evolution that resolves some key issues. This has been done not only on a purely theoretical level, but with actual implementations currently operational and thus demonstrated in the field. Rather than proposing an abstract formalisation of a new solution, the basic principles of a whole new architecture are presented here instead, going into more detail on some key features and with experimental and practical feedback implemented as a full blown software platform. A first contribution is the definition of the principles of a new programming architecture, disseminated with some published articles and a speech in an international congress. A second contribution concerns a lightweight data synchronisation strategy, which is particularly useful for components that need to continue working during offline periods. A third contribution concerns a method of storing a symmetric encryption key combined with a peculiar retrieval and verification technique: this has resulted in an international patent, already registered. A fourth contribution concerns a new data classification model, which is particularly effective for processing information asynchronously. Issues related to possible integrations with artificial intelligence systems have also been addressed, for which a number of papers are being written, introduced by a presentation that has just been published.
18-apr-2024
Inglese
Crispo, Bruno
Università degli studi di Trento
TRENTO
139
File in questo prodotto:
File Dimensione Formato  
Naimoli_A-EFA-ThPhd.pdf

accesso aperto

Dimensione 5.62 MB
Formato Adobe PDF
5.62 MB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14242/94464
Il codice NBN di questa tesi è URN:NBN:IT:UNITN-94464