giovedì 29 aprile 2010

Ricerca 14 - Kpi, indicatori di prestazioni. Rapporti, tassi.

I Key Performance Indicators [KPI] sono una serie di indicatori quali/quantitativi che misurano i risultati aziendali conseguiti, con riferimento ad aspetti fondamentali come il conseguimento di una determinata quota di mercato, il raggiungimento di un certo standard qualitativo, le prestazioni di efficienza, il livello di servizio, il grado di fedeltà della clientela nel riacquisto.
In un ambiente competitivo com’è quello attuale, il sistema di misurazione delle performance deve comprendere una gamma molto ampia di prestazioni dei business process: per questo motivo i KPI sono focalizzati principalmente sui processi.
Dal punto di vista dei KPI, il processo gestionale è un insieme di attività che,utilizzando tutta una serie di risorse, produce un output in risposta a richieste di servizio. L’obiettivo è quello di misurare l’intera gamma di prestazioni di un processo, che nel loro insieme deve quantificare il valore dell’output del processo per il cliente.
Meglio il KPI è scelto e misurato, migliore può essere il controllo dei miglioramenti e la regolazione degli obiettivi.
I KPI sono un insieme di indicatori che misurano:
▪ Le prestazioni di efficienza. Gli indicatori misurano la produttività e i costi unitari con cui sono ottenuti gli output per i clienti del processo. La misurazione dell’efficienza è l’obiettivo primario dei tradizionali sistemi di controllo di gestione, che calcolano margine e costi totali delle attività e dei prodotti.
▪ Il livello di servizio. Gli indicatori misurano i tempi di risposta alle richieste del cliente e la flessibilità del fornitore. Ad esempio, il time to market, il lead time, la percentuale di modifiche accettate, il livello globale di servizio percepito dal cliente.
▪ La qualità dei processi aziendali. Gli indicatori misurano la conformità degli output alle attese del cliente. Indicatori tipici sono le percentuali di scarti e resi o il livello di immagine.
Nell’ottica KPI, il processo gestionale è un insieme di attività che produce un output in risposta a richieste di servizio, utilizzando una serie di risorse.
Obiettivo.
Gli indicatori KPI sono finalizzati a misurare l’intera gamma di prestazioni di un processo, che nel loro insieme devono quantificare il valore dell’output del processo per il cliente.
Queste misure di prestazione verso il cliente possono essere integrate da altri indicatori che aggiungono informazioni sul contesto in cui le prestazioni stesse sono state fornite. Tali indicatori possono riguardare i volumi in input e in output, come il volume e l’assortimento degli ordini dei clienti o il numero e l’assortimento dei prodotti in output.
Inoltre, in alcuni casi è rilevante caratterizzare il profilo dell’input con opportuni indicatori di qualità e di servizio, dal momento che può condizionare in modo decisivo le prestazioni del processo. Ad esempio, per un’azienda di software sono molto rilevanti le modalità di formulazione delle domande da parte dei clienti: sono allora indicatori tipici la qualità di queste richieste, misurata attraverso la loro completezza e correttezza, e il servizio al fornitore, misurato tramite la puntualità nei rapporti tra cliente e fornitore.
Naturalmente l’insieme degli indicatori è specifico per ogni processo e cambia, per lo stesso processo, da azienda ad azienda; inoltre, non in tutti i processi è presente la gamma completa degli indicatori.

I KPI (key Performance Indicatori) sono ottenuti automaticamente a partire dai dati disponibili e vengono rappresentati in maniera grafica e di lettura immediata grazie ai Range o zone di colore diverso che danno la valutazione del loro andamento rispetto all'obiettivo prefissato (es. Budget) consentendo la comprensione del loro andamento con un solo sguardo (es. zona rossa = Pericolo, zona gialla = Attenzione, zona verde = Tutto a posto).

La ponderazione è l’attribuzione di un valore ad ogni indicatore che compone il KPI.

La normalizzazione converte i singoli punteggi degli indicatori KPI in una scala comune, rendendo così possibile la creazione di classificazioni delle prestazioni complessive per un gruppo di indicatori KPI, indipendentemente dalle caratteristiche dei singoli indicatori KPI.

La standardizzazione è l’operazione attraverso la quale ogni dato deve essere riportato in un formato comune. E’ possibile che in una azienda di medie dimensioni ogni reparto usi un suo metodo per misurare valori comuni. E’ necessario che la standardizzazione dei dati venga effettuata prima di procedere all’elaborazione dei KPI.

Standardizzazione di variabili
Una procedura di fondamentale importanza in statistica e nell'analisi dei dati è la standardizzazione delle variabili.
Attraverso questa procedura è possibile rendere confrontabili variabili identiche appartenenti a distribuzioni diverse, ma anche variabili diverse, o variabili espresse in unità di misura diverse.
La standardizzazione è una doppia normalizzazione. Nella prima normalizzazione ogni dato è trasformato nel suo scarto dalla media, nella seconda normalizzazione questo scarto viene trasformato dall'unità di misura o di conto di quella variabile in unità del suo scarto-tipo.

ricerca 9 - Esercitazione con Datatime

DataTime è un software di reportistica che permette di creare report graficamente elaborati in cui tutti gli elementi grafici e stilistici possono essere controllati dall’utente: consente, infatti, di creare qualsiasi tipo di Layout (verticale, orizzontale, cross, misto) con possibilità illimitate di Slice & Dice del cubo multidimensionale dei dati. La connettività verso i Database è universale e basata sul protocollo OleDB: può, infatti, connettersi a qualsiasi DBMS per il quale sia disponibile il corrispondente provider OleDB.

Per creare un report è necessario compiere le seguenti operazioni:
Aprire DataTime;
Selezionare New Project - nella finestra che si apre deve essere immesso il nome del Progetto e la destinazione del File dove il report verrà salvato;
Aprire il file di progetto appena creato con doppio click o con Open Project;
Selezionare Quick Report;
Scegliere dalla finestra che si è appena aperta il Software da connettere
Selezionare Create and Save connection: attraverso la finestra che si aprirà sarà possibile creare una connessione con l'origine dei dati, che può essere una tabella di excel o di access, che saranno poi raffigurati nel report;
Selezionare nella nuova finestra (Re) Load Structure - Show per vedere l’intera tabella;
Selezionare nuovamente Quick Report : è possibile costruire un report con dati incrociati (questa operazione consente di effettuare una sintesi tra le dimensioni scelte) oppure in orizzontale e verticale;
Selezionare Generate: consente di produrre le schermate sotto visualizzate.



Immagine tabella cross




Immagine cruscotto e grafico


mercoledì 28 aprile 2010

Ricerca 9 - Differenze reporting e Mining. Cenno alle finalità del mining e alle principali tecniche.

La maggior parte delle aziende utilizza strumenti OLAP (On Line Analytic Processing) per eseguire interrogazioni specifiche sui database aziendali. Questi strumenti realizzano report riassuntivi molto interessanti, come ad esempio le vendite ripartite per area geografica.
Il data mining consente agli utenti di strumenti OLAP di andare oltre i report riassuntivi.
Il data mining dice perché un certo fenomeno sta succedendo, mentre l'OLAP si limita a dire cosa sta succedendo. Le relazioni fra i dati e le linee di tendenza sono spesso nascosti nei report riassuntivi. Il data mining aiuta a scoprire queste preziose informazioni.
Per esempio, il data mining può scoprire gruppi di clienti o di prodotti che condividono caratteristiche simili. Per capire cosa significa, diamo uno sguardo ai dati giornalieri di acquisizione di clienti di una banca.





Risultati dell'OLAP
Il risultato dello strumento OLAP è un grafico che fornisce un'informazione molto chiara: l'acquisizione di clienti sta seguendo un trend positivo nonostante abbia avuto una flessione nei mesi centrali dell'anno. Se però si procede con ulteriori analisi e si affiancano alle tecniche di OLAP le tecniche di data mining emergono delle informazioni diverse. Procedendo ad una segmentazione dei clienti acquisiti tramite una cluster analysis si osserva la distribuzione della clientela rappresentata nel grafico.






