System Integration: tipologie e metodi

L’utilizzo di applicazioni e strumenti differenti per portare a termine task, compiti e progetti è una pratica comune e largamente diffusa: le grandi organizzazioni, infatti, utilizzano in media circa 175 applicazioni al mese, mentre le medie aziende circa 73. Un parco applicativo così vasto e variegato può però essere difficile da gestire, soprattutto quando applicazioni e strumenti non sono connessi, non lavorano tra di loro e non riescono a condividere i dati. In questo frangente entrano in azione le tecniche della system integration.

System Integration: che cos’è

Secondo la definizione di Gartner, l’integrazione di sistema è:

“Il processo di creazione di un sistema di informazione complesso, che potrebbe includere la progettazione o la costruzione di un’architettura o un’applicazione personalizzata, l’integrazione con hardware nuovo o esistente, con pacchetti software e software personalizzati e le comunicazioni.”

In altre parole, l’integrazione di sistemi è la connessione tra le tecnologie fisiche, virtuali e applicative di un’azienda. Per alcune aziende il processo è semplice, per altre estremamente complesso, a seconda delle necessità di business, del  numero di applicazioni e della complessità dell’infrastruttura esistente. Consideriamo una media azienda di 30 – 40 persone che utilizza Microsoft 365, Slack, Jira e Salesforce. Grazie alla system integration è possibile assicurarsi, ad esempio, che i documenti necessari siano integrati in Microsoft e che le epiche di Jira siano pubblicate correttamente su Slack. Negli ultimi anni, la natura dell’integrazione di sistemi è cambiata drasticamente, soprattutto con la proliferazione delle applicazioni Saas. Se, infatti, dieci anni fa, gli amministratori di sistema erano principalmente preoccupati dell’integrazione dei server on premise, oggi, il processo di integrazione si svolge quasi interamente nel cloud. Questo comporta una serie di sfide uniche per le aziende, tra cui la necessità di integrare applicazioni e dati distribuiti in ambienti cloud multipli e di garantire la sicurezza dei dati sensibili. > Leggi anche: Metodologia 12 factor app: Sviluppo Saas

System integration: tipologie e metodi

3 tipologie di System Integration

Esistono tre principali tipologie di integrazione dei sistemi, distinguibili per tipo di utilizzo: l’integrazione delle Applicazioni Aziendali (in inglese EAI – Enterprise Application Integration), l’integrazione dei dati e l’integrazione dei documenti elettronici (in inglese EDI – Electronic Document Integration). Vediamole nel dettaglio.

EAI – Integrazione delle applicazioni Aziendali

Questo tipo di integrazione è essenziale soprattutto per i flussi di lavoro e i processi di business: la connessione delle applicazioni azienda, infatti, aiuta l’operatività e migliora la sicurezza. Immaginiamo ad esempio una catena di abbigliamento, che utilizza un sistema di gestione dell’inventario, uno per le vendite online e uno per la gestione della produzione: è necessario che queste applicazioni siano integrate per avere una visione unificata dei processi aziendali, migliorare l’efficienza operativa, ridurre i costi e offrire un’esperienza di acquisto più fluida ai propri clienti.

Data Integration

Per data integration si intende l’integrazione automatica di più data set, il cui risultato è un singolo data set unificato che si può gestire e ottimizzare facilmente. Consideriamo ad esempio un e-commerce che si serve di un ERP per la gestione dell’inventario e delle fatture, Hubspot per la gestione dei clienti e Google Analytics per l’analisi dei dati di vendita: l’integrazione dei dati da queste fonti differenti permette al nostro e-commerce di avere una visione unificata dei suoi dati aziendali, migliorare la capacità di analisi, la precisione delle previsioni, la comprensione del comportamento dei clienti e la capacità di adattamento alle esigenze del mercato.

EDI – Integrazione dei documenti elettronici

