venerdì 4 giugno 2010

Ricerca 13 - ERP, CRM, Data Mining: contestualizzazione nel quadro dei sistemi informativi delle aziende o istituzioni

L'acronimo ERP significa Enterprise Resource Planning (letteralmente "pianificazione delle risorse d'impresa").
Si tratta di un sistema di gestione, chiamato in informatica sistema informativo, che integra tutti i processi di business rilevanti di un'azienda (vendite, acquisti, gestione magazzino, contabilità etc.) Con l'aumento della popolarità dell'ERP e la riduzione dei costi per l'ICT (Information and Communication Technology), si sono sviluppate applicazioni che aiutano i business manager ad implementare questa metodologia nelle attività di business come: controllo di inventari, tracciamento degli ordini, servizi per i clienti, finanza e risorse umane.
La prima versione dell'ERP metteva in collegamento diretto le aree di gestione contabile con l'area di gestione logistica (magazzini ed approvvigionamento); successivamente si sono iniziate ad implementare le relazioni interne anche con le aree di vendita, distribuzione, produzione, manutenzione impianti, gestione dei progetti ecc.
Da evidenziare anche la crescita, sullo scenario nazionale, di ERP tutti italiani che garantiscono la gestione completa degli adempimenti contabili e fiscali rispetto alla complessa normativa italiana; questi ERP a differenza dei leader dello scenario internazionale si calano in maniera più precisa nel "modus operandi" dell'azienda italiana con conseguente minor sforzo di adattamento alle procedure delle aziende che li adottano.
A tutt'oggi i moderni sistemi di ERP coprono tutte le aree che possano essere automatizzate e/o monitorate all'interno di un'azienda, permettendo così agli utilizzatori di operare in un contesto uniforme ed integrato, indipendentemente dall'area applicativa.
I sistemi ERP hanno avuto tassi di crescita molto elevati alla fine degli anni ’90. I grandi produttori (SAP, Oracle, Infor con LN-Baan e LX-BPCS, Peoplesoft, JD Edwards, Baan, Query, Computer House) dominano il mercato delle multinazionali e grandi imprese nazionali.
Hanno minor penetrazione (20%) fra le PMI, dove è invece importante il ruolo dei produttori locali (con oltre 40.000 aziende clienti, Zucchetti è il primo Indipendent Software Vendor in Italia,).

CRM

Il concetto di Customer relationship management (termine inglese spesso abbreviato in CRM) o Gestione delle Relazioni coi Clienti è legato al concetto di fidelizzazione dei clienti.
Il CRM si spinge sostanzialmente secondo quattro direzioni differenti e separate:
L'acquisizione di nuovi clienti (o "clienti potenziali")
L'aumento delle relazioni con i clienti più importanti (o "clienti coltivabili")
La fidelizzazione più longeva possibile dei clienti che hanno maggiori rapporti con l'impresa (definiti "clienti primo piano")
La trasformazioni degli attuali clienti in procuratori, ossia consumatori che lodano l’azienda incoraggiando altre persone a rivolgersi alla stessa per i loro acquisti
L'errore più comune in cui ci si imbatte quando si parla di Customer Relationship Management è quello di equiparare tale concetto a quello di un software. Il CRM non è una semplice questione di marketing né di sistemi informatici, bensì si avvale in maniera sempre più massiccia, di strumenti informatici o comunque automatizzati, per implementare il management. Il CRM è un concetto strettamente legato alla strategia, alla comunicazione, all'integrazione tra i processi aziendali, alle persone ed alla cultura, che pone il cliente al centro dell'attenzione sia nel caso del business-to-business sia in quello del business-to-consumer.
Le componenti strutturali di una strategia di CRM sono:
- Analisi e gestione della relazione con i clienti: contatto con i clienti e analisi dei bisogni attraverso molteplicità di strumenti come mailing, lettere, telefonate, SMS, eccetera. Il contatto è fondamentale se si vuole mappare ogni singolo cliente per poi organizzare tutte le informazioni raccolte in un database strutturato. Queste informazioni sono preziose in quanto permettono di conoscere, e, se possibile, anticipare le esigenze del cliente.
- Lo sviluppo di contenuti e servizi personalizzati: i dati raccolti vengono gestiti per elaborazioni statistiche utili a segmentare i clienti in specifiche scale. Una volta organizzati, è possibile procedere con l'analisi dei dati per sviluppare una comunicazione e un'offerta commerciale e personalizzata.
- L'infrastruttura informatica: attivazione di strumenti informatici che aiutano in questo processo di gestione del cliente.

