ARCADIA: una innovativa metodologia di sviluppo del software per automatizzare le operazioni su infrastrutture di elaborazione e comunicazione programmabili

By 14 Dicembre 2015Notizie

È partito il 1° Gennaio 2015 il progetto di ricerca ARCADIA (A novel reconfigurable-by-design highly-distributed applications development paradigm over programmable infrastructure), cofinanziato dall’Unione Europea nell’ambito del programma quadro Horizon 2020 (Call H2020-ICT-2014-1, Grant no. 645372).

Il progetto, della durata di 3 anni, prevede la collaborazione tra importanti enti di ricerca e università con Piccole Medie Imprese attive nel campo dello sviluppo software appartenenti 7 diversi paesi europei. La Maggioli S.p.A. è coinvolta trasversalmente in tutte le attività del progetto, dalla definizione delle specifiche fino alla validazione per mezzo di un caso pilota.

Il progetto ARCADIA si colloca nell’ambito delle tematiche inerenti strumenti e metodologie per lo sviluppo software, in particolare si focalizza sulle cosiddette applicazioni “fortemente distribuite” (Highly-Distributed Application, in breve HDA), ovvero realizzate tramite l’interconnessione di diversi componenti software.

L’utilizzo di questo tipo di architetture va acquisendo sempre maggior interesse, in virtù di svariate considerazioni legate alla realizzazione di sistemi robusti, resilienti, efficienti e sicuri, soprattutto nell’ottica di poter elaborare la crescente quantità di dati che sta diventando disponibile attraverso l’utilizzo intensivo di tecnologie ICT nei più svariati settori.

L’attuale barriera tecnologica in questo ambito è costituita dalla difficoltà degli ingegneri di poter prevedere a priori tutti i possibili contesti di esecuzione in cui i loro sistemi verranno impiegati, ovvero l’insieme delle risorse fisiche di elaborazione (computer) e trasmissione (reti di telecomunicazioni), degli specifici protocolli in uso, e delle loro configurazioni.

Progetto ARCADIA

Scopo di ARCADIA è quello di permettere agli sviluppatori di creare le loro applicazioni in modo indipendente dall’infrastruttura usata per la loro esecuzione, insieme ad un framework per l’installazione e la gestione delle stesse. Questo approccio consentirebbe di sviluppare le applicazioni software in modo più rapido, e permetterebbe di automatizzare gran parte delle operazioni di installazione e gestione che attualmente vengono svolte manualmente e sono sovente origine di errori ed inefficienze.

Grazie alle metodologie e agli strumenti proposti da ARCADIA (www.arcadia-framework.eu), gli sviluppatori avrebbero modo di concentrarsi maggiormente sugli aspetti architetturali e funzionali delle loro applicazioni, mentre molte operazioni meccaniche e ripetitive potrebbero essere facilmente automatizzate con evidenti vantaggi in termini di produttività e ridotta sensibilità agli errori umani. Il tutto si tradurrebbe nella prospettiva di una maggior competitività per l’industria dello sviluppo software, un settore in continua crescita all’interno dell’economia europea (si veda in proposito il report “Toward a Strategic Agenda for Software Technologies in Europe”, redatto dall’Information Society Technologies Advisory Group).

L’approccio di ARCADIA consiste nella definizione di due elementi principali: un modello di contesto, attraverso il quale gli sviluppatori inglobano all’interno delle loro applicazioni i requisiti funzionali delle stesse (dipendenze software, configurazioni degli applicativi, parametri di qualità del servizio) in forma di “annotazioni”, e un controllore intelligente (Smart Controller), in grado di interpretare le annotazioni presenti nel codice e configurare in modo opportuno il contesto di esecuzione. ARCADIA si avvarrà delle più recenti tecnologie nell’ambito delle architetture software e delle infrastrutture di elaborazione e comunicazione programmabili. Per quanto riguarda le architetture software, ARCADIA farà riferimento allo sviluppo di HDA, basate sulla scomposizione delle applicazioni in micro-servizi e la loro composizione dinamica attraverso schemi di concatenamento (service chaining).

Le infrastrutture programmabili si baseranno essenzialmente sui principi del Cloud Computing (ovvero la virtualizzazione delle risorse di elaborazione, di memorizzazione e di rete all’interno dei data center) e del Software-Defined Networking (che permette di agire con maggior flessibilità sul piano di controllo delle reti di telecomunicazioni).

Partner coinvolti nel progetto:

  • Insight Centre for Data Analytics, National University of Ireland (NUIG), Irlanda
  • Stiftelsen SINTEF (SINTEF), Norvegia
  • Technische Universität Berlin (TUB), Germania
  • Consorzio Nazionale Interuniversitario per le Telecomunicazioni (CNIT), Italia
  • Univerza v Ljubljani (UL), Slovenia
  • GIOUMPITEK– Meleti Schediasmos Ylopoiisi kai Polisi Ergon Pliroforikis EPE (UBITECH), Grecia
  • WINGS ICT Solutions Information & Communication Technologies EPE (WINGS), Grecia
  • MAGGIOLI SPA (MAGGIOLI), Italia
  • ADITESS Advanced Integrated Technology Solutions and Services Ltd (ADITESS), Cipro

Contatti:

Prof. Dr. Stefan Decker (Project Coordinator),
Insight Centre for Data Analytics, National University of Ireland (NUIG),
Tel. +353 91 495011; email stefan.decker@deri.org.
Dr. Panagiotis Gouvas (Technical Coordinator)
UBITECH Ltd,
Tel: +30 216 5000 500; email pgouvas@ubitech.eu.