Le dipendenze nella continuità operativa dei siti web

Contenuti
- Le dipendenze: quando il sito non è solo il sito
- Un processo può attraversare più sistemi
- La dipendenza non deve appartenere al sito
- Non tutte le dipendenze sono immediate
- Il DNS mostra bene il problema
- La dipendenza cambia il punto di osservazione
- La dipendenza non è necessariamente un problema
- Dalla tecnologia al processo
Le dipendenze: quando il sito non è solo il sito
Un sito web raramente lavora da solo.
Per produrre il valore per cui è stato realizzato può dipendere da infrastrutture, servizi esterni, sistemi aziendali, persone e altri processi. Il sito può essere perfettamente funzionante, ma uno degli elementi da cui dipende può impedire al processo di arrivare al risultato previsto.
Per questo la Continuità Operativa non osserva soltanto il funzionamento del sito, ma anche le dipendenze che sostengono i suoi processi critici.
Le dipendenze esterne diventano rilevanti per la Continuità Operativa quando il loro funzionamento è necessario, direttamente o indirettamente, per permettere a un processo critico di continuare.
Un processo può attraversare più sistemi
Consideriamo un semplice modulo di contatto.
Il visitatore compila il modulo, il sito registra la richiesta e il sistema invia una comunicazione al commerciale.
A prima vista il processo sembra appartenere interamente al sito.
In realtà potrebbe essere:
Sito → SMTP → posta aziendale → commerciale
Se il server SMTP smette di funzionare, il sito può continuare a rispondere correttamente alle richieste HTTP e il modulo può continuare a essere visualizzato.
Ma il lead potrebbe non arrivare mai.
Dal punto di vista tecnico il sito è online.
Dal punto di vista del processo, qualcosa si è interrotto.
Dal punto di vista dell’organizzazione, potrebbe essere andata persa un’opportunità commerciale.
È questa differenza che rende le dipendenze importanti.
La dipendenza non deve appartenere al sito
Una delle difficoltà consiste nel fatto che molti elementi da cui dipende un processo non sono gestiti direttamente dal sito.
Un e-commerce può dipendere da un gateway di pagamento.
Un sistema di prenotazione può dipendere da un servizio esterno.
Un modulo di contatto può dipendere dal sistema di posta.
Un sito può registrare i nuovi contatti in un CRM.
Un’attività di marketing può utilizzare una piattaforma esterna per conservare i contatti e inviare comunicazioni successive.
Il DNS può determinare se il sito, la posta e altri servizi siano effettivamente raggiungibili.
In tutti questi casi il componente può essere esterno al sito, ma il processo che produce valore può dipendere dal suo corretto funzionamento.
La domanda quindi non è soltanto:
“Questo servizio fa parte del sito?”
La domanda più importante è:
“Cosa succede al processo se questo servizio non funziona?”
Non tutte le dipendenze sono immediate
Alcune dipendenze interrompono direttamente il processo.
Se il gateway di pagamento non funziona, il cliente potrebbe non riuscire a completare l’acquisto.
Altre agiscono attraverso passaggi intermedi.
Un modulo può registrare correttamente un contatto, ma non riuscire a trasferirlo al CRM. Il sito ha funzionato, ma il processo commerciale può essersi interrotto.
Esistono anche dipendenze che producono conseguenze ancora più lontane.
Un’azienda può affidare una campagna email a un fornitore che utilizza il dominio aziendale senza rispettare adeguate modalità di invio. La reputazione del dominio può deteriorarsi fino a provocare problemi di consegna della posta.
La campagna marketing può quindi compromettere indirettamente altri processi che utilizzano la posta aziendale.
La dipendenza può essere quindi una catena:
A → B → C → valore
Quando B smette di funzionare, C può non essere più in grado di produrre il risultato previsto anche se, preso isolatamente, continua a funzionare.
Il DNS mostra bene il problema
Il DNS rappresenta uno degli esempi più evidenti.
Un server può avere un’elevata disponibilità, essere configurato correttamente e continuare a funzionare senza interruzioni.
Ma se il dominio non viene risolto correttamente, il sito può diventare irraggiungibile.
La stessa infrastruttura DNS può inoltre essere utilizzata da servizi diversi: sito, posta, sottodomini e integrazioni.
Una modifica effettuata per un servizio può quindi avere conseguenze su altri servizi che apparentemente non hanno nulla a che fare con quella modifica.
Il problema non è che il DNS sia “fragile”.
È che molti processi dipendono da esso.
La dipendenza cambia il punto di osservazione
Dal punto di vista del sistemista, un gateway di pagamento è un servizio esterno.
Dal punto di vista dello sviluppatore, è un’integrazione.
Dal punto di vista dell’utente, è il passaggio che gli permette di pagare.
Dal punto di vista dell’organizzazione, è una dipendenza da cui può dipendere una vendita.
Sono tutte descrizioni corrette.
Cambia il punto di osservazione.
La Continuità Operativa introduce una domanda ulteriore:
Quali elementi devono continuare a funzionare affinché il processo critico possa arrivare al risultato previsto?
È questa domanda che permette di individuare dipendenze che altrimenti potrebbero rimanere invisibili.
La dipendenza non è necessariamente un problema
Avere dipendenze non significa che un sistema sia progettato male.
Un’organizzazione può scegliere consapevolmente di utilizzare un gateway esterno, un servizio di posta, un CRM o una piattaforma di marketing.
Il problema nasce quando una dipendenza importante non viene riconosciuta, non viene considerata nel processo o non viene governata.
Una dipendenza conosciuta può essere valutata.
Si può decidere quanto sia importante, quali conseguenze avrebbe una sua indisponibilità, come accorgersi del problema e, quando necessario, come ridurne l’impatto.
Una dipendenza non conosciuta può invece trasformarsi in una sorpresa.
E spesso ci si accorge della sua esistenza proprio quando smette di funzionare.
Dalla tecnologia al processo
La Continuità Operativa non chiede quindi di eliminare tutte le dipendenze.
Chiede di renderle visibili.
Perché il valore non viene prodotto dal singolo componente.
Viene prodotto da un processo nel quale collaborano componenti diversi, servizi diversi e persone diverse.
Il sito è soltanto una parte di questo insieme.
Per questo, quando si analizza un processo critico, non è sufficiente chiedersi:
“Il sito funziona?”
Occorre chiedersi:
“Tutto ciò da cui dipende questo processo sta funzionando?”
Perché un sito può essere online, il server può essere operativo e l’applicazione può non mostrare alcun errore.
E il processo che produce valore può essere già fermo.
