Menu

Contattaci
Logo
Stampa

Sviluppare le interfacce

Inserire due volte gli stessi dati costa ogni giorno.

Quando ERP, CRM, portali e applicazioni specialistiche gestiscono versioni diverse della stessa realtà, nascono errori e lavoro aggiuntivo. Colleghiamo i vostri sistemi tramite interfacce documentate, chiariamo quale sia la fonte dati di riferimento e facciamo in modo che le trasmissioni restino tracciabili anche in caso di guasti.

Codice sorgente di un'applicazione web su un monitor, immagine simbolica
Dalla definizione del compito al passaggio di consegne documentato.

Quando questo servizio è utile

Sviluppare le interfacce: l'incarico che ci affidate.

  • Collegare ERP, CRM e applicazioni specialistiche
  • Abilitare l'accesso dei partner tramite API
  • Ridurre le esportazioni di file e il doppio inserimento manuale

Colleghiamo ERP, CRM, macchinari e applicazioni dei partner tramite interfacce scelte in modo appropriato. Ne fanno parte contratti API documentati, accessi protetti e cambi di versione controllati. A seconda del processo si possono usare interrogazioni dirette, eventi o trasferimenti di file pianificati. Ciò che conta sono dati corretti, errori riconoscibili e un esercizio gestibile.

Cosa può far parte dell'incarico

  • Progettazione delle API come contratto con OpenAPI o GraphQL, revisione con tutti i consumer
  • Autenticazione e autorizzazione con OAuth 2.0 e OpenID Connect tramite Keycloak
  • API gateway con limitazione della frequenza, gestione delle chiavi e logging per consumer
  • Integrazione basata su eventi con Apache Kafka, nuovi tentativi e tracciabilità per messaggio
  • Test di contratto e versionamento con dismissione documentata delle versioni precedenti

Definiamo l'ambito concreto, i collaudi e il vostro contributo nell'offerta.

Tutti i collegamenti a colpo d'occhio

Collegare i dati significa collegare le responsabilità.

  1. 01

    Fonte

    Definire i dati master e le responsabilità

  2. 02

    Contratto di interfaccia

    Definire significato, autorizzazioni ed errori

  3. 03

    Trasmissione

    Gestire nuovi tentativi e ordine

  4. 04

    Riconciliazione

    Verificare i risultati e gestire le discrepanze

Pianificazione, realizzazione e decisioni

Ciò che conta davvero per Sviluppare le interfacce.

01

La responsabilità sui dati prima del trasporto

Una connessione si stabilisce tecnicamente in fretta: più difficile è capire quale sistema abbia ragione in caso di dati contraddittori. Definiamo fonti di riferimento, chiavi e stati di business. Campi obbligatori, fusi orari, unità di misura e il significato di un'operazione di cancellazione vengono concordati tra i team coinvolti.

Il contratto di interfaccia contiene esempi e casi di errore, non solo nomi di campo. In questo modo le aree di business possono verificare se un evento ha effettivamente il significato desiderato. Prima del rollout stabiliamo inoltre come vengono acquisiti i dati storici e come le nuove modifiche vengono elaborate separatamente da essi.

02

Integrazione sincrona, basata su eventi o con allineamento pianificato

Un'interrogazione API diretta è adatta quando serve una risposta immediata. Gli eventi disaccoppiano i processi, ma richiedono un'attenta gestione dell'ordine, dei nuovi tentativi e dei messaggi in ritardo. Per alcuni sistemi esistenti un'importazione batch controllata resta la soluzione più economica. Scegliamo il modello in base al processo e alle capacità del sistema.

I messaggi duplicati non devono ad esempio generare ordini doppi. Per questo teniamo conto di identificativi univoci delle operazioni, ripetibilità e verifica funzionale. I messaggi non elaborabili necessitano di un percorso di errore visibile con una responsabilità assegnata, anziché andare persi senza che nessuno se ne accorga.

03

Le interfacce come servizio gestibile

Gli accessi vengono delimitati per applicazione o partner. Le autorizzazioni, la limitazione della frequenza, il logging e la gestione delle credenziali fanno parte del piano di integrazione. Un API gateway può raggruppare queste regole, ma non sostituisce un controllo funzionale nell'applicazione.

Il versionamento e i termini di dismissione proteggono i sistemi collegati da modifiche impreviste. I test di contratto verificano un comportamento compatibile, il monitoraggio rende visibili guasti e accumuli in coda. Il passaggio di consegne comprende esempi di chiamata, referenti e una procedura per le trasmissioni difettose.

