Oggigiorno si sente continuamente parlare di database. Ma di cosa si tratta praticamente? Un database non è altro che un’enorme quantità di dati che viene memorizzata digitalmente. Lo stoccaggio dei dati è un’operazione estremamente complessa poiché la memoria di un database si comporta esattamente come uno scaffale di un supermercato: è sempre necessario poter risalire facilmente al luogo in cui si trova un certo dato per poterlo prendere rapidamente evitando di percorrere tutte le corsie del supermercato alla ricerca di quello specifico prodotto. In effetti, se i supermercati si sono organizzati per classi di prodotto, indicando cioè quali tipologie si trovano in una certa corsia (pasta, farina, grissini, ecc…) in un database è possibile costruire indici che permettano di risalire facilmente ai dati che si cercano.

Altra caratteristica fondamentale di un database è quella di poter distinguere in modo univoco tutti i dati relativi ad una medesima referenza: ad esempio in una semplice anagrafica sarà necessario poter riconoscere due soggetti omonimi (che abbiano, cioè, lo stesso nome e cognome). Un classico espediente è quello di utilizzare un numero progressivo per ogni istanza, che identifica in modo univoco ogni soggetto. Ne è un esempio piuttosto “autorevole” il numero di matricola che ogni università attribuisce ai propri studenti: in qualsiasi tipo di codifica, è sempre prevista almeno una parte progressiva del numero. In pratica man mano che gli studenti si immatricolano il numero cresce cambiando valore per ogni soggetto. Il parametro che identifica univocamente un record di un database prende il nome di chiave primaria.

Parlando di indici di ricerca, un indice “furbo” si può costruire proprio sul numero progressivo di matricola in quanto i moderni computer riescono a confrontare i numeri e risalire al valore ricercato molto più rapidamente di quanto non si possa fare con le lettere di un ordine alfabetico. Nella pratica quando un professore volesse identificare uno studente, ad esempio per registrare l’esito di un esame, il computer “faticherà” molto meno se il docente decide di inserire come chiave di ricerca il numero di matricola piuttosto che il cognome. Inoltre, il fatto che il numero di matricola è anche chiave primaria del database farà sì che la ricerca abbia uno ed un solo risultato; cercando, invece, per cognome il sistema restituirà tutti gli studenti con quel cognome in quanto esso non è chiave primaria del database e possono esistere duplicati.

Poter risalire in modo semplice a tutti i dati relativi ad un soggetto fisico attraverso una chiave primaria (numero di matricola) ha un riscontro pratico di estrema importanza per la capacità di raccogliere dati immediatamente e poterli analizzare in modo semplice. Prendendo spunto dalla nota questione di attualità bolognese ove diversi soggetti si schierano pro o contro il controllo degli accessi in biblioteca mediante tornelli, mi preme sottolineare un’importante opportunità di tipo “industriale” che i tornelli incorporano e che troppo è stata sottovalutata nelle attuali discussioni.

Un tornello, oltre a verificare che chi entra abbia effettivamente diritto ad entrare in un determinato ambiente, permette di misurare degli indicatori di prestazioni della risorsa (cioè la biblioteca) in modo estremamente rigoroso e affidabile, permettendo ai progettisti di capire quale sia il modo più adatto per migliorare l’offerta di servizio dell’università in termini di numero di posti messi a disposizione e orario di apertura degli stessi. Una raccolta dati di questo tipo risulterebbe in effetti inefficace se svolta da operatori umani mentre utilizzando tornelli gestiti con tecnologie ICT è certamente più semplice calcolare rilevare per ogni accesso:

Numero di matricola (chiave primaria) Data di accesso/uscita (chiave primaria) Ora di accesso/uscita (chiave primaria) Corso di studio

In questo caso, la chiave primaria è una combinazione di tre valori: il numero di matricola, la data e l’ora di ingresso: con questo impianto è impossibile avere duplicati (per averne uno studente dovrebbe accedere due volte nello stesso istante, il che è impossibile). Avendo questi dati sarebbe facilmente possibile misurare:

  • Il tempo medio di permanenza di uno studente nella biblioteca (differenziando anche le abitudini di studente per corso di studio). sum_i^Nfrac{(Istanteuscita_i - Istanteingresso_i)}{N}
  • Numero medio di utenti serviti per finestra temporale.
  • Numero medio di utenti che non hanno potuto accedere al servizio per finestra temporale (ad esempio perché la biblioteca era piena e quindi appena entrati sono subito usciti).
  • Coefficiente di saturazione della biblioteca per finestra temporale. frac{postiOccupati}{postiTotali}
  • Rappresentatività degli utenti per corso di studio.

Avere a disposizione questi dati significa poter ottenere delle distribuzioni statistiche per simulare dinamicamente il comportamento del sistema per analizzare il livello di servizio offerto ed identificare misure tecniche (costruzione di nuove biblioteche per aumentare il numero di posti disponibili) ed organizzative (adeguamento degli orari di apertura) che permettano di migliorare il servizio offerto agli studenti nel tempo. Un esempio di simulazione del sistema, che simula il comportamento di utilizzo dei tavoli della biblioteca da parte degli studenti, è mostrato nel video.

Il computer genera casualmente arrivi di studenti in base alla distribuzione statistica degli arrivi reali, rilevati con il sistema dei tornelli; a questo punto è possibile capire in quali momenti della giornata il servizio risulti sovra o sottodimensionato impostando un limite massimo di attesa oltre il quale lo studente si arrende e decide di tornare a casa poiché non trova posto. Un servizio sarebbe correttamente dimensionato se riuscisse ad avere il minimo numero di utenti fra quelli che hanno atteso troppo e contestualmente un tasso di utilizzo delle risorse prossimo a 1 (vale a dire con i tavoli quasi sempre pieni, esempio in Figura).

Immagine

Come sarà facile capire, tecnologie come i tornelli permettono di monitorare e misurare continuamente la qualità del servizio; non sono da trascurare gli aspetti relativi all’etica e alla privacy che, tuttavia, il mondo civilizzato ha dimostrato di saper superare brillantemente.

Il mio augurio è quello che si riesca a migliorare sempre i servizi di ateneo, tenendo anche a mente che, tipicamente, chi non ha nulla da nascondere non ha nulla da temere da un tornello!

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...