Vai al contenuto
INNOVAZIONE PER SMART CITY
POR FESR CAMPANIA 2014-2020 

Progetto Cofinanziato dal Fondo regionale Europeo POR FESR Campania 2014-2020
Avviso pubblico per il sostegno alle MPMI Campane nella realizzazione di progetti di trasferimento tecnologico ed industrializzazione Asse 3 obiettivo Specifico 3.1 azione 3.1.1 DD 289 del 16/05/2022 CUP B67H22002940007.

Lo scopo del progetto è la realizzazione di un servizio/prodotto orientato alla raccolta, classificazione, aggiornamento e interazione in linguaggio naturale, dei dati relativi allo stato del manto stradale. Il sistema identifica tale stato attraverso un algoritmo, assegnandone il relativo livello di qualità e realizzando una base dati ai fini della sua mappatura e monitoraggio.

SMOOVE è la soluzione innovativa sviluppata prendendo spunto da due prototipi realizzati da Mediavoice e IAD 

Mediavoice S.r.l. nasce nel 2000 da alcuni professionisti e manager dell’informatica, esperti in innovazione tecnologica, tecnologia vocale e Intelligenza Artificiale. La società, con sede legale in Roma e due sedi operative: Roma e Napoli, detiene importanti competenze nei suoi numerosi soci (11 di cui 10 persone fisiche), che sono nella maggior parte dei tecnologici esperti uniti per ideare e sviluppare soluzioni innovative nell’ambito della tecnologia vocale e dell’intelligenza artificiale.

IAD S.r.l. opera nel settore dell’Information & Communication Technology dal 1996. È nata dalla collaborazione di professionisti informatici che hanno deciso di unire le loro forze nel perseguimento di un comune obiettivo, dando vita ad una nuova entità societaria che rispondesse alle mutevoli esigenze di mercato con tempismo, competenza e professionalità. L’azienda è una realtà tutta italiana che offre soluzioni e servizi distintivi in settori tecnici del software grazie alla combinazione di competenze altamente specialistiche nel mondo dei “prodotti software” ed avanzate conoscenze delle tecnologie “open”.

WORKPAKAGE DEL PROGETTO

1.1.1      WP1: Project Management

T1.1 Definizione delle linee guida e Risk management
In questa attività verranno definite le linee guida che formalizzano nel dettaglio le procedure e i processi interni, i protocolli di comunicazione tra i vari gruppi di lavoro, le tempistiche e le modalità operative e logistiche dei meeting telematici e fisici ai vari livelli di gestione del progetto stesso.
Verrà inoltre effettuato e formalizzato un approfondimento dell’analisi delle issue potenziali di progetto, dei rischi e le relative strategie di controllo. Verrà effettuata un’analisi dei vari software a disposizione sul mercato al fine di selezionare l’applicativo più adatto per la gestione informatica e condivisa del progetto in tutte le sue componenti, tra cui certamente repository con versioning della documentazione, videocomunicazione e issue management.

T1.2 Gestione dello stato di avanzamento tecnico e amministrativo
Questa attività prevede il controllo dello stato di avanzamento del progetto durante tutto il suo ciclo di vita. In questa fase verranno svolte le attività che assicurano il rispetto dei tempi e dei costi del progetto, la revisione e la produzione dei documenti e dei report di progetto per ogni stato di avanzamento dello stesso.
In particolare, verranno svolte attività quali:

  • Organizzazione del KickOff meeting e dei meeting intermedi di progetto;
  • Revisione dello stato di avanzamento di progetto rispetto ai costi, agli aspetti industriali ed agli obiettivi fissati;
  • Monitoraggio delle attività svolte dai partner e dai fornitori e la loro aderenza agli obblighi tecnici preposti;
  • Gestione delle relazioni e delle interazioni tra partner, fornitori e personale impiegato nel progetto.
1.1.2      WP2: Ricerca su Rete Neurale e Sicurezza

T2.1 Analisi e progettazione della rete neurale per la classificazione dei dissesti
Per questa attività saranno analizzati algoritmi di intelligenza artificiale adatti ai calcoli per l’identificazione e la classificazione dei dissesti. In particolare, si farà riferimento a strumenti di Deep Neural Networks (DNNs, o reti neurali profonde), che negli ultimi anni hanno permesso di ottenere significativi miglioramenti nella esecuzione di task di riconoscimento dei pattern di qualsiasi tipo, dalle immagini per la computer vision, all’analisi di dati per le vulnerabilità di sicurezza delle reti, alla semantica per la classificazione di dati su specifici domini e tanto altro. Verrà quindi scelta e adattata la Rete neurale più attinente allo scopo previsto da questa specifica attività.

T2.2 Analisi Dataset e Modello di classificazione del prototipo per l’Annotazione dei dati
In questa attività verranno analizzati i dati del modello di classificazione ed il dataset raccolto durante il test del progetto HR4SC con lo scopo di preparare ed annotare i dati e creare un dataset da utilizzare per il training della rete neurale scelta.