Gli strumenti si adattano al compito

Una tecnologia adatta al vostro ambiente.

  • OpenAPI
  • GraphQL
  • gRPC
  • Apache Kafka
  • Keycloak
  • Kong

La scelta dipende dai sistemi esistenti, dal vostro team e dalla successiva gestione operativa. Non tutti i progetti richiedono tutte le tecnologie elencate.

Per i responsabili di business e i team tecnici

Le decisioni dietro la realizzazione.

04

Nuovi tentativi, ordine e verifica funzionale

Dopo un timeout, un'interfaccia non può sempre riconoscere se la controparte ha già elaborato un ordine. Ripetere ciecamente il tentativo può quindi generare registrazioni doppie. Per le operazioni in scrittura stabiliamo come un identificativo univoco associ le richieste ripetute e per quanto tempo questa informazione resti disponibile. L'identificativo da solo non basta: l'elaborazione e la memorizzazione del risultato devono essere coerenti con il modello delle transazioni.

Per gli eventi consideriamo inoltre l'ordine e la consegna in ritardo. Una cancellazione può arrivare prima che un servizio a valle abbia elaborato l'ordine originale. I cambi di stato consentiti e le informazioni di versione aiutano a gestire questi casi sul piano funzionale. Le code di errore necessitano di una responsabilità assegnata e di un riavvio controllato. Un allineamento periodico dei dati importanti individua differenze che un semplice monitoraggio delle risposte HTTP riuscite non rileva.

05

Evolvere i contratti senza sorprendere i team collegati

Un contratto API descrive, oltre ai tipi di dati, anche il significato, i casi di errore e i limiti. Chiariamo se un campo mancante, un valore vuoto e una cancellazione esplicita rappresentino operazioni diverse. Gli importi in denaro necessitano di valuta e regole di arrotondamento, le indicazioni temporali di un riferimento univoco. Per grandi quantità di dati, la paginazione, le possibilità di filtro e un ordinamento stabile fanno parte del contratto. Le richieste di esempio rendono queste regole verificabili per i consumer.

Anche modifiche apparentemente additive possono essere problematiche se un client accetta solo valori noti. Per questo censiamo i consumer e verifichiamo le modifiche rispetto alle loro aspettative. Per le nuove versioni prevediamo un percorso di transizione con documentazione, possibilità di test e piano di dismissione. Per i webhook vengono definiti il controllo dell'origine e la gestione delle consegne multiple. Una cronologia di integrazione tracciabile aiuta il supporto a seguire un'operazione di business concreta attraverso più sistemi.

06

Limitare i guasti e controllare gli accessi dei partner

Un sistema di destinazione lento non deve generare un numero illimitato di connessioni in attesa in tutti i servizi a monte. Pianifichiamo timeout, un numero limitato di nuovi tentativi e limiti di capacità adeguati al processo di business. Alcune attività possono essere memorizzate temporaneamente, altre devono fallire con un riscontro comprensibile. Il valore sostitutivo di un servizio non disponibile non deve far apparire un'informazione come aggiornata o approvata.

Per i partner e le applicazioni gli accessi vengono assegnati separatamente e resi revocabili. La sola limitazione della frequenza non impedisce un accesso ai dati non autorizzato: vengono verificate anche le autorizzazioni a livello di business. I log devono rendere analizzabili gli errori, senza diffondere credenziali o dati sensibili completi. Il passaggio di consegne comprende quindi anche il rinnovo degli accessi, l'allarme in caso di accumulo in coda e una procedura per rielaborare in modo mirato i messaggi difettosi.

Risultati di lavoro verificabili

Cosa avrete in mano.

Risultato 01

Contratti API con documentazione ed esempi di chiamata

Risultato 02

Configurazione del gateway con modello delle autorizzazioni

Risultato 03

Test di contratto e policy di versionamento

Esempio di svolgimento del progetto

Ecco come può presentarsi nella pratica.

Un portale clienti deve riunire lo stato degli ordini proveniente da ERP e logistica. Identificativi univoci degli ordini collegano i dati. Le notifiche di spedizione in ritardo vengono elaborate successivamente: gli utenti vedono uno stato comprensibile invece di informazioni contraddittorie.

Scenario illustrativo, non un riferimento cliente né una garanzia di risultato.

