Vai al contenuto
Sistemi Informativi

Sistemi informativi: tipi, architetture a livelli e disponibilità

Sistemi operativi, gestionali e direzionali, ERP e CRM, architettura a tre livelli, microservizi e cloud, disponibilità in serie e in parallelo dimostrata con esempio, processi e BPMN.

Un sistema informativo è l’insieme di dati, procedure, persone e tecnologie con cui un’organizzazione raccoglie, conserva, elabora e distribuisce le informazioni di cui ha bisogno: gli ordini e le fatture di un’azienda, le cartelle cliniche di un ospedale, gli esami di un’università. La parte automatizzata, il sistema informatico, ne è il cuore tecnico. In questa lezione vediamo le funzioni e i tipi di sistemi informativi, le architetture a livelli, il calcolo della disponibilità con la dimostrazione delle formule per componenti in serie e in parallelo e un esempio, e il rapporto tra sistemi e processi aziendali.

Che cosa fa un sistema informativo

I compiti si dividono per livello di decisione:

  • i sistemi operativi (transazionali) registrano gli eventi quotidiani: un ordine, un pagamento, un’iscrizione. Devono essere veloci, affidabili e consistenti;
  • i sistemi gestionali integrano i dati dei reparti: gli ERP (enterprise resource planning) gestiscono contabilità, acquisti, magazzino, produzione e personale in un’unica base di dati; i CRM gestiscono i rapporti con i clienti; gli SCM la catena di fornitura;
  • i sistemi direzionali (business intelligence) analizzano grandi quantità di dati storici per sostenere le decisioni, con cruscotti e report (lezione sui dati distribuiti e i data warehouse).

Al centro di tutti c’è una base di dati: le lezioni successive ne vedono la progettazione, il linguaggio, gli indici e la gestione delle transazioni.

Le architetture a livelli

Un sistema informativo moderno è diviso in tre livelli logici:

  • presentazione: l’interfaccia con l’utente, oggi quasi sempre un’applicazione web o per telefono;
  • logica applicativa: le regole dell’organizzazione (come si calcola uno sconto, quando un ordine è spedibile), su uno o più server applicativi;
  • dati: il sistema di gestione della base di dati (DBMS), che garantisce la persistenza e l’integrità.

Separare i livelli permette di cambiarne uno senza toccare gli altri, di far crescere ciascuno in modo indipendente aggiungendo macchine, e di proteggere i dati, che non sono mai esposti direttamente agli utenti. Le architetture a microservizi spingono oltre la divisione: tante piccole applicazioni indipendenti, ciascuna con i propri dati, che comunicano attraverso la rete con interfacce documentate (API). Il cloud fornisce i livelli come servizi a consumo, dalle macchine virtuali alle basi di dati gestite.

Architettura a tre livelli con ridondanza
Il client C si rivolge a due server applicativi AS uguali, ciascuno dei quali può usare due copie della base di dati DB, tenute allineate. Ogni livello resta disponibile finché almeno una delle sue copie funziona.

La disponibilità

Un sistema che gestisce le vendite o le urgenze di un ospedale deve funzionare sempre. La disponibilità è la frazione di tempo in cui il sistema funziona, legata al tempo medio tra i guasti (MTBF) e al tempo medio di riparazione (MTTR) da A = \mathrm{MTBF}/(\mathrm{MTBF} + \mathrm{MTTR}). Si esprime spesso in “numero di nove”: 99,9 % significa circa 8,8 ore di fermo all’anno, 99,99 % circa 53 minuti.

Teorema. Per componenti che si guastano in modo indipendente, con disponibilità A_i:

  • se il sistema funziona solo quando funzionano tutti (componenti in serie), A_s = \prod_i A_i;
  • se il sistema funziona quando funziona almeno uno (componenti in parallelo, ridondanti), A_p = 1 - \prod_i(1 - A_i).

Dimostrazione. La disponibilità è la probabilità che il componente funzioni in un istante qualsiasi. Per eventi indipendenti la probabilità che si verifichino tutti è il prodotto delle probabilità: questo dà la serie. Il parallelo è fuori servizio solo se tutti i componenti sono guasti, evento di probabilità \prod(1 - A_i); la disponibilità è il complemento. ∎

Esempio. Un server applicativo con disponibilità 99,5 % e una base di dati con 99,9 %, in serie: 0{,}995\cdot 0{,}999 \approx 0{,}994, cioè circa 52 ore di fermo all’anno. Raddoppiando entrambi i livelli, come nella figura: il livello applicativo diventa 1 - 0{,}005^2 = 0{,}999975, quello dei dati 1 - 0{,}001^2 = 0{,}999999, e il sistema 0{,}999974: circa 14 minuti all’anno. La serie peggiora sempre la disponibilità dell’anello più debole; la ridondanza la migliora enormemente, a patto che i guasti siano davvero indipendenti. Due server nella stessa stanza, con la stessa alimentazione e lo stesso aggiornamento difettoso, non lo sono: per questo i sistemi critici si distribuiscono su più centri dati.

Sistemi e processi

Un sistema informativo non si progetta partendo dalla tecnologia, ma dai processi dell’organizzazione: le sequenze di attività che producono un risultato per un cliente, interno o esterno (ricevere un ordine, evaderlo, fatturarlo, incassare). Si descrivono con notazioni grafiche come il BPMN (Business Process Model and Notation), con attività, eventi, decisioni e flussi tra i ruoli. L’analisi dei processi mostra dove i dati nascono, chi li usa e quali passaggi si possono automatizzare o eliminare. L’esperienza dei progetti informatici aziendali è che i fallimenti vengono raramente dalla tecnologia e molto più spesso da requisiti mal compresi e da processi che nessuno ha ripensato.

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
0
Would love your thoughts, please comment.x
()
x