Risultati del Data Mining
Il grafico mostra che l'acquisizione sta aumentando fra i clienti di "Breve termine", è sostanzialmente stabile fra i clienti definiti "Generici" e sta calando fra quelli di "Lungo termine". Dal momento che i clienti di "Lungo termine" sono i più interessanti per la banca, questa tendenza rappresenta un problema. Disponendo di questa ripartizione è stato innanzitutto possibile rilevare il problema, e sarà possibile studiare azioni specifiche di marketing dirette a invertire la tendenza.
E' quindi evidente che gli strumenti OLAP rappresentano una base di partenza, ma non sono in grado di fornire lo stesso contributo informativo delle tecniche di data mining.
La rapida crescita nell'uso delle tecniche avanzate di data mining deriva dal valore aggiunto fornito dalla combinazione di questi tre elementi:
· uso di tecniche analitiche più sofisticate per fornire informazioni di qualità
· distribuzione delle informazioni in una forma comprensibile e facilmente interpretabile
· ottenimento di risultati operativi in tempo reale

L'utilizzo delle tecniche avanzate viene anche detto modeling e può essere rappresentato tramite questo diagramma:




Gli strumenti del Data Mining si dividono in due gruppi:
- Indagine
- Verifica
entrambi necessari per progetti completi di data mining.

Strumenti di indagine
La maggior parte degli strumenti di indagine fu sviluppata nell'ambito della ricerca sull'intelligenza artificiale. Questi strumenti identificano relazioni e tendenze nei dati, aiutando a scoprire fenomeni di mercato e, di conseguenza, a consolidare le conoscenze di base sul proprio business. Le nuove conoscenze possono essere usate per aumentare i propri margini di competitività o il proprio giro d'affari. Ci sono diversi strumenti di indagine:
· Indagine esplorativa
· Alberi decisionali
· Cluster analysis
· Analisi fattoriale
· Association rules
· Rule induction

Strumenti di verifica
Pur essendo gli strumenti di indagine innovativi, la verifica svolge un ruolo determinante nel data mining. Se gli strumenti di indagine possono portare a interessanti scoperte sulla propria attività, non possono spiegare perché e nemmeno se, queste scoperte sono valide e utili. La maggior parte degli strumenti di indagine esegue test per analizzare le differenze tra gruppi. Spesso questi test portano a conclusioni sbagliate, per via della loro natura probabilistica. Gli strumenti di verifica servono a convalidare le scoperte fatte in sede di indagine, per garantire decisioni corrette. Alcuni degli strumenti di verifica sono:
· Correlazioni
· T-test
· ANOVA
· Regressione lineare
· Regressione logistica
· Analisi discriminante
· Previsioni