T2.3 Perfezionamento analisi sicurezza prototipo attuale
In questa attività verranno analizzati gli aspetti di sicurezza riguardanti la progettazione di codice sicuro. Verranno identificate le minacce di sicurezza ed eseguite le analisi delle principali vulnerabilità delle applicazioni coinvolte. L’obiettivo sarà quindi quello di ottenere un sistema finale sicuro ed efficace sia per l’utente finale sia per gli enti pubblici e privati erogatori dei servizi offerti.

1.1.3      WP3: Sviluppo Rete Neurale, Sicurezza e Piattaforma di Monitoraggio

T3.1 Raccolta dati sviluppo e sperimentazione della Rete neurale
Questa attività avrà due distinte fasi di sperimentazione, una intermedia ed una finale. Entrambe le fasi prevedono una raccolta dati sul campo ed una verifica dei risultati di classificazione sulla base dei dati raccolti. La seconda fase include inoltre una attività preliminare di Transfer Learning utilizzando ed annotando i dati raccolti nella prima fase di sperimentazione. Questo permetterà di ottenere ulteriori miglioramenti nella performance della rete.

T3.2 Perfezionamento sviluppo sicurezza prototipo attuale
In questa attività verranno sviluppate ed adeguate le applicazioni in maniera tale da recepire tutte le linee guida e le operazioni necessarie alla messa in sicurezza del codice. Si terrà conto di tutte le minacce e le vulnerabilità individuate nella fase di analisi eseguita nel WP2. In questa attività verranno inoltre messe in campo ed implementate tutte le azioni per la messa in sicurezza dell’intera piattaforma Cloud ed i sistemi di comunicazione tra l’applicazione mobile ed i servizi remoti. Verrà infine eseguito un test sul livello di protezione del codice sviluppato con riferimento ad un indice “coverage di protezione” rispetto agli strumenti di implementazione di sicurezza utilizzati.

T3.3 Perfezionamento Sviluppo Piattaforma Web di monitoraggio e visualizzazione
In questa attività verranno sviluppate tutte le funzionalità per l’adeguamento ed il potenziamento delle funzionalità messe a disposizione degli enti preposti al monitoraggio ed alla analisi e visualizzazione dei dati nonché alla implementazione delle interfacce per l’integrazione con i sistemi di Gamification implementati da IAD.

T3.4 Integrazione rete neurale nel sistema finale
In questa attività si eseguirà l’integrazione, nella soluzione già prototipale, dei nuovi moduli sviluppati. Per Gli algoritmi di classificazione già implementati ed il modulo contenente la rete neurale verranno integrate con un sistema di decisione finale che confronterà opportunamente i dati ed effettuerà la classificazione finale.

1.1.4      WP4: Ricerca su architetture cloud con infrastrutture as Code (IaC)

T4.1 Implementazione dell’IaC
Verranno analizzate le Infrastructure as Code (IaC) per consentire un approccio alla gestione e al provisioning dell’infrastruttura da effettuare tramite codice al posto di processi manuali, in modo da garantire la ripetibilità del provisioning dello stesso ambiente.
L’attività consiste nello studio di come inserire un approccio IaC per Codificare e documentare le specifiche della configurazione, facilitare la gestione della configurazione, permette di evitare eventuali modifiche ad-hoc non documentate.
La ricerca dovrà consentire di verificare come, tramite l’approccio IaC, si possono raggiungere i seguenti obiettivi:

  • Riduzione dei costi
  • Accelerazione dei deployment
  • Riduzione degli errori
  • Infrastruttura più coerente
  • Eliminazione delle alterazioni alla configurazione

T4.2 IaC e Devops

Verranno analizzate le modalità d’uso dell’approccio IaC per l’adozione della metodologia DevOps e della pipeline d’integrazione e distribuzione continua (CI/CD). Tale processo verrà successivamente applicato allo sviluppo del sistema di Gamification. 

Verrà studiato come massimizzare i vantaggi derivanti dall’adozione dell’approccio CI/CD in modo che i deployment applicativi non siano vincolati alla disponibilità dell’infrastruttura e gli amministratori di sistema non debbano gestire processi manuali ripetitivi.

L’introduzione del metodo CI/CD dovrà consentire l’automazione costante e il monitoraggio continuo in tutto il ciclo di vita delle applicazioni, dalle fasi di integrazione e test a quelle di distribuzione e deployment.

Lo studio dovrà fare in modo che lo stesso processo di deployment sia applicato in ogni ambiente, anche in quello di produzione. In questo modo, nella fase di sviluppo, si intende evitare di dover gestire singoli ambienti con configurazioni esclusive che non possono essere riprodotte automaticamente e si potrà garantire anche la coerenza dell’ambiente di produzione.

1.1.5      WP5: Sviluppo ed estensione piattaforma Gamification in microservizi