L’EDI è, in realtà, un sottoinsieme della data integration e si riferisce in modo specifico alla migrazione dei documenti da un sistema interno ad uno esterno, processo che tipicamente richiede non solo un formato dei dati comune ad entrambe le applicazioni, ma anche considerazioni puntuali in termini di sicurezza e privacy. Pensiamo, ad esempio, ad una catena di supermercati che, per semplificare il processo di approvvigionamento, utilizza una soluzione EDI per scambiare elettronicamente documenti commerciali, come ordini di acquisto, fatture e note di consegna.

Metodi per l’Integrazione di Sistemi

Abbiamo visto che cosa si può integrare, vediamo ora quali tecnologie si possono utilizzare per portare a termine l’integrazione di dati, documenti e sistemi.

Integrazione con API

API è l’acronimo di  “interfaccia di programmazione delle applicazioni” (Application Programming Interface) ed è un insieme di definizioni e protocolli per la costruzione e l’integrazione di software applicativo. Si tratta anche dello strumento più comune per collegare differenti applicazioni. Esistono API pubbliche, private o partner. Utilizzano un linguaggio comune per definire funzioni e protocolli e forniscono alle applicazioni l’abilità di trasferire i dati. Si tratta di uno strumento che, se da una lato è altamente flessibile e disponibile, dall’altro è vendor dependent e richiede competenze adeguate per essere gestito.

Webhooks

I webhook, anche chiamati callback http forniscono un sistema di comunicazione automatico tra le applicazioni e sono un’alternativa alle API. Ci sono due differenze principali tra webhook e API: in primo luogo, i webhook non richiedono un’implementazione basata su codice; in secondo luogo, sono basati sugli eventi, a differenza delle API che sono basate sulle richieste. Ciò consente ai webhook di funzionare con dati in tempo reale. Lo svantaggio dell’utilizzo dei webhooks è che, a differenza delle API, richiedono alle applicazioni di avviare il trasferimento dei dati in base a un aggiornamento.

Enterprise Service Bus (ESB)

Un ESB funge da intermediario tra tutte le comunicazioni service-to-service, separando i servizi e le applicazioni di un ambiente IT basato su un’architettura orientata ai servizi. Ogni servizio configura una sola integrazione con l’ESB e l’ESB rende tale servizio disponibile a tutti gli altri servizi ad esso collegati. Ciò consente una facile integrazione di applicazioni, servizi e dati, nonché una maggiore flessibilità nell’integrazione di sistemi di terze parti. L’implementazione e la gestione di un ESB possono però essere complesse e costose e non è sempre l’opzione migliore per integrare applicazioni più semplici.

Representational State Transfer (REST)

REST è un’architettura di rete che consente e definisce la comunicazione tra sistemi tramite HTTP. Un’API conforme ai principi REST viene definita API REST. L’integrazione con REST API si riferisce alla connessione con applicazioni di terze parti tramite richieste http per l’accesso e la trasmissione dei dati. Le API REST stanno diventando sempre più popolari negli ultimi anni, principalmente grazie a caratteristiche quali leggerezza, scalabilità, flessibilità e indipendenza. Sono inoltre efficienti e gli sviluppatori possono implementarle senza utilizzare strumenti di terze parti.

> Scopri il corso API REST

I System Integrator in Italia

In Italia, il mercato dei servizi di system integration ha visto una crescita costante negli ultimi anni e si prevede un ulteriore aumento: la crescente adozione di strumenti che utilizzano l’intelligenza artificiale e la migrazione al cloud di sempre più sistemi e strumenti, richiedono infatti soluzioni di System integration sempre più avanzate e personalizzate.

In questo contesto, i system integrator e le aziende che forniscono questi servizi diventano quanto mai essenziali: al system integrator le aziende chiedono di essere un partner, più che un fornitore. Non ci si aspetta solo che proponga soluzioni sinergiche per integrare applicazioni e sistemi nuovi ed esistenti, ma che sia in grado di offrire una consulenza in tema di innovazione tecnologica in ottica di ottimizzazione e automazione dei processi.

L’esperienza ventennale di Kinetikon come system integrator ci permette di garantire il miglior equilibrio tra le tecnologie disponibili e le esigenze di business specifiche: contattaci per maggiori informazioni e per raccontarci il tuo progetto di system integration!