LISI è il nome del progetto ideato dall’Unione Parmense degli Industriali, che ha preso forma con la collaborazione tra le aziende aderenti del territorio (circa 40) e l’Università di Parma.
Le aziende coinvolte, tra le quali figura anche Maps Group, forniranno importanti contributi alla sostenibilità dell’iniziativa, non solo in forma economica. Esse saranno infatti chiamate principalmente a svolgere un ruolo attivo nella programmazione e nel coordinamento di parte dei seminari previsti, ed alla loro erogazione tramite l’impiego di personale interno.
Per Maps Group è stato scelto Fabio Strozzi, Senior Software Developer con esperienza nella progettazione e sviluppo di applicazioni web che, nei giorni 3, 8 e 10 maggio, ha tenuto due seminari presso la Facoltà di Ingegneria dell’Università di Parma dal titolo: ‘Evoluzione delle architetture a servizi in ambienti Enterprise’ e ‘Programmazione ad Attori’.
I seminari erano rivolti a studenti del secondo anno di Laurea Triennale in Ingegneria dei Sistemi Informativi che sosterranno l’esame in ‘Tecniche di sviluppo software in ambito industriale’, tenuto dal prof. Francesco Zanichelli.
Racconta Fabio Strozzi:
Nel primo seminario ho parlato dell’evoluzione che hanno subito le architetture dei software in ambiente enterprise passando, negli anni 90′ del secolo scorso, da architetture monolitiche ad architetture a servizi. L’evoluzione si è poi spinta oltre per dare risposte migliori ad alcune necessità delle quali, da sempre, dobbiamo tenere conto, ossia che sono necessari moduli più disaccoppiati (in inglese si dice che vogliamo moduli ‘loosly coupled’), più coesi, più robusti ai guasti e più resilienti, e come sia necessario garantire le migliori tempistiche nella risposta agli utenti.
Proprio questo tipo di esigenze ha spinto le architetture a servizi fino alla definizione delle architetture a micro-servizi.
Agli studenti, Fabio Strozzi ha presentato come caso d’uso le prestazioni della suite Clinika (tra i quali Qbox e VAP) e l’evoluzione che questi hanno subito negli anni scorsi verso una architettura a micro-servizi.
Nel secondo seminario, con prova pratica annessa, è stato discusso il modello della ‘Programmazione ad Attori’, dove per attori si intende un paradigma di programmazione concorrente sviluppato negli anni 60’ del secolo scorso, e poi tornato alla ribalta negli anni 2000 con Scala e Akka.
Il nome Scala deriva da ‘Scalable Language’, ossia linguaggio scalabile dove, per scalabilità si intende la possibilità di creare nuove parti del linguaggio o modificare quelle preesistenti per poterlo adattare alle proprie necessità.
Si tratta quindi di un linguaggio capace di adattarsi bene a una varietà di situazioni che, oggi, riguardano i linguaggi di programmazione: Scala può dunque essere usato come un linguaggio di scripting o come un linguaggio per sviluppare applicazioni complesse.
Akka è invece un framework che permette, in maniera semplice e intuitiva, di modellare una applicazione ad Attori. Contraddistinto da un linguaggio multi-paradigma, permette di scrivere un codice molto più coinciso ed è tuttora oggetto di fervente sviluppo.
Akka rappresenta dunque il primo framework completo, affidabile, scalabile e open source usabile anche in applicazioni ‘normali’ e in ambienti informatici tra loro diversi.
Come ricorda Fabio Strozzi:
Gli obiettivi del modello di ‘Programmazione ad Attori’ sono semplificare lo sviluppo di applicazioni concorrenti che siano in grado di macinare numerosi eventi asincroni nel tempo. Come casi d’uso ho presentato i prodotti ‘Clinika Studio’ e ‘Smart Arbitrage’, che sono proprio basati su tale modello.
Agli studenti ho poi fornito del codice da provare e li ho aiutati nel farlo funzionare sui loro portatili.
Perché competenze specifiche, in ambito teorico e pratico, debbono necessariamente interagire tra loro per sviluppare poi le migliori soluzioni.
Conclude Fabio Strozzi:
Complessivamente è stata una bella esperienza e ho ricevuto feedback positivi da molti studenti. Inoltre, quasi tutti quelli che hanno assistito ai primi due seminari teorici hanno poi preso parte anche alla sessione pratica di sviluppo.
Approda così anche in ambito universitario la rotta del cammino aziendale Maps: studio e aggiornamento continui in modo che competenze specifiche di settore si traducano in strumenti innovativi, condivisi e condivisibili, al passo con la contemporaneità.