Ricerca 7 - Sistema Informativo - DBMS federati, Data Mart, DSS, Cruscotti, Dashboard. Situazione DBMS Industry (DB", Informix)

Gli attuali DBMS garantiscono prestazioni elevate e permettono di gestire basi di dati distribuite su più server interconnessi in rete e dislocati in aree geografiche diverse. Si può arrivare ai cosiddetti DBMS federati (o sistemi multidatabase) in cui la base di dati è distribuita su più server, in ciascuno dei quali è presente un DBMS indipendente che può implementare un modello di dati diverso da quello degli altri DBMS della stessa federazione. Inoltre, in applicazioni complesse, dove i tempi di ricerca delle informazioni devono essere ridotti al minimo e dove si ha l’esigenza di soddisfare contemporaneamente un numero molto elevato di richieste, si possono utilizzare i DBMS dotati di parallelismo, che può essere di tipo inter-query, se vengono eseguite più interrogazioni diverse in parallelo, oppure intra-query, se vengono eseguite in parallelo più parti di una stessa interrogazione.

Un Data mart è un raccoglitore di dati specializzato in un particolare soggetto. Un Data mart contiene un'immagine dei dati che permette di formulare strategie sulla base degli andamenti passati.Normalmente si colloca a valle di un Data Warehouse più globale ed è alimentato a partire da esso, di cui costituisce, in pratica, un estratto. Detto in termini più tecnici, un Data mart è un sottoinsieme logico o fisico di un Data warehouse di maggiori dimensioni.
La differenza fondamentale consiste nel fatto che la creazione del Data warehouse avviene in maniera generalizzata per poi venire incontro alle specifiche esigenze, mentre il Data mart viene generalmente creato per venire incontro ad un'esigenza specifica e già determinata.
La necessità di creare un sistema separato per il Data mart rispetto al Data warehouse può riassumersi nelle seguenti motivazioni:
. La necessità di utilizzare un diverso schema.
· Migliorare le performance separando l'hardware dedicato.
· Garantire una maggiore sicurezza dovendo autorizzare l'accesso ad un insieme minore di dati.

Un Decision Support System (DSS) è un sistema di supporto alle decisioni, che permette di aumentare l'efficacia dell'analisi in quanto aumenta il numero di alternative confrontabili e di informazioni da processare.
Il DSS si appoggia a dati in un database o una base di conoscenza, che aiutano l'utilizzatore a decidere meglio; esso non è solo un'applicazione informatica, perché contiene anche strumenti di Business Intelligence e di tecnologie dei Sistemi esperti quali modelli di supporto decisionale.
Aumenta, come detto, soprattutto l'efficacia delle decisioni cognitive e questo è un fatto rivoluzionario, perché l'obiettivo dell'informatica negli ultimi 30 anni è stato l'aumento dell'efficienza.

Potresti sentir parlare del termine Cruscotto per indicare lo stato di consolidamento del report fornito al management. Il concetto di cruscotto viene mutuato proprio dal cruscotto dell'automobile, dove vengono mostrate tutte le informazioni critiche sullo stato dell'auto: velocità, miglia percorsi, temperatura del motore, carburante rimanente, etc.
Un cruscotto organizzativo è simile. Si parte dallo stato consolidato e si aggiungono metriche organizzative. Invece di riportare tutti i dettagli, si creano un insieme di grafici, tabelle e diagrammi che mostrano lo stato di salute complessivo dell'organizzazione e dei progetti. Un esempio di questo tipo di informazione potrebbe essere un indicatore rosso/giallo/verde su tutti i progetti, un grafico che mostra la stima del budget rispetto alle spese sostenute, un diagramma che mostra il grado di soddisfazione del cliente, etc. Il cruscotto consente una visione più immediata dello stato del progetto e delle metriche organizzative. Molti cruscotti consentono di cliccare su ogni grafico e diagramma per vedere le metriche di dettaglio che formano quel totale.
Per raggiungere gli obiettivi che si prefigge, l'azienda deve costantemente tenere sotto controllo alcune variabili fondamentali come, per esempio, il DSO, i livelli di magazzino o la saturazione della capacità produttiva.E' necessario individuare una serie di KPI (Key Performance Indicator) e monitorarli costantemente al fine di garantire il raggiungimento o il mantenimento di un certo livello di performance o il corretto svolgimento di un certo processo. Le forze che spingono le aziende verso la direzione del Management Dashboard (letteralmente "Cruscotto di Direzione") prendono il nome di Sarbanes & Oxley, Certificazioni ISO9000, Certificazione Farmaindustria, ma non sono altro che una più generale tendenza verso la Qualità.
Il concetto di Dashboard è semplice e geniale allo stesso tempo: in un cruscotto vengono riportati tutti i KPI rilevanti in forma di grafico in modo da essere facilmente comprensibili anche da chi non ha particolare dimestichezza con i numeri.





Dashboard è un'applicazione per il sistema operativo Mac OS X sviluppata dalla Apple Inc., che consente di attivare con un tasto delle mini-applicazioni, chiamate widget, quando servono, e successivamente di farle sparire dal desktop quando non servono più. Può essere pensato come un livello semitrasparente al desktop. I widget sono scritti utilizzando i linguaggi HTML, CSS e Javascript. I widget sono programmi che per la maggior parte del tempo vengono ignorati dall'utente tranne per un breve periodo in cui gli sono utili. Quindi si è ritenuto inutile tenerli sempre visibili ad occupare dello spazio sullo schermo, meglio richiamarli quando servono per poi farli nuovamente sparire fino al prossimo utilizzo. La tecnologia Dashboard fa proprio questo, infarcendo i programmi di effetti grafici generati dal motore grafico Quartz Extreme.
I widgets attualmente preinstallati in dashboard sono: una calcolatrice, un gestore di contatti che si poggia su Rubrica Indirizzi, un gestore per iTunes, un orologio con tutti i fusi orari, un visualizzatore dei titoli azionari, un visualizzatore di immagini da webcam, un calendario, un gestore di note, un pannello di ricerca che si appoggia a Google, un visualizzatore delle rotte dei principali voli internazionali, un gioco delle mattonelle, un visualizzatore delle notizie e dei risultati dell'hockey americano (ESPN), pannelli di ricerca dedicati alle persone e alle attività commerciali, un dizionario, un traduttore, un convertitore di misure, le previsioni meteorologiche e un visualizzatore di film e cinema. In aggiunta ai widget preinstallati da Apple si possono installare widget di terze parti, disponibili nell'apposita sezione del sito dell'azienda o creare dei widget attraverso il programma di sviluppo di widget, Dashcode incluso nei Developer tools di Apple.
La presentazione di Dashboard ha generato molte polemiche dato che si è ravvisata una somiglianza tra Dashboard e un programma chiamato Konfabulator. L'Apple si è difesa dichiarando che l'idea che sta alla base di Dashboard era presente fin dalla prima versione del Mac OS negli accessori da scrivania e che comunque Dashboard e Konfabulator sono programmi diversi con idee alla base diverse. Ultimamente, anche Microsoft è stata accusata di aver "copiato" i widgets nel desktop di Microsoft Windows Vista e su XBOX 360.

Principali aziende produttrici di Dashboard:

Windows

Konfabulator

Dundas

Decisyon

Apple

DB2 Multiplatform Tools per Linux, Unix e Microsoft Windows semplifica la gestione di attività database complesse e ordinarie, consentendo agli amministratori di database di controllare anche gli ambienti più complessi.
Novità di DB2 High Performance Unload V3.1 sono:
Potenziata capacità elaborativa. Migliori prestazioni.
Funzioni di estrazione migliorate nell’esecuzione dei backup.
Modifiche significative alla piattaforma.
Vari potenziamenti.

Informix e' un database relazionale molto diffuso in ambiente Unix e disponibile anche in ambiente Windows-NT.
Informix vanta una diffusione notevole (spesso viene distribuito con applicazioni) un grande numero di terze parti e di clienti che lo conoscono approfonditamente ed una presenza sul mercato pluriennale.
Il cuore del database Informix e' il "motore" che gestisce la base dati. I motori di Informix sono tre:

standard engine, la prima versione basata su file C-ISAM molto snella e di semplice gestione
on-line, la versione piu' diffusa per basi dati di medie/grandi dimensioni e che fornisce un supporto completo delle trasazioni
universal server, in realta' un'estensione del motore online che consente l'utilizzo di tecniche object oriented nella definizione delle strutture della base dati e permette l'inserimento di qualsiasi nuovo tipo di dato o di programma nel database stesso con la tecnica dei Data Blade
Le differenze tra i motori sono comunque limitate. Di recente introduzione e' la versione per sistemi multiprocessori.
Di recente e' stato commercializzato un prodotto on-line for workgroup. Si tratta del normale motore dell'on-line ma con un numero di licenze ed un prezzo concorrenziali sul mercato, ora sempre piu' interessante, dei sistemi NT e dei micro Unix (Oracle for Workgroup, SQL Server). Le differenze tra versioni sono comunque limitate.
L'SQL di Informix e' molto "pulito". In effetti e' uno degli SQL piu' vicini agli standard ANSI e che piu' velocemente si e' adeguato alle linee di standard emerse nel tempo.
Sono comunque presenti diverse particolarita' utili ai programmatori.
Naturalmente con Informix e' possibile creare tabelle. Non e' tuttavia l'unico tipo di oggetto che Informix mantiene. Tra gli altri: viste, indici, ruoli, trigger, stored procedures,
Dall'introduzione dell'engine on-line sul mercato sono state notevoli i miglioramenti e le nuove funzionalita' inserite nel prodotto.
Come punti di forza sono sicuramente da ricordare:
un buon ottimizzatore cost based
un'ottima gestione del parallelismo (in grado di sfruttare appieno macchine multiprocessore)
la frammentazione delle tabelle (che consente di ottimizzare gli accessi ai dischi)
una gestione/tuning relativamente piu' semplici rispetto ad altri RDBMS sul mercato
Tali caratteristiche fanno di Informix una buona scelta sia per le basi dati di uso gestionale che per complessi (ed enormi) database di Dataware House.

I sistemi ERP (Enterprise Resource Planning) hanno come peculiarità fondante quella di essere modulari, di poter ricoprire tutti i processi produttivi aziendali e di incidere, anche in modo sostanziale nei processi interni dell'azienda.
L'adozione di questi sistemi è da considerarsi in genere molto complessa sia per gli impatti
organizzativi che per quelli tecnologici.
Un sistema gestionale (come spesso vengono definiti i sistemi ERP) risulta anche piuttosto
costoso da implementare: vi è da considerare il costo del software, dell'hardware, delle
"customizzazioni" necessarie al software per adattarlo al meglio alle esigenze di business
aziendale, nonchè il tempo di addestramento necessario a tutto il personale dei reparti interessati.
Pur avendo un processo di adozione a volte complesso i sistemi ERP godono di una maggiore assimilazione nel loro ciclo di vita rispetto ad altre piattaforme come ad esempio succede per i sistemi CRM.
I sistemi ERP afferiscono alla così detta "visione interna" dell'azienda ossia a tutte quelle attività necessarie a supportare sia la produzione che le attività di marketing e vendita (visione esterna).
Considerando il concetto di catena del valore i sistemi ERP sostengono le attività definite di
supporto: acquisti, human resource, infrastruttura aziendale.
I moduli di un sistema ERP possono essere classificati in quattro grandi famiglie:
Logistica
Contabilità
Controllo di gestione
Gestione del capitale
I sistemi ERP coprono tutti i gangli dell'azienda, e sono divenuti oramai un elemento fondante
dell'impresa digitale. Come si evince i sistemi ERP sono spesso centrali nei processi aziendali ed anzi, si può considerare che la loro introduzione sia da stimolo al ripensamento dei processi aziendali interni, così come i CRM lo sono per i processi esterni.
Come abbiamo visto la modularità consente anche una notevole flessibilità nell'implementare in tempi e fasi diverse un sistema ERP, a condizione che questo sia all'interno di un consapevole sviluppo dei sistemi informativi.

martedì 27 aprile 2010

Ricerca 3 - Possibili strutture: vantaggi e svantaggi di ciascuna struttura. Analisi critica delle diverse organizzazioni dei dati.

Ragionare sulle differenze tra DBMS e Spreadsheet

Per scegliere l'applicazione ideale per la memorizzazione dei dati è necessario sapere se i dati sono o meno di tipo relazionale, ovvero se i dati possono essere o meno memorizzati in una singola tabella o foglio dati. I dati contenuti in una singola pagina o foglio sono detti dati lineari o non relazionali. L'elenco relativo al personale ne è un esempio. Non avrebbe senso memorizzare il cognome di un impiegato in una tabella diversa da quella che ne contiene il nome. I dati contenuti in ogni colonna consentono di descrivere la stessa identità ovvero il dipendente.
Al contrario, se la tabella o il foglio di lavoro relativo al personale contenesse una serie di colonne con nomi simili, ad esempio Computer1, Computer2, e Computer3, i dati sarebbero di tipo relazionale e andrebbero memorizzati in più tabelle. A tale scopo, sarà necessario utilizzare un'applicazione di database relazionali, ad esempio Access. In un database relazionale, ogni tabella contiene essenzialmente le informazioni su un unico tipo di dati, ad esempio impiegati, computer, eventi, prodotti oppure ordini. Se si ha la necessità di disporre di un database relazionale, significa che è stata individuata una relazione uno a molti, all'interno dei dati, cioè una associazione fra due tabelle in cui il valore della chiave primaria di ogni record della tabella primaria corrisponde al valore del campo o dei campi corrispondenti di molti record nella tabella collegata.
Ad esempio, se si utilizza un database con gli ordini dei clienti, una tabella conterrà i nomi dei clienti mentre un'altra ne conterrà gli ordini. E' bene tenere presente che ad un singolo cliente possono corrispondere diversi ordini. Potrebbe inoltre essere necessario utilizzare un'altra tabella per i dettagli dell'ordine, in quanto ogni ordine potrebbe presentare più articoli di una stessa linea. I dati relazionali vengono memorizzati meglio in un database perché in grado di soddisfare l'esigenza di utilizzare più tabelle correlate.
Esiste una correlazione diretta tra le dimensioni dei dati e la difficoltà di organizzarli in modo efficiente. Maggiore è la quantità di dati conservata, più numerosi saranno i vantaggi derivanti dalla loro memorizzazione in più tabelle di un database. Per consentire di gestire e conservare i dati in modo accurato, i database dispongono di identificatori univoci. Nel database la chiave primaria viene utilizzata per collegare una tabella alle chiavi esterne di altre tabelle. Una chiave primaria non consente valori nulli e deve sempre avere un indice univoco. La chiave primaria è raffigurata da un'icona a forma di chiave visibile nella visualizzazione struttura della tabella, ed identifica in modo univoco ogni record. Gli identificatori univoci consentono di preservare l'integrità dei dati e fanno sì che due righe, o record, non contengano gli stessi dati. Essi consentono inoltre di recuperare in modo rapido i dati durante le ricerche o l'ordinamento.
Nel foglio di calcolo ogni riga è numerata e ogni colonna è contrassegnata da una lettera, in modo che ogni cella o intervallo di celle disponga di un riferimento univoco.

Quando utilizzare il database
  • E' necessario utlizzare più tabelle per memorizzare i dati;
  • Ad un gruppo di dati originariamente lineari o non relazionali potrebbe essere necessario aggiungere più tabelle in un momento successivo. Ad esempio, se si desidera registrare informazioni sui clienti, quali nomi e cognomi, indirizzi e numeri di telefono, ma si ritiene che queste informazioni potrebbero aumentare per includere azioni intraprese dai clienti, ad esempio gli ordini, è consigliabile valutare l'opportunità di memorizzare i dati in un DB;
  • Si ha la necessità di conservare una grande quantità di dati ovvero migliaia di voci. Se ad esempio si lavora in una grande azienda, per memorizzare le informazioni sul personale è consigliabile utilizzare un dabase.
  • I dati conservati sono principalmente di tipo testo;
  • Si utilizzano più database esterni per derivare e analizzare i dati necessari;
  • E' necessario mantenere la connessione ad un grande database esterno;
  • Si desidera eseguire query complesse.

Quando utilizzare il foglio di calcolo

  • E' necessaria una visualizzazione lineare o non relazionale dei dati, ovvero non si ha l'esigenza di mettere in relazione più tabelle. Ciò è particolarmente vero quando i dati sono per la maggior parte numerici, ad esempio nel caso in cui si desideri gestire un bilancio finanziario per un determinato anno.
  • Si desidera eseguire principalmente calcoli e confronti statistici sui dati, ad esempio per visualizzare un'analisi costi/benefici nel bilancio dell'azienda.

Ricerca 3 - Esempio di costruzione di database di Access con i dati relativi alle iscrizioni




















Si accede in Access e si crea un data base vuoto.
Si procede quindi alla creazione delle tabelle operando attraverso la creazione guidata oppure creandole direttamente in visualizzazione struttura.
Si apre la maschera della creazione guidata attraverso la quale scegliere i campi da inserire. Se opportuno è possibile modificare il nome del campo predefinito. A questo punto è necessario salvare la tabella con il nome che si desidera.



















La procedura di creazione della tabella deve essere ripetuta tante volte quante tabelle è necessario creare. Sempre attraverso la maschera di creazione guidata è possibile effettuare una correlazione tra le altre tabelle create di tipo "uno a molti" sia nel senso di correlare un solo record della tabella x a molti record della tabella y che viceversa.
A questo punto possono essere effettuate modifiche alla struttura, se necessarie, oppure si può procedere ad immettere direttamente i dati nei campi della tabella.


















Un'altra possibilità offerta dal percorso guidato di Access è quella di creare una maschera ad hoc attraverso la quale inserire i dati. Questa opportunità è particolarmente utile soprattutto quando gli operatori data entry sono molti perchè consente di creare regole che vincolino l'immissione dei dati e, di conseguenza, limitare notevolmente la possibilità di commettere errori.

Ricerca 2 - Foglio excel dati iscrizioni Università di Roma La Sapienza


lunedì 26 aprile 2010

Ricerca 8 - sistemi di reportistica

I sistemi di reportistica si configurano quali sottoambiti dei sistemi informativi e dei sistemi di Business Intelligence. Il loro obiettivo è quello di fornire documentazione analitica sulle attività di rilievo dell'organizzazione all'interno della quale è sviluppato, in modo tale da costituire una base informativa aggiornata e corretta, non suscettibile di rilievi e incongruenze interpretative.

In particolare i sistemi di reportistica vengono sviluppati in ambiti complessi che hanno previsto una soluzione di Datawarehouse attraverso il quale si struttura un contesto informativo hardware-software capace di rispondere alle esigenze organizzative.

In tali contesti si hanno:

  • Coerenza e consolidamento dei dati
  • Velocità nell’accesso alle informazioni
  • Supporto per l’analisi dei dati

La copiosa mole di dati e informazioni a disposizione delle aziende e delle organizzazioni è più facilmente gestibile attraverso un’elaborazione centralizzata dei documenti, che consente l’ottimizzazione delle richieste al sistema e ne diminuisce il carico di attività rispetto alla situazione in cui singoli utenti ricercano informazioni sul sistema individualmente. Tutto ciò rivela i suoi vantaggi nei tempi di esecuzione dei singoli documenti di reportistica.

Un processo di sviluppo di un sistema di reportistica, è genericamente composto dalle seguenti fasi, che variano in relazione alle dimensioni ed alle esigenze delle singole organizzazioni:

  • Identificazione delle Esigenze Informative e di Visualizzazione
  • Identificazione del Contesto Informativo e delle Fonti
  • Identificazione della Configurazione del Sistema Hardware/Software
  • Fase di Integrazione Hardware/Software delle Risorse Informative
  • Preparazione del report
  • Validazione del report
  • Fase di collaudo del sistema
  • Fase di Esercizio del sistema di reportistica

Il documento prodotto è - nell'uso italiano - correntemente tradotto con il termine report e si presenta come una combinazione sinottica di tabelle e grafici che presentano le misure di rilievo per i vari fenomeni analizzati, disaggregate e destrutturate secondo le esigenze.

Generalmente un report è un documento particolarmente agile e centrato sui dati di interesse della figura aziendale cui è diretto. Il fenomeno di interesse è - nei sistemi più complessi ed articolati - analizzato secondo più dimensioni di interesse. L'ipercubo informativo sottostante al report viene disaggregato secondo le componenti di estrazione e visualizzato

Al fine di evolvere verso documenti maggiormente informativi, gli strumenti informatici si sono dotati di alcune tecniche di visualizzazione per facilitare l'analisi dei dati

Tecniche note nella visualizzazione dei report sono:

  • drill-down
  • slice & dice

Nel primo caso, con drill-down si intende la possibilità - una volta visualizzato il dato complessivo relativo ad una dimensione gerarchizzata di analisi di esplorare tutta la gerarchia. Un classico esempio di dimensione gerarchizzabile è quella temporale: il dato annuale può essere esplorato per sottoreport che visualizzano gli aggregati mensili e questi ultimi possono essere - a loro volta - disaggregati secondo i dati giornalieri.

Per slice & dice si intende la possibilità di restringere l'analisi solo ad alcune delle occorrenze delle dimensioni e solo ad alcune delle dimensioni proposte. È possibile nell'esempio visto sopra, esplorare le vendite annuali solo di alcune regioni e di queste regioni solo di alcune città. I dati visualizzati si riferiranno unicamente alle occorrenze selezionate.

I Sistemi di Reportistica - integrati in progetti di Business Intelligence- permettono all'utente finale di disporre di una serie di funzionalità in aggiunta ai report veri e propri

  • Metadati (una descrizione dei dati, così da assicurarne la comprensione)
  • Analisi di tipo tradizionale statistico
  • Rappresentazione con GIS (Sistema informativo geografico)
  • Esecuzione di Script personalizzati con linguaggi di basso livello
  • Uso di Componenti Web

I documenti - una volta strutturati e prodotti - vengono resi disponibili alla visualizzazione da parte degli utenti e da questi possono essere salvati sulla postazione locale. Laddove il sistema lo preveda e lo permetta il singolo utente può a sua volta modificare il documento salvato e renderlo fruibile reinviandolo al repository. La fruizione dei documenti finali può essere allargata anche agli utenti di una comunità più ampia - un sito web. Più in generale, sempre più spesso i siti di Enti ed Istituzioni possono prevedere Sistemi di Reportistica via web che permettano da un lato di documentarne le attività, dall'altro di rendere disponibili dati di sintesi per approfondimenti tematici.

I sistemi di Reportistica hanno favorito la nascita ed il proliferare di una categoria di prodotti per la cosiddetta 'Office Automation'. Tali prodotti - per lo sviluppo dei quali si sono fatte concorrenza le maggiori software-house mondiali - si sono nel corso degli anni evoluti ed hanno allargato il loro spettro di standardizzazione fino a divenire strumenti integrati con quelli propri della Business Intelligence e convergendo verso vere e proprie piattaforme di 'Desktop Automation'.

Produttori di tools

Le modalità di rappresentazione di un report sono molteplici:

  • può essere utilizzato il sistema tradizionale cartaceo, che presenta il notevole svantaggio di essere modificabile solo a pena di una rielaborazione completa;
  • Il report può inoltre essere realizzato attraverso la creazione di file pdf, word. Questa modalità può essere considerata l’equivalente informatico del documento cartaceo: rispetto a quest’ultimo, presenta il vantaggio di poter effettuare delle modifiche parziali, senza riscrivere il documento integralmente. Analogamente al report cartaceo non sfrutta le potenzialità delle banche dati.
  • Excel consente di generare report più articolati attraverso la funzionalità della tabella pivot che sfrutta i dati contenuti nel fogli excel incrociandoli ed effettuando operazioni di calcolo (somma, media, ecc.). I dati così elaborati sono inoltre riassumibili in grafici.
  • PPT è l’estensione che microsoft riconosce ai file di Power Point. Consente la creazione di presentazioni informatiche multimediali tramite la realizzazione di diapositive visualizzabili in sequenza su qualsiasi computer dotato di questo software. Le presentazioni, suddivise in slide (diapositive), possono contenere per esempio fotografie, testi, animazioni, suoni, link ad altre diapositive o a siti web esterni.
  • Dashboard è un'applicazione sviluppata dalla Apple Inc., che consente di attivare con un tasto delle mini-applicazioni, chiamate widget, quando servono, e successivamente di farle sparire dal desktop quando non servono più. Può essere pensato come un livello semitrasparente al desktop.
  • I cruscotti sono un prodotto che fornisce, in un solo colpo d’occhio, informazioni sulle prestazioni di tutta l’azienda. Queste informazioni sono utilizzate da manager e quadri che necessitano di una visione generale delle prestazioni di business e che traggono enormi vantaggi dalla visualizzazione tempestiva e immediatamente comprensibile di dati strategici sia di tipo finanziario che operativo. E’ un prodotto in continuo sviluppo in grado di affiancare l’Azienda in tutte le esigenze di analisi.


Un layout di report è utilizzabile come punto di partenza per il report, in modo che non sia necessario ricreare il formato ogni volta che si crea un nuovo report. Esso offre una struttura organizzativa che determina in che modo i dati saranno presentati all'interno del report. Prima di selezionare un layout del report, è consigliabile considerare i dati che si utilizzano e lo scopo del report. Ad esempio, si supponga di voler evidenziare l'aumento della quota di mercato della società negli ultimi tre anni. È possibile utilizzare un report matrice per specificare queste informazioni e mostrare la crescita della quota in un periodo di tempo esteso. Tuttavia, per fare in modo che i dati abbiano un impatto visivo reale, può essere utile creare un report utilizzando un grafico. Sono disponibili tre layout di report predefiniti: tabella, matrice e grafico. Per fare un altro esempio, si supponga di voler creare un report che mostri le vendite fino alla data attuale per ogni venditore dell'organizzazione. Per creare questo semplice report si sceglierà probabilmente il layout del report tabella. Quindi, per organizzare meglio il contenuto del report, è possibile raggruppare i venditori per area.

Il Layout di un report può essere orizzontale, verticale, cross (letteralmente incrocio dei dati) attraverso il quale è possibile incrociare più dati ed effettuare delle operazioni quali somme, conteggi, medie, ecc.

lunedì 19 aprile 2010

Ricerca 6 - Architettura sistemi informativi aziendali

I sistemi Informativi (SI) sono applicazioni informatiche destinate ad elaborare le informazioni utilizzate nel funzionamento delle organizzazioni.
In termini semplificati e informali, lo schema dei SI è formato dalle basi di dati, che memorizzano informazioni permanenti, e da una serie di elaborazioni, che leggono o aggiornano la base di dati.

I sistemi informativi modernisi basano su una architettura client-server, attraverso la quale avviene una vera e propria divisione del lavoro computazionale fra il computer client ed il server (cioè il computer fornitore di servizi). L'aspetto importante consiste nel fatto che le funzioni "cliente" e "servente" possono essere stabilite nel momento in cui una risorsa di rete viene condivisa. Lo stesso computer può assumere contemporaneamente sia il ruolo di client che quello di server. Le applicazioni devono avere due requisiti fondamentali:

Interoperabilità (comunicare con altre applicazioni locali/remote)

Portabilità (operare su piattaforme diverse)

Il processo di produzione delle informazioni normalmente si articola su più livelli, in corrispondenza con la struttura organizzativa dei destinatari delle informazioni. Si sviluppa quindi partendo dalla base della piramide della struttura organizzativa aziendale per giungere al vertice, tramite una serie di stadi di elaborazioni successivi: procedendo verso il vertice della piramide aziendale le inforazioni si ottengono sempre più a partire da dati sintentici, ottenute tramite un processo di consolidamento a più stadi.

Dal Database al Data Warehousing

Il Sistema Informativo Aziendale supporta le esigenze informative dell’Azienda:

_ Nella operatività quotidiana o “Decisionalità Operativo/Tattica”;

_ Nelle scelte a medio termine; “Decisionalità Strategica”, mettendo a disposizione le informazioni, e le capacità di calcolo, che sono fondamentali per ottenere decisioni di qualità.

Per non appesantire i sistemi operazionali (DBMS) si usa il “Data Warehouse”, un database specializzato per contenere grosse quantità di dati analitici organizzati su base storica;

Nel tempo il data warehouse si arricchisce e diventa la base per applicazioni di reportistica, analisi e pianificazione, spesso chiamate OLAP (On-Line Analytical Processing).

…dall’ OLTP all’ OLAP

sono due diverse modalità di elaborazione dei dati:

• O.L.T.P. - On Line Transaction Processing - Risponde alla esigenza di veloce operatività, ad esempio lo scarico di magazzino a seguito di una spedizione;

• O.L.A.P. - On Line Analytical Processing -Risponde alla esigenza di analisi del business, ad esempio l’evoluzione della domanda per tipologia di clientela ed altre correlazioni complesse.


DataWarehousing

Ovvero “Immagazzinamento dei dati” indica l’insieme di metodologie e strumenti tecnologici con i quali, separatamente dal Sistema Informativo operativo, immagazzinare grosse moli di dati aziendali per scopi di accumulo dell’esperienza ed analisi.

DataWarehousing ed Applicazioni

Sul Data Warehouse, che diventa una sorta di “memoria storica dell’azienda”, agiranno i nuovi sistemi informativi a supporto delle decisioni:

_EIS - Executive Information Systems

_DSS - Decision Support Systems

_Business Intelligence

_Data Mining

La creazione di conoscenza in Azienda richiede una struttura di accumulo, aggregazione ed interpretazione delle informazioni ai diversi livelli.

Architettura decisionale basata su Data Warehousing








Il Data Mining

Una applicazione OLAP particolarmente interessante è il “Data Mining”;

E’ uno strumento che, attivato su una grande base di dati (ad esempio un Data Warehouse), riconosce correlazioni ed andamenti particolari;

Basato su sofisticati metodi statistici e matematici, complementa le capacità degli analisti, individuando e proponendo relazioni potenzialmente interessanti.

Report

Le analisi condotte sui dati contenuti all'interno dei datawerehaus vengono poi presentate ed esposte attraverso la reportistica. Il report è ormai diventato uno dei principali strumenti di gestione di un'impresa. Tale importanza è dovuta soprattutto alla centralità che oggi ha assunto la comunicazione sia all'interno che all'esterno dell'impresa. Il report è un documento, fondamentalmente di natura statistica, che sintetizza in modo chiaro e schematico il lavoro svolto dall'azienda, che permette di avere una visione completa di tutto l'apparato organizzativo e quindi anche di individuare i problemi in tempi molto più rapidi. Il report può essere presentato attraverso vari supporti: cartaceo, in pdf, con un presentazione power point, in Excel e con rappresentazioni Dashboard (cruscotti).I Dashboard sono una tipologia di DSS(sistemi di supporto decisionale). Questi consentono, attraverso rappresentazioni grafiche, di visualizzare in modo chiaro e sintetico un grande mole di dati. In pratica permettono una visione immediata su tutte le attività dell'impresa. Per essere efficaci tali strumenti devono essere il più esplicativi possibili e avere un layout semplice e gradevole.


Ricerca 11 - differenze e analogie tra tabelle e report: ruolo di dimensioni e misure, funzioni aggregative più comuni

Per tabella si intende una struttura logica organizzata atta a immagazzinare e rappresentare insiemi di dati (anche non omogenei) e le relazioni che intercorrono tra essi. L’aspetto di una tabella è generalmente quello di un reticolo attraverso il quale uno o più record (identificati con le righe della tabella) riconducibili a una medesima istanza sono messi in relazione con uno o più campi (identificati con le colonne della tabella) che definiscono attributi univoci degli oggetti rappresentati. La posizione di ogni cella è identificata dalle sue coordinate, le quali possono indicarne anche l’eventuale contenuto (è il caso del modello Entità/Relazione).

Report - E' la stampa dei dati (completi o parziali, tramite un filtraggio od una selezione dei dati) di un database. La richiesta di stampa viene espressa nel linguaggio SQL.

Dalla definizione data si evince che il report rappresenta una estrazione di dati che sono stati immagazzinati in tabelle. Quindi attraverso il report, i dati vengono estratti e sintetizzati a seconda delle esigenze al fine di poter essere più agevolmente leggibili e finalizzati agli scopi precedentemente individuati.

Un database contiene n tabelle legate tra loro da relazioni, dalla cui elaborazione è possibile creare una lista unificata contenente misure e dimensioni, che graficamente è rappresentato da un ipercubo: le misure coincidono con i bordi esterni, le dimensioni si trovano all’incrocio di ciascuna misura.

Dall’ipercubo è possibile estrarre i dati attraverso le query, che hanno il compito di interrogare il database selezionando le misure e le dimensioni ritenute significative in relazione allo scopo informativo che si vuole raggiungere; gli elementi estratti formano una tabella di dimensioni più ridotte.

Da questa tabella contente gli elementi selezionati (la query) è possibile produrre un report, che ha il compito di rappresentare in maniera visivamente immediata i dati aggregati in base alla funzione richiesta.

La differenza tra la query ed il report consiste nel fatto che la prima estrae i dati dall’ipercubo senza effettuare alcuna aggregazione tra loro mentre il report opera una sintesi delle informazioni richieste attraverso l’esecuzione delle funzioni indicate (es. media, somma, conteggio).

Attraverso un report è possibile creare sia tabelle di sintesi che grafici riassuntivi.

Es. di report

Ruolo di dimensioni e misure

In una tabella le dimensioni rappresentano i caratteri rilevati su ogni unità statistica e coincidono con la colonna della tabella;
Le misure sono registrate in ogni cella e coincidono con il carattere rilevato su ogni dimensione cioè il dato.


Il report è lo strumento attraverso il quale si estrapolano le informazioni da una base di dati e si rappresentano in relazione alle finalità conoscitive che si vogliono raggiungere. In un report, come in una tabella, le misure sono rappresentate dalle colonne ed i dati coincidono con i valori indicati nelle celle. Attraverso il layout cross è possibile incrociare i dati di più dimensioni in base a funzioni prescelte (somma, media, ecc.)

Le funzioni aggregative dei report sono:
drill-down
slice & dice.

Nel primo caso, con drill-down (dal termine anglosassone che esprime l'azione di perforare un terreno) si intende la possibilità - una volta visualizzato il dato complessivo relativo ad una dimensione gerarchizzata di analisi di esplorare tutta la gerarchia. Un classico esempio di dimensione gerarchizzabile è quella temporale: il dato annuale può essere esplorato per sottoreport che visualizzano gli aggregati mensili e questi ultimi possono essere - a loro volta - disaggregati secondo i dati giornalieri.
Per slice & dice (dall'inglese, il termine si riferisce nel complesso all'operazione di divisione di una torta) si intende la possibilità di restringere l'analisi solo ad alcune delle occorrenze delle dimensioni e solo ad alcune delle dimensioni proposte. È possibile nell'esempio visto sopra, esplorare le vendite annuali solo di alcune regioni e di queste regioni solo di alcune città. I dati visualizzati si riferiranno unicamente alle occorrenze selezionate.

giovedì 8 aprile 2010

Ricerca 5 - denormalizzazione e matrice dei dati

La denormalizzazione è l’operazione che porta ad accorpare attributi appartenenti a relazioni diverse in un'unica relazione per garantire prestazioni migliori alle ricerche effettuate sulla base di dati. Un classico caso di denormalizzazione si ha con la creazione di attributi che contengono dati ricavati da altre relazioni.
Come esempio consideriamo il database dei film e degli attori. Per sapere a quanti film ha partecipato un attore dovremmo ogni volta contare le tuple dalla relazione "film" associate al particolare attore. Una soluzione alternativa potrebbe essere quella di memorizzare tale numero direttamente nella relazione "attori", incrementandolo ad ogni nuovo film girato. In questo modo l'accesso a tale informazione sarebbe immediato.
La denormalizzazione aumenta la complessità del software che utilizza il database, poiché sarà direttamente responsabile dell'aggiornamento dei dati, e di conseguenza aumentano i rischi di inconsistenza dei dati conservati.
Le tecniche di denormalizzazione comprendono la duplicazione dei dati, la possibilità di disporre di dati di riepilogo, la suddivisone di tabelle in partizioni orizzontali o verticali e la creazione di visualizzazioni denormalizzate per semplificare la creazione di report, ovvero un'alternativa intelligente che lascia invariato il database normalizzato.
La denormalizzazione è molto usata specie in contesti come il datawarehouse. In quel contesto, dove la velocità di risposta della banca dati a una query ha un'importanza maggiore rispetto all'organizzazione dei dati, è utile avere una denormalizzazione delle tabelle per evitare di fare delle join aggiuntive. Generalmente la denormalizzazione si usa trasformando le relazioni gerarchiche del tipo uno-a-molti in un'unica relazione e quindi in un'unica tabella.
Principali vantaggi della normalizzazione sono:
- l'eliminazione della ridondanza dell'informazione: l'informazione è memorizzata una volta sola e non duplicata
- la semplicità di gestione dell'informazione: l'informazione, non essendo duplicata, può essere corretta o eliminata senza particolari ricerche e senza il rischio di non completare correttamente l'operazione
Tali vantaggi sono persi con una struttura sottoposta al processo di denormalizzazione in quanto:
· l'informazione viene duplicata (e quindi c'è una maggiore occupazione di spazio di memoria)
· l'informazione, se errata, deve essere corretta in più punti e si incorre nella possibilità, in caso di eliminazione, di lasciare presenti accidentalmente dei dati che si ritenevano rimossi
· la logica del programma che deve gestire quanto precedentemente esposto è necessariamente più complessa rispetto a quella che gestisce un database normalizzato
La presenza dell'informazione denormalizzata rende però molto più rapida la ricerca e la presentazione dei dati, in quanto l'informazione è più accessibile e la struttura realizzata in genere è molto più vicina a quella di immediata fruizione rispetto a quella ottimizzata per la gestione.

La matrice dei dati consiste in un insieme rettangolare di numeri o più in generale di caratteri, dove in riga abbiamo le unità statistiche ed in colonna le variabili; in ogni cella derivante dall’incrocio tra riga e colonna abbiamo un dato, ossia il valore registrato per una particolare variabile ed un particolare caso.
L’operazione di inserimento del materiale empirico grezzo (questionari, documenti amministrativi, ecc.) in una matrice di dati, passa attraverso la definizione del tracciato record ed il processo di codifica. La definizione del tracciato record serve per stabilire la posizione di ogni variabile nella matrice dati (ad esempio la variabile “genere” si trova nella terza colonna della matrice dei dati); il processo di codifica assegna ad ogni modalità di ogni variabile un valore numerico (ad esempio per la variabile “genere” , il valore “1” sta per “uomo” ed il valore “2” sta per “donna”. Particolare attenzione deve essere prestata all’attribuzione di codici per i dati mancanti e per le situazioni di “non applicabilità”. Il processo di codifica deve rispondere a due requisiti fondamentali: mutua esclusività ed esaustività. Il risultato del processo di codifica è un docucumento denominato codebook.
Una volta completato il processo di codifica si passa all’immissione dati (data entry). In questa fase, la matrice di dati numerica viene trasferita su supporto informaticoÞfile dei dati.
La tabella di frequenza più semplice è costituita da due colonne: sulla prima sono riportate le modalità del carattere preso in esame e sulla seconda, accanto a ciascuna modalità, la frequenza con cui la stessa modalità si presenta nella matrice dei dati.
Le informazioni contenute nelle tabelle costituiscono la cosiddetta distribuzione di frequenza della variabile esaminata.
L’aggregazione dei dati è un’operazione delicata perchè ogni sintesi porta con sè una perdita di informazioni e la sua interpretazione deve essere coerente con il tipo di sintesi che si è effettuata.

Ricerca 5 - Estrazione/presentazione dei dati dei DBMS (ETL)

Extract, Transform, Load (ETL) è un'espressione in che si riferisce al processo di estrazione, trasformazione e caricamento dei dati in un sistema di sintesi (data warehouse, datamart...).
I dati vengono estratti da sistemi sorgenti quali database transazionali (OLTP), comuni file di testo o da altri sistemi informatici.
Subiscono quindi un processo di trasformazione, che consiste ad esempio nel:
- Selezionare solo quelli che sono di interesse per il sistema
- Normalizzare i dati (per esempio eliminando i duplicati)
- Tradurre dati codificati
- Derivare nuovi dati calcolati
- Eseguire accoppiamenti (join) tra dati recuperati da differenti tabelle
- Raggruppare i dati
Tale trasformazione ha lo scopo di consolidare i dati, cioè rendere omogenei dati provenienti da sorgenti diverse e di fare in modo che siano più aderenti alla logica di business del sistema di analisi per cui viene sviluppato. Vengono infine memorizzati nelle tabelle del sistema di sintesi (load).
Occorre prestare particolare attenzione alla granularità delle informazioni da memorizzare nella struttura a valle. Queste infatti, non solo devono essere aggregate in modo da non avere un dettaglio eccessivo (cosa che potrebbe portare ad un decadimento delle prestazioni delle interrogazioni effettuate sul sistema), ma devono anche mantenere una granularità che consenta di effettuare le necessarie analisi sui dati.
L'implementazione di estrattori necessita di un'analisi di dettaglio dei sistemi di alimentazione: l'obiettivo che si deve porre un'azienda è che questo processo sia unico per tutti i sistemi di sintesi. Assolutamente da evitare è la stratificazione nel tempo di più estrattori dallo stesso sistema per alimentare diversi sistemi di sintesi. Tali estrattori avendo piccole variazioni nei criteri di estrazione, di codifica o di ripulitura dei dati tenderebbero ad avere, nella pratica, criteri simili di estrazione ma non identici. Il risultato di tali stratificazioni è quello di avere sistemi di sintesi che presentano all'alta direzione risultati che, rappresentando gli stessi fenomeni, evidenziano invece valori diversi. Ciò contribuisce a generare diffidenza per i risultati dei sistemi di sintesi in generale.
Per capire meglio cosa può succedere è sufficiente pensare di dover determinare il numero dei clienti di un'azienda a una certa data. È necessario decidere, a fronte di un nominativo presente nell'anagrafica clienti, dopo quanto tempo di inattività non considerarlo più tale. Può succedere che il significato di "numero clienti" sia diverso per reparti diversi della stessa azienda. Per il controllo di gestione un cliente può essere tale solo se ha comprato nel corso dell'anno, ma per il marketing, che deve mandare gli auguri di Natale, il bacino sarà senz'altro diverso e superiore.
È necessario che sia demandato ad uno specifico sottosistema dedicato la funzione di integrazione dati tra i sistemi transazionali (OLTP) e i sistemi di sintesi OLAP, impedendo, di fatto che siano sviluppati più processi per estrarre lo stesso dato.
Lo sfruttamento di metadati (es. dizionario dati) potrà contribuire a generare l'integrazione non solo tecnica ma anche culturale all'interno dell'azienda.
Avere questo approccio significa rendere indipendenti, ma integrati, i vari sottosistemi aziendali (fornitori, magazzino, clienti, contabilità generale, controllo di gestione), creando e gestendo l'univocità del dato e rendendo più semplice il controllo accentrato o la sostituzione di uno dei sistemi oggetto dell'integrazione.
Va notato come spesso per ETL si intende lo strumento con il quale è possibile sviluppare questa particolare architettura di alimentazione che di per sé potrebbe essere sviluppata anche con strumenti standard. Gli ETL tuttavia, essendo strumenti "dedicati", forniscono risultati tangibili in termini di documentazione e di velocità di sviluppo, per contro necessitano di un gruppo di lavoro specializzato in questo "linguaggio" e quindi, in caso di turn over o licenziamento, la necessità di gestire anticipatamente la presenza in azienda di opportuni back-up con i relativi costi.
Alcuni ETL Software
SmartDB Workbench
DataStudio
Integrator
Informatica PowerCenter
Datastage IBM
SSIS Microsoft
I-service IngeniumTechnology
Scriptella ETL
Benetl
Oracle Data Integration Suite
Kettle Pentaho Data Integration

Ricerca 4 - Olap

OLAP, acronimo che sta per l'espressione On-Line Analytical Processing, designa un insieme di tecniche software per l'analisi interattiva e veloce di grandi quantità di dati, che è possibile esaminare in modalità piuttosto complesse. Questa è la componente tecnologica base del data warehouse e, ad esempio, serve alle aziende per analizzare i risultati delle vendite, l'andamento dei costi di acquisto merci, al marketing per misurare il successo di una campagna pubblicitaria, ad una università i dati di un sondaggio ed altri casi simili.

La creazione di un database OLAP consiste nell'effettuare una fotografia di informazioni (ad esempio quelle di un database relazionale) in un determinato momento e trasformare queste singole informazioni in dati multidimensionali.
Eseguendo successivamente delle interrogazioni sui dati così strutturati è possibile ottenere risposte in tempi decisamente ridotti rispetto alle stesse operazioni effettuate su altre tipologie di database.

Una struttura OLAP creata per questo scopo è chiamata “cubo” multidimensionale. Ci sono diversi modi per creare un cubo, ma il più conosciuto è quello che utilizza uno schema "a stella"; al centro c'è la tabella dei "fatti" che elenca i principali elementi su cui sarà costruita l'interrogazione, e collegate a questa tabella ci sono varie tabelle delle "dimensioni" che specificano come saranno aggregati i dati.
Per esempio un archivio di clienti può essere raggruppato per città, provincia, regione; questi clienti possono essere relazionati con i prodotti ed ogni prodotto può essere raggruppato per categoria.
Il calcolo delle possibili combinazioni di queste aggregazioni forma una struttura OLAP che, potenzialmente, potrebbe contenere tutte le risposte per ogni singola combinazione. In realtà viene memorizzato solo un numero predeterminato di combinazioni, mentre le rimanenti vengono ricalcolate solo al momento in cui quella richiesta viene materialmente effettuata.
Un sistema OLAP permette di:
studiare una grande quantità di dati
vedere i dati da prospettive diverse
supportare i processi decisionali.

Partendo dai concetti di base appena descritti, si può precisare che esistono tre tipologie di sistemi OLAP:
MOLAP (Multidimensional OLAP) è la tipologia più utilizzata e ci si riferisce ad essa comunemente con il termine OLAP. Utilizza un database di riepilogo avente un motore specifico per l'analisi multidimensionale e crea le "dimensioni" con un misto di dettaglio ed aggregazioni. Risulta la scelta migliore per quantità di dati ridotte, perché è veloce nel calcolare aggregazioni e restituire risultati, ma crea enormi quantità di dati intermedi
ROLAP (Relational OLAP) lavora direttamente con database relazionali; i dati e le tabelle delle dimensioni sono memorizzati come tabelle relazionali e nuove tabelle sono create per memorizzare le informazioni di aggregazione. E' considerato più scalabile e richiede minor spazio disco e minore RAM, ma è lento nella fase di creazione tabelle e nel produrre il risultato delle interrogazioni.
HOLAP (Hybrid OLAP) utilizza tabelle relazionali per memorizzare i dati e le tabelle multidimensionali per le aggregazioni "speculative". si pone nel mezzo, è in grado di essere creato più velocemente di ROLAP ed è più scalabile di MOLAP.
La difficoltà nell'implementazione di un database OLAP parte dalle ipotesi delle possibili interrogazioni utente; scegliere la tipologia di OLAP, lo schema e creare una base dati completa e consistente è un'operazione complessa, decisamente complicata per una base di utenza ampia ed eterogenea.
Per venire incontro alle esigenze degli utenti, molti prodotti moderni forniscono una quantità enorme di schemi ed interrogazioni pre-impostate.

Le funzioni di base di uno strumento OLAP sono:
Slicing: è l'operazione di rotazione delle dimensioni di analisi. È un'operazione fondamentale per analizzare totali ottenuti in base a dimensioni diverse o se si vogliono analizzare aggregazioni trasversali;
Dicing: è l'operazione di estrazione di un subset di informazioni dall'aggregato che si sta analizzando. L'operazione di dicing viene eseguita quando l'analisi viene focalizzata su una "fetta del cubo" avente particolare interesse per l'analista. In alcuni casi l'operazione di dicing può essere "fisica" nel senso che non consiste solo nel filtrare le informazioni di interesse ma anche nell'estrarle dall'aggregato generale per distribuirne i contenuti;
Drill-down: è l'operazione di "esplosione" del dato nelle sue determinanti. L'operazione di drill-down può essere eseguita seguendo due diversi percorsi: la gerarchia costruita sulla dimensione di analisi (p. es.: passaggio dalla famiglia di prodotti all'insieme dei prodotti che ne fanno parte) oppure la relazione matematica che lega un dato calcolato alle sue determinanti (p. es.: passaggio dal margine al ricavo e costo che lo generano). È comprensibile l'importanza di tale operazione ai fini analitici in termini di comprensione delle determinanti di un dato;
Drill-across: è l'operazione mediante la quale si naviga attraverso uno stesso livello nell'ambito di una gerarchia. Come visto precedentemente, il passaggio dalla famiglia di prodotti alla lista dei prodotti è un'operazione di drill-down, il passaggio da una famiglia ad un'altra famiglia è un'operazione di drill-across;
Drill-through: concettualmente simile al drill-down, è l'operazione mediante la quale si passa da un livello aggregato al livello di dettaglio appartenente alla base dati normalizzata. Molti venditori proclamano che i loro prodotti hanno la capacità, mediante l'operazione di drill-through, di passare dal data warehouse ai sistemi transazionali alimentanti. Tale operazione, anche se tecnicamente fattibile sotto una serie di condizioni abbastanza rilevanti, è poco sensata per le problematiche di sicurezza e di performance indotti nei sistemi transazionali stessi.

Ricerca 4 Nozione di dimensione e misura: differenza concettuale

Una dimensione di database è un insieme di oggetti correlati, denominati attributi, che è possibile utilizzare per offrire informazioni sui dati della tabella dei fatti in uno o più cubi. Gli attributi tipici di una dimensione dei prodotti possono ad esempio essere costituiti da nome del prodotto, categoria di prodotto, linea di prodotti, dimensioni del prodotto e prezzo del prodotto. Tali oggetti sono associati a una o più colonne di una o più tabelle di una vista origine dati. Per impostazione predefinita, questi attributi sono visibili come gerarchie di attributo e possono essere utilizzati per acquisire familiarità con le tabelle dei fatti in un cubo. Possono inoltre essere organizzati in gerarchie definite dall'utente che definiscono percorsi di spostamento utili per l'esplorazione dei dati di un cubo.
I cubi contengono tutte le dimensioni su cui gli utenti basano le analisi dei dati della tabella. Un'istanza di una dimensione database in un cubo viene denominata dimensione del cubo e fa riferimento a uno o più gruppi di misure nel cubo. Una dimensione del database può essere utilizzata più volte in un cubo. Se una tabella dei fatti include più fatti temporali, ad esempio, è possibile definire una dimensione del cubo separata per facilitare l'analisi di ogni fatto temporale. È tuttavia necessaria una sola dimensione temporale del database e per supportare più dimensioni del cubo basate sul tempo è necessaria una sola tabella del database relazionale di tipo temporale.

Le misure (Measures) descrivono l’aspetto quantitativo (es: ogni vendita è misurata dal valore e della quantità). Le misure sono quindi valori aggregati ed analizzabili. L’ aggregazione di una misura è eseguita in una porzione di dimensione in base ad un dato algoritmo (somma, media, etc.).