T5.1 Suddivisione del dominio applicativo a microservizi
Verrà adottata un’architettura a microservizi, suddividendo l’applicazione in componenti indipendenti che eseguono ciascuna parte del dominio applicativo come un servizio. 
I servizi dovranno comunicare attraverso un’interfaccia ben definita che utilizza API leggere. I servizi verranno realizzati per le funzioni del dominio ed ogni servizio dovrà eseguire una sola funzione. Essendo eseguito in modo indipendente, dovrà essere possibile aggiornare, distribuire e ridimensionare ciascun servizio per rispondere alla richiesta di funzioni specifiche di un’applicazione. 
L’attività dovrà consentire la realizzazione di uno sviluppo agile, un’elevata scalabilità, una semplicità nella distribuzione, una libertà tecnologica nelle scelte per ogni microservizio, un codice altamente riutilizzabile ed una elevata resilienza in caso di errori.

T5.2 Adozione dei principi dei Twelve-Factor App
Nel rispetto delle App a microservizi l’applicazione sarà reingegnerizzata (o sviluppata) seguendo pedissequamente i 12 principi dello sviluppo di App:

  • Codebase – garantisce la presenza di un’unica codebase, ossia un unico repository.
  • Dipendenze – prevede l’utilizzo di eventuali librerie esterne in modo isolato e dichiarato.
  • Configurazione – evidenzia tutto ciò che può cambiare tra i vari deployments (es. le credenziali per accesso a servizi esterni).
  • Backing Service – evidenzia eventuali servizi di terze parti utilizzato dall’applicazione (es. database, server di autenticazione o servizi di code/messaging).
  • Build, release, esecuzione – prevede la creazione dell’eseguibile con all’interno le dipendenze associate, il rilascio con le configurazioni specifiche associate, il lancio esecutivo.
  • Processi – esegue uno o più processi per servire le richieste in ingresso. 
  • Binding delle Porte – realizzazione di applicazioni autocontenute che non necessitano di contenitori per esporre i propri servizi.
  • Concorrenza – gestisce la concorrenza istanziando più processi.
  • Rilasciabilità – i processi potranno essere avviati o stoppati al bisogno su richiesta, in maniera “agile”, mirando a velocizzare quanto più possibile le fasi di deploy e di avvio dell’applicazione, ed a rendere quanto più possibile la stessa tollerante ad errori improvvisi.
  • Parità tra Sviluppo e Produzione – limita il più possibile le differenze tra ambiente di sviluppo e produzione.
  • Log – vengono trattati come uno stream di eventi sequenziali. 
  • Processi di Amministrazione – possibilità di intervenire in tempo reale anche quando l’applicazione è in esecuzione.

T5.3 Sviluppo dell’osservabilità dell’applicazione
In questa fase verranno sviluppati l’insieme degli strumenti che consentiranno di definire il sistema “Osservabile”. Questo sarà reso possibile attraverso l’applicazione dei tre Pilastri dell’Osservabilità: 

  • Metriche – forniscono una panoramica relativamente allo stato dei sistemi, siano essi macchine fisiche on premise, istanze in cloud o containers. 
  • Logging – forniscono i record identificati dal timestamp in cui sono registrati garantendo una visualizzazione dettagliata dello stato dell’App ad una data ora, consentendo di navigare tale stato sulla base di un asse temporale.
  • Tracing – rappresentano il flusso end-to-end che attraversa l’insieme dei microservizi coinvolti in ciascuna operazione.
1.1.6     WP6: Industrializzazione dei prototipi

T6.1 Progettazione ed industrializzazione della infrastruttura cloud
La piattaforma di cloud computing già prevista per lo sviluppo del prototipo verrà potenziata in maniera tale da poter ospitare le nuove componenti realizzate ed integrate nell’ambito delle attività di ricerca e sviluppo previste nel progetto. Verranno inoltre effettuate le attività di dimensionamento del sistema per il primo rilascio in esercizio del sistema finale e definite le procedure da attuare per la scalabilità dell’intera soluzione in termini di capacità computazionale e storage del sistema. Nel corso delle attività, i vari moduli della piattaforma saranno inoltre sottoposti ad operazioni di stress test tecnici.

T6.2 Industrializzazione della piattaforma web di monitoraggio e visualizzazione dei dati e la piattaforma di servizi/microservizi[NM1] 
In questa attività verrà implementata e messa in esercizio la piattaforma web di amministrazione, monitoraggio e visualizzazione dei dati dei dissesti tramite mappe e grafici interattivi. Verrà inoltre messa in esercizio la componente di servizi e microservizi utilizzata sia dall’App Mobile che dalla Web App per il monitoraggio e la visualizzazione dei dati. Nel corso delle attività, i vari moduli software della piattaforma web saranno inoltre sottoposti ad operazioni di stress test tecnici.

T6.3 Modelli di business, implementazione e messa in esercizio della piattaforma B2B
In questa attività verrà implementata e messa in esercizio una nuova piattaforma, non presente nel progetto HR4SC per la vendita dei prodotti e delle soluzioni offerte da questo progetto sulla base dei modelli di business definiti sempre nell’ambito della presente attività. Anche questi moduli di piattaforma saranno inoltre sottoposti ad operazioni di stress test tecnici.

CRONOPROGRAMMA

Riportiamo il cronoprogramma delle attività svolte nell’arco dell’anno dei 13 mesi di progetto