Documentazione

La tecnologia software di Cadulis al servizio dei vostri team


Cadulis utilizza numerose tecnologie all’avanguardia.
Di seguito troverai alcune informazioni su alcune di esse, per darti un’idea più precisa.

Scalabilità

Pensi che Cadulis funzioni molto bene? Anche noi :) Ma grazie a questa organizzazione al top, la tua azienda cresce e ti chiedi se Cadulis sarà sempre così reattivo?
Non preoccuparti, la nostra architettura è scalabile, cioè le risorse server si adattano in base alla domanda. Abbiamo effettuato test iniettando fino a 10.000 interventi contemporaneamente.

Un’azienda in crescita necessita però di un’organizzazione specifica per compartimentare le attività e i team. Anche in questo caso Cadulis dispone degli strumenti per aiutarti.

Performance

La reattività è una delle richieste essenziali dei nostri clienti. Nessuno vuole aspettare, nemmeno una decina di secondi per il caricamento di una pagina. Ecco i trucchi che abbiamo implementato per rendere la nostra applicazione completamente fluida, “frictionless”:

  • Un sistema scalabile automaticamente. Con un hosting Kubernetes, l’infrastruttura Cadulis adatta le proprie risorse alle esigenze degli utenti. Nei periodi più tranquilli (vacanze, momenti specifici della giornata/notte), il costo dell’hosting diminuisce. Possiamo quindi offrirti la migliore tariffa sul mercato.
  • La maggior parte dei processi è stata resa asincrona, tollerante ai “guasti”. Ad esempio, l’invio di un’email automatica dopo la chiusura di un intervento può essere effettuato alcuni minuti dopo la chiusura, se il sistema è carico. In caso di errore, Cadulis riprova l’invio più tardi. Puoi così continuare la tua attività senza subire rallentamenti spiacevoli. In quest’ottica, abbiamo, con il parere dei nostri clienti, potuto definire alcuni processi come meno prioritari.
  • Funnel di calcolo efficienti. Immagina il numero di calcoli necessari per determinare la migliore fascia oraria per il tuo intervento: bisogna consultare tutte le fasce orarie di tutti i tuoi tecnici, calcolare le distanze e i tempi di percorrenza tra tutti gli interventi e calcolare tutte le redditività! Eppure la proposta di fascia identifica in pochi secondi gli operatori e le fasce più redditizie. Per questo, due trucchi: il calcolo estrapolato del tempo di percorrenza (vedi l’articolo sul machine learning) e un funnel che permette di eliminare rapidamente gli operatori sul campo troppo lontani, che non hanno le competenze giuste, o il cui planning è già pieno.
  • Caching. I nostri utenti (responsabili attività o operatori) sono portati a visitare più volte la stessa pagina. In questi casi, la pagina viene messa in cache, evitando al sistema di ricalcolare ogni volta i dati di tempo di percorrenza, distanza, redditività… Una parte di questo sistema di cache è ciò che permette l’utilizzo di Cadulis anche senza rete. (Vedi l’articolo sull’offline).

Machine learning

Il machine learning ci ha aiutato a risolvere un problema abbastanza frequente: come rendere un calcolo semplice ma mantenere la precisione. Il calcolo in questione è determinare il tempo di percorrenza a partire dalle coordinate GPS di due punti.
Le coordinate GPS possono darci la distanza in linea d’aria, tenendo conto della curvatura della Terra, il calcolo è preciso ed estremamente rapido. Ma da lì, come determinare il tempo di percorrenza reale o anche solo approssimativo, senza ricorrere a un sistema esterno di cartografia, molto esigente in preziosi secondi di calcolo? Queste chiamate, della durata di 0,2s, costituiscono la parte più importante del tempo di calcolo.
Da cosa dipende il tempo di percorrenza? Dalla densità delle infrastrutture stradali come tangenziali e autostrade vicino al punto di partenza dell’operatore, principalmente. Qui entra in gioco il nostro machine learning: per passare dalla distanza in linea d’aria al tempo di percorrenza, utilizziamo un coefficiente di correzione, che inizialmente per ogni operatore ha un valore basso.
Con questo valore, un massimo di operatori supera le fasi di filtro della proposta di fascia e di conseguenza, per le prime chiamate (spesso effettuate in test) i tempi di risposta non sono completamente ottimizzati.
Ogni volta che viene effettuata realmente una chiamata a un sistema di cartografia di terze parti per quell’operatore, il coefficiente viene aggiustato in base ai dati reali di traffico.
Dopo alcune chiamate, ogni operatore possiede un coefficiente realistico e i filtri della proposta di fascia conservano solo gli operatori più pertinenti per effettuare le chiamate.
Il machine learning descrive un sistema che diventa sempre più efficiente man mano che viene utilizzato. È proprio questo il caso.

Blockchain

Con le criptovalute, il Bitcoin, la blockchain fa parte dei buzz word. Eppure, al di là del settore finanziario, questa tecnologia può realmente offrire soluzioni a problematiche che incontriamo quotidianamente.

Ad esempio, nella nostra applicazione di pianificazione e ottimizzazione degli interventi, Cadulis, la blockchain è una pista per mettere in sicurezza la dematerializzazione dei documenti.
Ecco un caso concreto:
Immagina un tecnico che viene a installare la fibra nel tuo appartamento. Alla fine dell’intervento, firmi un documento (cartaceo) per attestare che l’intervento ha avuto luogo. Questa firma non è vincolante sul buon funzionamento o sulla buona realizzazione dell’intervento, non certifica nemmeno la tua identità, che tu sia il proprietario dell’appartamento o il committente indiretto dell’intervento. Nulla certifica inoltre che l’operatore non modifichi il contenuto del documento dopo la firma.
Eppure questa firma ha un riconoscimento giuridico che la firma digitale non possiede ancora.

Il nostro sistema digitale, tuttavia, offre di per sé maggiore sicurezza: al momento della firma, la data viene registrata. E ogni modifica viene tracciata con registrazione dell’identificativo, della data e del contenuto delle modifiche.
Per andare ancora oltre, il rapporto di intervento (o più precisamente il suo hash) può essere memorizzato in una blockchain. Così è facile dimostrare giuridicamente che il documento è inviolabile, non falsificabile, con una marcatura temporale e anche una geolocalizzazione.
Questo permette di soffocare sul nascere molti contenziosi.
Un altro caso abbastanza concreto riguarda il trasporto di rifiuti pericolosi. La responsabilità di questi prodotti ricade sul produttore fino alla loro distruzione; quest’ultimo può, grazie alla blockchain, tracciare in modo sicuro il percorso dei diversi documenti allegati ai prodotti che trasporta.