DATAMINING
E' il processo di estrazione di conoscenza da banche dati di grandi dimensioni tramite l'applicazione di algoritmi che individuano le associazioni "nascoste" tra le informazioni e le rendono visibili.
In altre parole, col nome data mining si intende l'applicazione di una o più tecniche che consentono l'esplorazione di grandi quantità di dati, con l'obiettivo di individuare le informazioni più significative e di renderle disponibili e direttamente utilizzabili nell'ambito del decision making.
L'estrazione di conoscenza (informazioni significative) avviene tramite individuazione delle associazioni, o "patterns", o sequenze ripetute, o regolarità, nascoste nei dati. In questo contesto un "pattern" indica una struttura, un modello, o, in generale, una rappresentazione sintetica dei dati.
Il termine data mining è utilizzato come sinonimo di knowledge discovery in databases (KDD), anche se sarebbe più preciso parlare di knowledge discovery quando ci si riferisce al processo di estrazione della conoscenza, e di data mining come di una particolare fase del suddetto processo (la fase di applicazione di uno specifico algoritmo per l'individuazione dei "patterns").
Gli algoritmi di data mining sono stati sviluppati per far fronte all'esigenza di sfruttare il patrimonio informativo contenuto nelle grandi raccolte di dati che abbiamo a disposizione.
Avere dati non è infatti più un problema (basta pensare alla ricchezza delle sorgenti di dati accessibili su Web o attraverso Data Warehouse aziendali), il problema è cercare di utilizzarli, estrarne le informazioni. Spesso i dati, sia che si riferiscano all'attività giornaliera dell'azienda (o dell'ente), sia che si riferiscano alla clientela (o all'utenza), sia che si riferiscano al mercato o alla concorrenza, si presentano in forma eterogenea, ridondante, non strutturata. Tutto ciò fa sì che solo una piccola parte venga analizzata.
D'altra parte la rapida evoluzione del mercato richiede rapidità di adattamento. In questo contesto riuscire a sfruttare la potenziale ricchezza di informazioni che abbiamo a disposizione costituisce un enorme vantaggio.
Per fare ciò è necessario disporre di strumenti potenti e flessibili. La grande quantità di dati e la loro natura eterogenea rende infatti inadeguati gli strumenti tradizionali. Questi si dividono in due tipi: strumenti di analisi statistica e strumenti tipici di interrogazione di banche dati (data retrieval). Per quanto riguarda i primi, le difficoltà nascono dal fatto che:
Difficilmente operano su grandi quantità di dati (richiedono operazioni di campionamento con conseguente perdita di informazioni)
Spesso richiedono valori di tipo quantitativo (mentre i prodotti venduti, le caratteristiche della clientela, ecc..., sono dati di tipo qualitativo)
Non gestiscono i valori mancanti
Richiedono personale tecnico sia per il loro utilizzo che per l'interpretazione dei risultati
Gli strumenti di data mining nascono dall'integrazione di vari campi di ricerca: statistica, "pattern recognition", machine learning, e sono stati sviluppati indipendentemente dai database, per operare su dati "grezzi". Recenti sviluppi vedono una sempre maggiore integrazione tra strumenti di data mining (visto come una query avanzata) e databases.



Ricerca 13 - Ruolo e vocazione dei diversi software incontrati: excel, access, power point, reportistica. Collocazione nel contesto aziendale

I fogli di calcolo automatizzati, il cui più diffuso applicativo è Excel, offrono un gran numero di funzionalità per il calcolo e la creazione di grafici, per la visualizzazione e la modifica di dati tabulari. Possono inoltre essere utilizzati efficacemente per memorizzare elenchi di informazioni, ad esempio elenchi di indirizzi o inventari. Tuttavia, man mano che i requisiti degli elenchi crescono in complessità, può diventare difficile gestire i dati in un foglio di calcolo. Un’applicazione di database relazionali è più adatta alla creazione e all’utilizzo di elenchi complessi e offre strumenti più potenti per l’immissione, l’organizzazione, la gestione e il recupero dei dati. Per database relazionali si intende un tipo di database in cui le informazioni sono memorizzate in tabelle che possono essere messe in relazione tra loro. Fare la scelta giusta non è facile se si desidera accedere e aggiornare le informazioni con il massimo delle prestazioni e della precisione.
In linea generale si ritiene opportuno decidere di utilizzare il database quando i dati sono di tipo relazionale, cioè è necessario che siano correlati tra loro.
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 dll’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.
Power Point è un software di Microsoft. 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.
È largamente usato perchè la proiezione di diapositive digitali è una forma molto comune di persuasione tecnologica. L'uso di questo strumento è molto diffuso anche per la produzioni di animazioni multimediali umoristiche destinate alla circolazione via e-mail. Sin da Office 2003, Microsoft ha revisionato il nome del programma per sottolinearne l'appartenenza alla suite Office: Microsoft Office PowerPoint invece di Microsoft PowerPoint.

COLLOCAZIONE NEL CONTESTO AZIENDALE
Gli applicativi fino ad ora incontrati sono tutti suscettibili di trovare applicazione all’interno di una azienda di qualsiasi dimensione. Ognuno di loro svolge una funzione differente e pertanto peculiare in relazione ai fini che si intendono perseguire.
Ad esempio, nel caso di una azienda che si occupa di noleggio auto, l’utilizzo di database relazionali è indispensabile per essere in grado di gestire informazioni complesse e in relazione tra loro (ad es. tipologia di auto, periodo di utilizzo, km percorsi, nominativo noleggiante, ecc.). E’ contemporaneamente necessario che si proceda alla estrazione delle informazioni attraverso sistemi di reportistica che possono essere semplici, quali tabelle e grafici o complessi, (cruscotti e meter).
L’estrazione delle informazioni a sua volta dovrà essere presentata all’interno o all’esterno dell’azienda, e per fare ciò uno strumento notoriamente diffuso e di facile gestione è costituito da Power Point.
Anche Excel può rappresentare un modo di sintetizzare dati da presentare in tabelle per l’analisi e l’approfondimento.

Ricerca 12 - Differenza tra output del report e query di join per l'estrazione dei dati dal DBMS

L’output del report può essere effettuata utilizzando vari linguaggi.
I più comuni sono:

L'output HTML viene infatti rigenerato a ogni esecuzione del report. Un'estensione per il rendering incorporata determina il tipo di output HTML, incluso il posizionamento e lo stile degli elementi del report. L'estensione per il rendering HTML incorporata non è personalizzabile. Non è pertanto possibile modificare la codifica HTML da essa prodotta, né sostituire elementi di formattazione esistenti con una diversa implementazione.
Per ottenere l'output di un report in formato HTML, il controllo crea una tabella in HTML nella quale verranno inseriti gli elementi di ciascun set di elementi del report. Gli elementi vengono posizionati nella tabella per mantenere il layout del report. Se il set di elementi del report contiene un solo elemento, il rendering viene eseguito senza generare la tabella. Tutte le posizioni e le dimensioni degli elementi sono espresse in millimetri (mm).

L'estensione per il rendering PDF converte i report in file che è possibile aprire in Adobe Acrobat e altri visualizzatori PDF di terze parti compatibili con PDF 1.3. Nonostante la versione PDF 1.3 sia compatibile con Adobe Acrobat 4, Reporting Services supporta Adobe Acrobat 6 e versioni successive. Non è necessaria l'applicazione Adobe per convertire i report mediante l'estensione per il rendering. I visualizzatori PDF, ad esempio Adobe Acrobat, sono tuttavia necessari per visualizzare e stampare i report in formato PDF.
L'estensione per il rendering PDF è basata sull'estensione per il rendering delle immagini, rispetto alla quale, tuttavia, presenta alcune differenze.
L'estensione per il rendering PDF supporta i caratteri ANSI e consente di convertire i caratteri Unicode dalle lingue giapponese, coreano, cinese tradizionale, cinese semplificato, cirillico, ebraico e arabo.

QUERY DI JOIN

Ti è mai capitato di voler unire due o più tabelle e non ottenere il risultato sperato? E’ possibile spiegare le join usando gli insiemi.

Prendi due tabelle A e B e immagina che siano 2 insiemi


Intersecando i due insiemi otteniamo una zona condivisa (verde) e due aree separate (gialla e azzurra), i diversi tipi di join si occupano di selezionare queste aree estrapolando diversi gruppi di risultati.

INNER JOIN
In base all'esistenza o meno della condizione (WHERE), la inner join restituisce solo i record verificati esistenti in entrambe le tabelle, tutte quelle righe che non hanno corrispondenza verranno escluse.
Per fare un esempio pensiamo una query di questo tipo:
SELECT * FROM tabellaA INNER JOIN tabellaB ON tabellaA.id_dipartimento = tabellaB.id
Il risultato è:


Il dipartimento di scienze non ha iscritti, quindi non è stato considerato. Nel caso degli insiemi viene preso in considerazione solo la porzione che si sovrappone.

OUTER JOIN
La outer join restituisce tutti i record che non corrispondono alle chiavi di ricerca. E' il contrario della inner join.
Questo è solo un concetto, perchè verrebbero estratti solo risultati non corrispondenti visualizzati con una serie di NULL. In realtà si usa insieme a left o right diventando left outer join o right outer join.
Nel caso degli insiemi viene selezionato tutto quello che sta al di fuori dall'intersecazione.


LEFT OUTER JOIN (RIGHT OUTER JOIN)
Questo tipo di selezione si ottiene mettendo insieme il concetto di inner join e outer join. Il risultato che si ottiene è la selezione di tutti i record della tabella A che corrispondono con la tabella B, più i record della tabella A che non corrispondono. I record che non corrispondono vengono valorizzati a NULL
Esiste anche la right outer join ma normalmente non si usa e per ottenere lo stesso risultato si cambia l'ordine delle tabelle. A volte è possibile omettere il termine OUTER, quindi rimane semplicemente LEFT o OUTER JOIN
Vediamo l'esempio
SELECT * FROM tabellaA LEFT JOIN TabellaB ON tabellaA.id_dipartimenti = tabellaB.id
Il risultato è:

In questo caso anche la riga "scienze" è stata inserita,ma dal momento che non ci sono iscritti viene inserito NULL nel campi non corrispondenti.
Il disegno con gli insiemi appare così:

CONCLUSIONI
Se ne deduce che attraverso il report è possibile estrapolare da una serie di dati quelli che corrispondono alle condizioni indicate. L’output del report è la forma grafica del report pertanto attraverso il linguaggio scelto (HTML, PDF o altro) è possibile ricavare una stringa di testo che contiene tutte le indicazioni necessarie per individuare il risultato della query, cioè ciò che viene visualizzato nel report.

Ricerca 10 - Il report come espressione di sintesi dei dati: analogie con i concetti di tabelle di frequenza e tabelle di contingenza.

Tabella di frequenza
E' la forma più comune di descrizione dei dati per un numero limitato di valori e categorie. In essa viene riportata la distribuzione delle risposte per ogni frequenza. Fornisce una raffigurazione completa della distribuzione dei dati per ogni variabile. La tabella è di solito strutturata nel seguente modo : la prima colonna riporta i nomi delle diverse categorie, la seconda i codici di queste, la terza le frequenze. Ogni frequenza indica il numero di rispondenti che hanno scelto quella particolare categoria di risposta.
Ad esempio viene condotta un’analisi sui giovani tra i 13 ed i 17 anni che frequentano una discoteca in un certo giorno. La tabella di frequenza sarà come segue:



La frequenza è il numero di volte che quel dato compare. La frequenza relativa è data dal rapporto tra il dato e la somma di tutte le frequenze.

Le tabelle di contingenza sono un particolare tipo di tabelle a doppia entrata (cioè tabelle con etichette di riga e di colonna), utilizzate in statistica per rappresentare e analizzare le relazioni tra due o più variabili di tipo categoriale. In esse si riportano le frequenze congiunte delle variabili.
Il caso più semplice è quello in cui ciascuna delle due variabili assume solo due valori possibili:

Il report ha il compito di rappresentare graficamente i dati. Le rappresentazioni possono essere effettuate attraverso tabelle, grafici, cruscotti, chart.

giovedì 3 giugno 2010

Ricerca 5 - Esempi di query (visualizzazione struttura e SQL) su DBMS di esempio

CREAZIONE DI UNA QUERY DI ESEMPIO DAL DATABASE NORTHWIND E ISCRITTI AI CORSI UNIVERSITARI

Per prima cosa bisogna aprire il data base e posizionarsi sull'oggetto "Query", dopodichè si seleziona "crea una query mediante creazione guidata"


A questo punto è necessario scegliere i campi da includere nella query. La scelta può essere effettuata sia da una sola tabella che da più tabelle che di volta in volta vanno selezionate. In questo caso è stata scelta la tabella clienti e la tabella prodotti.





Una volta scelti i campi da inserire nella query deve essere effettuato il salvataggio scegliendo un nome significativo, in grado di riassumere i campi contenuti al fine di poterla riutilizzare per un'altra interrogazione.


E' possibile visualizzare sia il risultato della query sulla base dei campi impostati che inserire criteri di selezione per filtrare ulteriormente i dati attraverso la maschera di "struttura query".

Utilizzando il menu "visualizza" è possibile visualizzare la SQL, cioè il linguaggio informatico sottostante ai comandi fino ad ora impostati.

(SQL è il linguaggio di interrogazione di DB che opera mediante l'utilizzo di costrutti di programmazione denominati query)



Lavorando sul database di esempio degli iscritti ai corsi universitari si ottiene la seguente struttura di query:


la cui sql sarà la seguente:


venerdì 7 maggio 2010

Ricerca 12 - concetto di aggregazione e sintesi effettuata dai report.

I dati contenuti nell’ipercubo informativo sottostante al report possono essere aggregati o disaggregati in relazione alle esigenze formative.
La disaggregazione dei dati coincide con l’esigenza di approfondire l’analisi. La tecnica utilizzata è definita “drill-down”. Una volta visualizzato il dato complessivo relativo ad una dimensione gerarchizzata di analisi attraverso questa tecnica è possibile esplorare tutta la gerachia. Un 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 di dati giornalieri.
L’aggregazione dei dati consente una visione congiunta di dati e informazioni attraverso le funzioni aggregate, che permette di supportare le funzionalità del provider di dati. Nei database, le funzioni di aggregazione più diffuse sono: la somma dei valori; il calcolo della media aritmetica; la ricerca del valore minimo o max.
La tecnica è definita “slice & dice" (termine che si riferisce all’operazione di divisione di una torta). Questa tecnica consente di restringere l’analisi solo ad alcune delle occorrenze delle dimensioni e solo ad alcune delle dimensioni proposte. E’ possibile ad. Es., esplorare le vendite annuali solo in alcune regioni e di queste regioni solo di alcune città. I dati visualizzati si riferiranno unicamente alle occorrenze selezionate

Ricerca 11 - Costruzione di un Datatime report da database Northwind

- Accedere al programma Datatime cliccando sull’icona.
- Selezionare New Project oppure su Open Project se il file è già stato creato.Compare la connessione al DBMS prescelto.
- Si clicca su DB Explorer – quick report e poi su (re)Load Structure. Si sceglie una tabella tra quelle presenti nel DB (in questo caso è stata scelta la tabella “Ordini” – vedi immagine 1) e si seleziona Quick report.




- Si apre la finestra Report Grid Design (slice and dice) dalla quale scegliere le misure e le dimensioni che si intendono riassumere nel report.
Per fare un report con layout cross sono state scelte due dimensioni, una verticale ed una orizzontale, unitamente ad una misura da indicare nel riquadro “cross”, per la quale è stata scelta la funzione Totals (immagine 2)




- Si clicca su Generate e il report tabellare è pronto.
Le dimensioni sono visibili nella intestazione di colonna e di riga mentre nelle celle è indicato i dato che si trova all’incrocio dei valori delle due dimensioni. Alla fine di ciascuna riga e colonna è indicata la somma corrispondente alle due misure. L’ultima cella in basso a sx rappresenta il totale complessivo dei dati contenuti in entrambe le misure (immagine 3).



- Trascinando l’immagine del grafico a torta nella pagina creata si genera il grafico, la cui configurazione grafica può essere scelta. Ovviamente i valori coincidono con le dimensioni prescelte (immagine 4).





- Allo stesso modo è possibile generare il cruscotto (immagine 5).




Se si vuole realizzare un report con layout verticale è sufficiente selezionare la dimensione (in questo caso Region) e la misura (supllier ID) prescelte nell'apposito riquadro verticale (immagine 6).




- Cliccare su Generate ed il software provvederà a creare il report che sintetizza i dati richiesti.

- Trascinando l'icona del grafico e del cruscotto nella pagina creata si genera l'immagine grafica corrispondente (immagine 7).