Cosa facilita l'avvio

  • Documentazione API e accessi di test dei sistemi coinvolti
  • Set di dati di esempio con spiegazione funzionale
  • Responsabili per ogni fonte dati e interfaccia

La mancanza di documentazione non è un motivo di esclusione. Chiariamo insieme quali informazioni procurare per prime.

Il vostro progetto nel dettaglio

Collegare il software senza perdere le regole di business.

Sviluppiamo interfacce all'interno dei vostri progetti software e verso i sistemi specialistici esistenti. L'obiettivo centrale è che un processo aziendale resti completo e tracciabile anche quando coinvolge più applicazioni.

Chiarire il significato di business prima della mappatura dei campi

Campi con lo stesso nome possono contenere informazioni diverse. Concordiamo con i team coinvolti stati, identificatori, fusi orari e unità di misura. Per ogni flusso di dati viene stabilito quale sistema detiene l'informazione vincolante e come vengono trasmesse le correzioni successive.

Un contratto di interfaccia descrive anche errori e casi particolari. Dati obbligatori mancanti, destinazioni irraggiungibili e cambi di stato non consentiti richiedono risposte diverse. Esempi e test rendono queste regole verificabili prima che l'applicazione specialistica sia completata.

Tenere conto di nuovi tentativi, ordine e diagnosi

Le interruzioni di rete possono lasciare incerto se un'azione sia già andata a buon fine. Utilizziamo identificativi di operazione adeguati e controlli di corrispondenza, affinché un nuovo tentativo non generi involontariamente un secondo ordine o una seconda registrazione. Quale garanzia sia raggiungibile dipende da entrambi i sistemi coinvolti.

Per l'esercizio ordinario, le operazioni vengono rese correlabili oltre i confini dei sistemi. Un team di supporto deve poter riconoscere a che punto si trova un'elaborazione, senza registrare integralmente nei log i dati applicativi riservati. Le modifiche al contratto ricevono un versionamento concordato e test verso i consumer noti.

Scenario di progetto illustrativo

In che modo il servizio aiuta nella pratica quotidiana.

Esempio: una nuova applicazione genera ordini nell'ERP. Dopo un timeout, verifica tramite un riferimento univoco se l'ordine esiste già. L'utente riceve uno stato comprensibile, invece di generare per errore altri ordini cliccando di nuovo.

Questo esempio illustra un possibile svolgimento e non costituisce una referenza cliente.

Prima di affidarci un incarico

Le vostre domande su Sviluppare le interfacce.

Potete collegare sistemi privi di API moderne?

A seconda del sistema sono possibili l'importazione di file, adattatori o accessi al database autorizzati. Verifichiamo inoltre le approvazioni del produttore, i rischi di modifica e la manutenzione successiva. Un accesso diretto alle strutture dati interne può essere fragile e non viene considerato un sostituto equivalente di un'API stabile.

Come vengono gestite le trasmissioni duplicate o non riuscite?

Pianifichiamo identificativi delle operazioni, nuovi tentativi controllati e una verifica di coerenza funzionale dei dati. I casi non risolvibili automaticamente confluiscono in un processo di errore visibile. Se un nuovo tentativo sia sicuro dipende dal caso di business: la lettura e l'avvio di un pagamento richiedono regole diverse.

Il tempo reale è sempre necessario?

No. Conta quanto debba essere aggiornata un'informazione per il flusso di lavoro. Un allineamento pianificato può essere sufficiente e più semplice da gestire. Per le decisioni critiche in termini di tempo vengono concordati esplicitamente latenza, comportamento in caso di guasto e coerenza dei dati.

Il passo successivo

Raccontateci dove oggi le cose si bloccano.

Per iniziare basta una breve descrizione della vostra applicazione, del problema e del vostro obiettivo. Il servizio selezionato viene riportato nella vostra richiesta di contatto.

Richiedete questo servizio

I nostri partner

  • Microsoft
  • Microsoft Azure
  • Amazon AWS
  • Google Cloud
  • Thales Group
  • Arrow ECS
  • Vodafone
  • IBM
  • Veeam
  • Atlassian
  • JetBrains
  • NinjaOne
  • OPSWAT
  • Utimaco
  • Eviden

Accessibilità

Adatta la visualizzazione alle tue esigenze.

Per questa pagina non è ancora disponibile una versione in linguaggio semplice.

Le impostazioni valgono attualmente per questa visita. Puoi consentirne il salvataggio permanente nelle impostazioni cookie.