Lo sviluppo del software con la GenAi

Close to you


Lo sviluppo del software con la GenAi

L’intelligenza artificiale generativa rappresenta uno strumento utilissimo sia per la modernizzazione del software legacy, donando una seconda vita ad applicativi obsoleti ma ancora molto utilizzati, sia per la scrittura di nuove applicazioni. Il Gruppo Unipol ha già intrapreso un percorso di evoluzione che coinvolge l'intero ciclo di vita di sviluppo del software sfruttando le potenzialità della nuova tecnologia.

Alcune considerazioni sull’impatto della GenAI negli ambienti di sviluppo collaborativo: dall’Hackathon alla pratica quotidiana degli sviluppatori software.

Hackathon “Code Rebirth”

Nel panorama globale attuale, caratterizzato da rapide trasformazioni tecnologiche e metodologiche, l’adozione della GenAI rappresenta una delle rivoluzioni più significative. Questa tecnologia si è dimostrata capace di ridisegnare e migliorare processi consolidati, apportando benefici notevoli in diversi settori, tra cui quello finance&insurance. In questo contesto di epocale cambiamento, la partnership all’Hackathon ReActive si è rivelata un’eccellente opportunità per competere con la grande Community Tech e conoscere potenziali soluzioni innovative (in potenza e in atto

L’adozione della GenAI per l’innovazione del business

L’adozione della GenAI porta con sé una serie di benefici per l’innovazione del business. Tra questi, spiccano:

  • Ottimizzazione dei processi: la GenAI permette di automatizzare e migliorare molti dei processi interni, rendendoli più efficienti e meno suscettibili agli errori umani.
  • Riduzione dei costi: l’automazione e l’ottimizzazione dei processi portano a una significativa riduzione dei costi operativi, liberando risorse che possono essere reinvestite in altre aree strategiche.
  • Velocità di rilascio: l’uso della GenAI accelera il ciclo di sviluppo del software, permettendo di rispondere più rapidamente alle esigenze del mercato e dei clienti.
  • Miglioramento della qualità: i sistemi basati su GenAI possono rilevare e correggere errori più efficacemente, migliorando la qualità generale del prodotto finale.

Unipol sta lavorando concretamente sulla definizione e monitoraggio di questi KPI che si concretizzano nel misurare la produttività come combinazione di efficienza e qualità del software sviluppato

La GenAI e la modernizzazione del software legacy

Un tema centrale nel panorama IT contemporaneo è la modernizzazione del software legacy: sistemi mission-critical sviluppati con tecnologie datate che, nonostante la loro età, continuano a gestire processi aziendali fondamentali. 

Questo processo, reso possibile dall’uso combinato di competenze umane e di GenAI, rappresenta una frontiera affascinante e ricca di potenzialità. La GenAI non solo facilita il recupero di conoscenza del codice esistente ma permette anche la generazione di nuovo codice più robusto e ottimizzato. Questo comporta una serie di benefici tangibili per l’innovazione del business, riducendo i costi di manutenzione, migliorando l’efficienza operativa e accelerando i tempi di rilascio delle nuove funzionalità. In sintesi, significa aumentare la produttività dell’intero ciclo di sviluppo del Software.

Il ruolo di Unipol nell’evoluzione tecnologica

Unipol, uno dei principali leader in Italia nel settore finance&insurance, ha già intrapreso un percorso di evoluzione con GenAI che coinvolge l’intero ciclo di vita di sviluppo del software (Software Development LifeCycle – SDLC). L’azienda sta investendo in questa tecnologia per migliorare ogni fase del processo, dalla progettazione al rilascio, passando per il testing e la manutenzione. Questo approccio non solo ottimizza i tempi e i costi di sviluppo ma consente anche di ottenere software di qualità superiore, capace di rispondere più efficacemente alle esigenze e opportunità di business di Unipol.

Le varie fasi SDLC hanno in comune una Knowledge Base centralizzata che funge da repository per tutte le informazioni tecniche e funzionali del progetto. Questa architettura implementa un sistema di mappatura relazionale one-to-many (1:m, dove m≥1) tra i componenti software, che a tendere consentirà una gestione dinamica delle dipendenze. Quando uno sviluppatore modifica un componente, il sistema basato su GenAI analizzerà automaticamente la Knowledge Base, identificando in tempo reale tutte le dipendenze correlate. Il sistema notificherà proattivamente gli impatti potenziali delle modifiche e suggerisce gli interventi necessari negli altri moduli, generando contestualmente la documentazione aggiornata.

L’implementazione di agenti di intelligenza artificiale specializzati per ogni fase del Software Development Life Cycle sta trasformando profondamente il ruolo dello sviluppatore. Come un musicista che evolve da strumentista solista a direttore d’orchestra, il professionista IT si sta elevando da programmatore tradizionale a coordinatore strategico di un’orchestra di agenti AI, ciascuno ottimizzato per specifiche attività del ciclo di sviluppo. Questa transizione richiede nuove competenze chiave: la capacità di configurare e dirigere multiple istanze di AI, orchestrare le loro interazioni e garantire l’armonia complessiva delle soluzioni generate. Lo sviluppatore moderno diventa così un vero maestro d’orchestra digitale, che coordina e ottimizza le performance del sistema integrato di agenti AI per creare una sinfonia di sviluppo software (intero SDLC) perfettamente eseguita.

Un punto di attenzione: il controllo degli agenti AI

«Credo che tra circa cinquant’anni sarà possibile programmare i computer in modo da farli giocare tanto bene al gioco dell’imitazione che un esaminatore medio non avrà più del 70% di possibilità di effettuare la giusta identificazione dopo cinque minuti di interrogatorio» Alan Turing.

Il “Test di Turing”, proposto da Alan Turing nel 1950, non è stato “ufficialmente” superato in modo universale. Tuttavia, ci sono stati progressi significativi nei modelli di intelligenza artificiale, con alcuni sistemi in grado di simulare conversazioni umane abbastanza convincenti da ingannare persone in contesti limitati.

L’evoluzione dei modelli linguistici, come ChatGPT e altri avanzamenti recenti, ha portato molti a discutere se l’AI possa già superare o meno versioni moderne del test, ma esiste una distinzione tra il “superare” un test di questo tipo e l’avere una reale comprensione o coscienza, che il Test di Turing non considera. A parte il punto sul superamento o meno del test, gli agenti AI introducono anche altri dei punti di attenzione.

I nuovi Agenti AI comprendono il mondo, ma a modo loro. Dobbiamo assicurarci sul fatto che i nostri agenti AI autonomi perseguano solamente gli obiettivi che noi abbiamo stabilito. Tuttavia, finché questi avranno la libertà di decidere i passi con cui raggiungerli, ci sarà sempre il rischio che il percorso prescelto sia in contrasto con i nostri interessi o valori. Per la prima volta possiamo dialogare con una entità non umana e non sappiamo cosa aspettarci da questa interazione. Cercheremo di manipolarla? Cercherà di manipolarci? Siamo in acque inesplorate (“Machina Sapiens” Nello Cristianini, 2024). Viceversa, perché dovremmo farci queste domande? Se sotterro un seme e dopo un po’ di tempo posso raccogliere il relativo frutto, a cosa mi serve sapere il disegno che le radici tracciano sottoterra? Il fattore discriminante è l’ambito di applicazione degli agenti AI. Nel mondo del software gestionale è plausibile la metafora del seme e del frutto ma in altri ambiti come software per guida autonoma, ad esempio, il tema diventa concreto e non può non essere considerato.

L’Hackathon ReActive: un’opportunità

L’Hackathon ReActive – “Code rebirth: modernizzazione di applicazioni Legacy”- è stato un evento interessante che ha permesso di mettere a confronto giovani sviluppatori e professionisti esperti con la grande Community Tech. Durante l’evento, i partecipanti hanno avuto l’opportunità di lavorare su soluzioni anche innovative di trasformazione digitale, utilizzando la GenAI per risolvere problemi complessi e proporre nuove soluzioni tecnologiche. Questo tipo di competizione non solo stimola la creatività e l’innovazione ma crea anche un ambiente di apprendimento collaborativo, fondamentale per il progresso tecnologico. Inoltre, consente a giovani sviluppatori di entrare in contatto con il mondo del lavoro e, viceversa, alle aziende di conoscere e farsi conoscere come attrattive anche in specifici settori come la programmazione software avanzata.

Il valore delle competenze umane e della GenAI

La combinazione delle competenze umane con le capacità avanzate della GenAI si è dimostrata vincente. Mentre l’intelligenza artificiale può gestire enormi quantità di dati e complessità algoritmica, l’intuizione umana e l’esperienza rimangono, per ora, insostituibili per comprendere il contesto e prendere decisioni strategiche. Questo sinergico utilizzo delle competenze offre un vantaggio competitivo significativo, permettendo di sviluppare soluzioni innovative che possono trasformare radicalmente sia il settore finance&insurance come tutte le altre industry.

Guardando al futuro

In un mondo in continuo cambiamento, la capacità di innovare e adattarsi rapidamente è essenziale. La GenAI offre strumenti potenti per trasformare i processi aziendali e migliorare la competitività. L’esperienza dell’Hackathon ReActive ha dimostrato che l’innovazione nelle aziende è poliedrica e aperta a chiunque sia disposto a esplorare nuove frontiere tecnologiche e metodologiche. Unipol, con il suo interesse nell’adozione della GenAI, è uno degli attori di questa rivoluzione, e non vede l’ora di collaborare con giovani sviluppatori di talento per creare soluzioni che possano realmente fare la differenza.

Laureato in Scienze della Informazione con specializzazione in Intelligenza Artificiale all’Università degli Studi di Milano. Ha conseguito un Master in Marketing dei Servizi Finanziari all’Università Cattolica di Milano. Inizia la sua carriera nella consulenza informatica e sviluppa una profonda competenza nella gestione di sistemi IT applicativi e sistemistici. Ha svolto attività di ricerca in ambito biomedico, realizzato progetti europei in ambito bancario e iniziative innovative nel Gruppo Unipol quali la progettazione di infrastrutture tecnologiche on line, sistemi di pagamento e firma elettronici, lo sviluppo della strategia di mobilità e omnicanalità, automazione processi tramite RPA e Robofarm e Architetture sw enterprise. Sempre per il Gruppo Unipol, sta attualmente contribuendo alla progettazione del nuovo CRM, basato su tecnologia Salesforce, coordinamento del COE AI/GEN AI con progettazione di sistemi conversazionali ibridi (dichiarativi e generativi) e piattaforme di coding generative.