martedì 9 dicembre 2008

...Sintesi di un Percorso...



L'iter logico e conoscitivo intrapreso nell'ambito del corso tenuto dal Prof. Gastaldi, ha conosciuto dapprima tappe generiche, dai contorni indistinti, che lasciavano ampio spazio al libero pensiero, per poi inoltrarsi negli angusti ma affascinanti cunicoli dei tecnicismi informatico-statistici. Abbiamo iniziato con l'interrogarci su quale fosse il ruolo dei moderni Software rispetto all'intelligenza umana. Nel sostanziale potenziamento delle capacità comunicative è stato individuato il maggiore punto di forza dei software. Siamo così passati ad una analisi delle più diffuse applicazioni al servizio della comunicazione, procedendo con uno studio delle moderne forme di socialità in rete che godono del definitivo abbattimento delle barriere spaziali e temporali. La nostra ricerca sulla web realtà è così proseguita attraverso una cernita degli strumenti per la creazione delle pagine web e dei requisiti di accessibilità che queste ultime devono possedere affinchè siano fruibili da tutti. A questo punto del percorso è sorta una spontanea riflessione riguardante i vantaggi della informazione on line rispetto a quella off line, che ha trovato tutti concordi nel rilevare una esponenziale crescita rispetto al passato della libera informazione, in una arena comunicativa dai risvolti ecumenici. In seguito la nostra attenzione si è spostata sul percorso che conduce alla conoscenza, partendo dagli elementi che ci circondano, dati grezzi in attesa di essere scovati e trasformati in informazioni. Gli strumenti consacrati alla raccolta e alla gestione dei dati sono i DataBase, dei quali abbiamo studiato in maniera approfondita tipologie e strutture. Particolare attenzione è stata dedicata ad uno dei linguaggi più diffusi di interrogazione dei DB, SQL, del quale abbiamo acquisito il formulario base. Sono seguiti approfondimenti sui DBMS, avanzatissimi software per la gestione delle basi di dati e sui report, documenti aziendali che costituiscono fondamentali leve strategiche. Un focus dettagliato è stato invece dedicato agli strumenti utilizzati allo scopo di veicolare in maniera veloce ed efficiente le informazioni in ambito aziendale, i sistemi informativi. Nell'ambito del discorso sulla Business Intelligence si è poi passati allo studio dei software di query reporting che servono per interrogare in maniera diretta e mirata i database, attraverso l’utilizzo del già citato linguaggio SQL, per poter poi ottenere le informazioni desiderate che avranno rappresentazione grafico-visiva mediante le svariate tipologie di report. Il corso ha avuto anche un notevole risvolto pratico, consistente nell'utilizzo in aula di Microsoft Access, che ci ha permesso di applicare le nozioni di SQL, e di DataTime, un sistema di reporistica open source che ci ha consentito di creare semplici prototipi di report dei quali abbiamo curato in particolar modo l'aspetto visivo grazie agli strumenti di charting.

lunedì 8 dicembre 2008

Creazione di un Data Source con DataTime, Creazione di join arbitrarie mediante lo strumento visuale di DataTime, Report da tabelle multiple, Datagrid

Data Time Reporting Solution nel fitto spettro delle funzionalità offerte al fruitore, contempla anche la creazione di report tramite la procedura "New Data Source". E' possibile realizzare un nuovo Data Source attraverso una join arbitraria tra due o più tabelle che genereranno una unica tabella che sarà poi alla base del nostro report. Attraverso una operazione di Slice & Dice sulla tabella derivante dalla join arbitraria, restringeremo l'analisi alle sole dimensioni che ci interessano, realizzando poi un Data Grid che ci permetterà di associare sorgenti di dati e di agire sulle stesse. Per creare un nuovo Data Source procedermo cliccando sulla icona "Select Project" per poi accedere alla schermata "New Connection" che ci presenterà una lista di Programmi e relativi data base ai quali poter accedere. Nelle varie esercitazioni svolte in aula abbiamo prediletto Access, con il database "Northwind" facilemente scaricabile dal sito della Microsoft (http://www.microsoft.com/downloads/details.aspx?familyid=C6661372-8DBE-422B-8676-C632D66C529C&displaylang=en ) .
Dopo aver cliccato su "New Data Source", apparirà il Data Source Desiner nel quale verranno visualizzate le tabelle presenti nel data base precedentemente scelto. Trascinando sulla destra alcune delle tabelle sarà quindi possibile visionare i caratteri contenuti nelle stesse ed individuare le chiavi primarie e secondarie. La funzione Map Dbms Relationspip On Objects On Desiner Panel ci paleserà in maniera veloce e diretta le relazioni esistenti tra i diversi attributi delle tabelle selezionate. I più esperti poi potranno scegliere di lavorare direttamente sul linguaggio SQL, scegliendo la sintassi Microsoft o quella Oracle. Una volta realizzato il nuovo Data Source, tornando alla interfaccia principale di DataTime potremo accedere alla finestra ReportGrid Design in cui sarà possibile scegliere le misure e le dimensioni del report: Vertical, Cross o Horizontal. Cliccando infine su Generate avremo accesso al Report Composer, attraverso il quale ci sarà possibile arricchire il nostro report di cruscotti, semplici immagini o testo. E' a questo punto che metteremo in pratica le diverse procedure di charting, curando il visual che anche in ambito statistico ed informatico ha acquistato una crescente importanza e valenza strategica.

lunedì 1 dicembre 2008

Reporting, Elementi stitlistici, Charting con DataTime


Il sistema di rappresentazione grafica di Datatime è allo stato attuale il più avanzato e potente. Il charting di Datatime dispone di un motore di rendering3D con che consentire la massima flessibilità del posizionamento dei grafici 3D. A loro volta i grafici godono della massima flessibilità e modellabità, offrendo la possibilità di essere sezionati e colorati a proprio piacimento. .I chart sono direttamente linkati ai dati. Datatime consente inoltre di creare cruscotti personalizzati, i cosiddetti "Dashboards", che superano i canonici strumenti della cruscottistica nel momento in cui permettono all'utente di creare personalmente i propri gauges. I cruscotti sono linkabili direttamente ai dati ai quali si riferiscono. La reportistica e l'impaginazione del Layout grafico sono montati su di un avanzato motore di ETL, a sua volta basato su due livelli concettuali: uno in cui qualunque procedura di estrazione di tipo SQL può essere utilizzata, e un secondo livello, sovrapposto, ove l'utente può specificare via codice qualunque trasformazione.

Introduzione a DataTime Reporting System: un semplice report

DataTime Reporting Solution è la soluzione di reportistica più moderna e potente attualmente disponibile sul mercato. La piattaforma di riferimento per l'applicativo è il
Framework NET, quindi, ad esempio, tutti i sistemi operativi Windows. Il punto di indiscutibile forza di DataTime è la sua connettività universale verso i Database, basata sul protocollo OleDB. DataTime può connettersi a qualunque DBMS per il quale sia disponibile il corrispondente provider OleDB. Parliamo quindi di Oracle, SQL Server, Access, DB2, Sybase, MySQL, etc. o anche fogli Excel e semplici file di testo delimitato. In tal senso i DBMS possono risiedere su qualunque tipo di macchina, con qualunque sistema operativo e in qualunque parte del mondo. Datatime è il sistema di reportistica più flessibile attualmente disponibile sul mercato, in quanto consente di creare qualunque tipo di Layout (verticale, orizzontale, cross e misto) con possibilità pressoché illimitate di Slice and Dice del cubo multidimensionale dei dati. Coerentemente con la crescente attenzione alla grafica e all'immagine coordinata, DataTime crea report ad alto impatto visivo, dove tutti gli elementi grafici e stilistici possono essere controllati dall'utente. Inoltre i report sono pubblicabili su Web mediante 2 possibili architetture:



A. Updatable: i report sono destinati alla sola consultazione. Tale architettura non pone vincoli di piattaforma per il server web.



B. Interactive: caso in cui si vuole consentire all'utente di interagire con i report: rigenerazione
on demand, operazioni di drill, fino alla possibilità di redesign remoto del report. Tale architettura è basata su ASP.NET e Web Services. I report web di DataTime passano le specifiche più strette del W3C, e sono validati con successo come html .4.01 strict. garantendo compatibilità ottimale con tutti i browser. Tutti i report sono esportabili verso Excel e renderizzabili in file PDF o pagine HTML.




Vediamo ora quali sono i primi passaggi per la creazione di un semplice report con Datatime. Una demo del programma è scaricabile gratuitamente all'indirizzo: http://www.datatime.eu/download.aspx . Dopo averlo scaricato e aperto, cliccheremo su "New
Project", salveremo il nuovo progetto e poi cliccheremo su "Open Project". A questo punto sarà necessario selezionare una nuova connessione ad un database preesistente, nell'ambito di una lista che contempla Microsoft SQL Server, Oracle, DB" IBM, AS/400, MySQL, SYBASE, Microsoft Access, Excel ed altri. Per esercitarsi è possibile ad esempio scaricare Northwind, un database sample messo a disposizione da Microsoft e utilizzabile con Access. Una volta creata e salvata la connessione sarà possibile realizzare il report, curando a proprio piacimento la grafica, con semplici operazioni di charting.

lunedì 24 novembre 2008

I principali tool software di Query reporting: B.O., Microstrategy, Cognos, DataTime

Vediamo ora nel dettaglio alcuni dei più diffusi software di query reporting.
Business Object: Si tratta di una azienda che ha la sua sede centrale in Francia e che commercializza software di business intelligence per l'analisi dei dati e la creazione di reportistica evoluta. La BO offre uno strumento per accrescere l'efficienza e la faciltà di elaborazione delle piattaforme di conoscenza che sono alla base delle decisioni strategiche aziendali. Nella terminologia BO, i metadati sono denominati "universi" e assieme alla reportistica sono archiviati in database esterni.
Microstrategy: offre soluzioni di business intelligence avanzatissime, creando nuovi standard per il reporting aziendale e scorecard. Questo software di query reporting nelle sue svariate versioni, dà accesso a tutti i dati dell’ azienda, e alle warehouse dei dati. Offre altresì potenti strumenti di data mining.
Cognos: questo prodotto IBM fornisce tutte le declinazioni di Business Intelligence in un'unica soluzione: reporting, analisi, scorecarding, dashboards, gestione degli eventi aziendali e integrazione dei dati. Il valore aggiunto di questo Software risiede nella offerta di un ambiente di lavoro semplificato e conforme ai più recenti ed avanzati standard di business intelligence.
Data Time: è il software open source diretto competitors dei software sopraelencati. DataTime Reporting Solution è la soluzione di reportistica più moderna e potente attualmente disponibile sul mercato. Gode di una notevole flessibilità, consentendo di creare Report con qualsiasi tipo di Layout, con possibilità pressoché illimitate di Slice and Dice del cubo multidimensionale dei dati.


Scopo dei software di Query Reporting

La sconfinata mole di dati a disposizione delle aziende non produrrebbe informazioni strategicamente rilevanti se non fosse adeguatamente gestita e manipolata. Per Business Intelligence si intende la ricerca intelligente e mirata di dati, la produzione e l’analisi strategica degli stessi con finalità di supporto alle attività di controllo e di decisione aziendali. Le organizzazioni difatti raccolgono ed elaborano le informazioni per avere stime sempre aggiornate sul contesto aziendale proprio e dello scenario competitivo di riferimento. I software di query reporting servono per l’appunto ad interrogare in maniera diretta e mirata i vastissimi database prodotti, attraverso l’utilizzo del già citato linguaggio SQL, per poter poi ottenere le informazioni desiderate che avranno rappresentazione grafico-visiva mediante le svariate tipologie di report. Il documento finale potrà avere le più disparate funzioni sia all’interno dell’azienda, che all’esterno della stessa, come ampia finestra sulle attività interne. I software di query reporting sono disponibili sia in modalità open source che a pagamento e annoverano differenti livelli di complessità di utilizzo, permettendone l’impiego agli esperti e ai principianti.

giovedì 20 novembre 2008

Funzione dell'ETL e i principali tool software di ETL


Extract, Transform, Load (ETL) si riferisce al processo di estrazione, trasformazione e caricamento dei dati in un sistema di sintesi (DW, DM, etc). 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 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). A livello tecnico l'ETL si trova all’inizio del flusso di costruzione del DW in quanto è adipito in primis all'immissione dei dati. Il suo utilizzo permette di svolgere un lavoro molto strutturato e di assicurare una qualità del dato estratto. Si tratta di strumenti specializzati e solitamente abbastanza costosi (IBM - Datastage, Oracle - ODI, ...), in alcuni casi sono però forniti con il tool di analisi e reporting (Business Object - Data Integrator), oppure fanno parte del DBMS (Microsoft SQL Server - DTS). Oggi esiste anche una proposta open source, si tratta di Pentaho Data Integration.

Architetture per i sistemi informativi aziendali: DBMS transazionali, Data mart, DW.


Grazie all’informatica le informazioni sono oggi più facilmente producibili, archiviabili, analizzabili e , in generale, gestibili rispetto al passato. Il valore di questa risorsa è andato aumentando man mano che le dinamiche dello scenario competitivo hanno reso lo scambio e la condivisione delle informazioni un elemento alla base di molte politiche di gestione. In maniera estremamente semplicistica possiamo affermare che i dati costituiscono la materia prima con la quale è strutturata l’informazione dalla quale verranno estrapolate le grandezze ritenute rappresentative dall’azienda: valore degli ordini di uno specifico cliente, quantità di materia prima transitata da un magazzino ad un altro, risultati economici delle attività di vendita, livello di servizio al cliente, etc. Dati, informazioni e conoscenza di per sè non sono fonte di vantaggio, ma lo diventano solo quando vengano opportunamente utilizzati e trasmessi laddove se ne abbia bisogno. Lo strumento utilizzato allo scopo di veicolare in maniera veloce ed efficiente le informazioni è costituito dai sistemi informativi aziendali. Il Sistema Informativo Aziendale è identificabile come quel complesso di strumenti, risorse e attività che rileva in modo sistematico, elabora, scambia e archivia dati con lo scopo di produrre e distribuire le informazioni nel momento e nel luogo adatto e alle persone che in azienda ne hanno bisogno. In altre parole, esso rappresenta il sistema nervoso dell'azienda, attraverso il quale vengono veicolati i segnali percepiti sia dall'interno dell'azienda stessa sia dal contesto ambientale esterno.
Il sistema informativo aziendale è costituito non solo da componenti software e hardware, ma anche da altri elementi quali, ad esempio, procedure, strumenti, persone e competenze tra le quali avvengono interazioni che portano alla produzione ed elaborazione delle informazioni. Indipendentemente dalla loro composizione specifica, i sistemi informativi aziendali svolgono, secondo combinazioni differenti, tre funzioni principali:

· Acquisizione di dati e comunicazione

· Registrazione (storage) e ricerca dei dati

· Trattamento e reporting


Database e Data Warehouse rappresentano gli strumenti principali tramite i quali realizzare l'archiviazione e il recupero dei dati, sui quali poggia la quasi totalità delle altre applicazioni.
Un sistema di gestione di basi di dati (DataBase Management System - DBMS) è un sistema software in grado di gestire collezioni di dati molto grandi e condivise, in modo che applicazioni e utenti diversi possano accedervi anche simultaneamente, secondo le opportune modalità.
Un DBMS deve garantire affidabilità, intesa come la capacità del sistema di conservare intatta la base di dati anche in caso di malfunzionamenti hardware e software, e privatezza, intesa come la capacità di vincolare le azioni sui dati in funzione dei permessi associati alle persone che le eseguono.
I DBMS sono sistemi transazionali, vale a dire destinati a conservare i dati prodotti dalle transazioni aziendali Per questa ragione, essi sono progettati con particolare attenzione alle modalità di aggiornamento dei dati, poiché è fondamentale mantenere allineata l'informazione conservata con la situazione reale.
La crescita dell'importanza dell'analisi dei dati ha portato a una separazione architetturale dell'ambiente transazionale da quello dedicato all'analisi rappresentato dai Data Warehouse (DW), cioè “depositi” di dati provenienti da differenti sorgenti, destinati a conservare grandi quantità di dati con un livello di profondità temporale molto elevato (nei DW si possono immagazzinare anni di storia dell'azienda mentre, tipicamente, nei DBMS transazionali sono conservati solo i dati più recenti, necessari all'operatività corrente).
La tecnologia di memorizzazione nei DW è orientata alla consultazione e non all'aggiornamento delle informazioni. Questo vuol dire che, mentre nei DBMS è fondamentale che l'informazione sia aggiornata frequentemente e perfettamente allineata con la realtà, nei DW si possono verificare dei disallineamenti temporanei, dovuti alla modalità di aggiornamento dei dati che, tipicamente, viene svolta in modalità batch (ad esempio, di notte quando le attività aziendali sono ferme).
A loro volta, i DW possono essere suddivisi nuovamente in sottoinsiemi di dati specificamente selezionati per fini di analisi, i quali prendono il nome di Data Mart (DM). I DM sono, quindi, delle collezioni di dati con una profondità temporale elevata e relativi ad uno specifico obiettivo di analisi. Poiché contengono meno dati rispetto ad un DW, le operazioni di analisi sui DM sono in genere più veloci.

mercoledì 12 novembre 2008

Approfondimenti su SQL: clausole where, having, group by

  • La clausola GROUP BY: Una clausola GROUP BY , come suggerito dal nome, raggruppa un set selezionato di righe in un set di righe di riepilogo in base ai valori di una o più colonne o espressioni. Per ogni gruppo viene restituita una sola riga. La sintassi generale, molto semplice è la seguente: GROUP BY
  • La clausola Having: La proposizione HAVING consente di specificare i record visualizzati dopo che questi sono stati raggruppati dalla proposizione GROUP BY. Vediamo la sintassi di questa clausola: SELECT . . . FROM . . .
    GROUP BY . . .
    HAVING (condizione di ricerca che deve essere soddisfatta dal gruppo)
  • La clausola WHERE: Specifica una condizione di ricerca per la restrizione delle righe restituite. Where limita le selezioni ed include solo le righe che corrispondono ai criteri specificati. Il suo utilizzo generale è: WHERE campo predicato valori

Particolarità riscontrate lavorando con l'SQL in Access: differenze rispetto agli altri DBMS


Un Data base Management System (DBMS) è un sistema software per la creazione e la gestione di basi dati. Il DBMS, pertanto, è un insieme di programmi rivolti alla gestione di dati memorizzati in archivi. A differenza di altri DBMS, in Access un unico file comprende tutti gli strumenti per lo sviluppo delle applicazioni: tabelle, query, maschere e report.

1. Le tabelle sono strutture bidimensionali identificate da campi e da record. Nelle tabelle i dati vengono organizzati in colonne e righe.

2. Il termine query invece si riferisce all'interrogazione del database finalizzata all'ottenimento dei dati. Nella maggior parte dei casi le query vengono formulate in linguaggio SQL (Structured Query Language). Le Query SQL sono quindi stringhe di comando utilizzate per ottenere dati da un Database.

3. Le Maschere invece costituiscono l'interfaccia primaria tra l'utente ed il DataBase di Access. Esse permettono la visualizzazione, la modifica, l'inserimento e l'eventuale eliminazione dei dati. Di seguito un esempio di maschera:

4. Infine Access permette la creazione di report, che costituiscono uno strumento quanto mai efficace per presentare i dati in un formato adatto ad essere stampato. In un report le informazioni possano essere organizzate in modo schematico, chiaro e diretto.

Inoltre in Access è possibile creare 5 tipi di query:

Query a campi incrociati: permette di raggruppare dati riepilogativi estratti da una o più tabelle.

Query di eliminazione: elimina record da una o più tabelle secondo una predeterminata condizione.

Query di aggiornamento: utilizzate per modificare i dati in una o più tabelle esistentiQuery di accodamento: aggiunge ai record di una tabella i record provenienti da una seconda tabella.

Query di creazione tabelle: utilizzate per esportare una tabella in un altro Data Base.

Attraverso la maschera di creazione query presente in access è possibile selezionare una di queste tipologie di query e procedere in maniera semplice e diretta alla interrogazione della base di dati.

ANSI SQL


L'acronimo ANSI SQL sta per Structured Query Language dell'American National Standards Institute e si riferisce ad uno standard creato per il famoso linguaggio di interrogazione SQL. Oltre allo standard ANSI esiste quello ISO (International Organization for Standardization). L'American National Standards Institute è una organizzazione privata no-profit statunitense che si occupa della creazione e dello sviluppo di standard per prodotti, servizi e sistemi. Si occupa altresì di coordinare gli standard realizzati con quelli internazionali, al fine di creare un linguaggio informatico e tecnologico proteso alla universalità. SQL nasce a metà degli anni settanta nei laboratori dell'IBM e viene adottato dall'ANSI come standard nel 1986, seguita l'anno successivo dall'ISO. La prima versione standard è denominata SQL/86. Successivamente furono messe a punto ulteriori versioni: SQL/89, SQL/92 e SQL/2003. Questo processo di standardizzazione aveva come fine ultimo l'intento di creare un linguaggio universale che funzionasse su tutti i DBMS relazionali, obiettivo quanto mai ambizioso che non fu mai raggiunto completamente. Difatti le versioni che furono immesse nel mercato si attenevano solo in minima parte allo standard ANSI ed ognuna di esse presentava importanti differenze.

lunedì 27 ottobre 2008

Sistemi informativi aziendali: I Datawarehouse. Che cosa sono e cosa li differenzia dai sistemi OLTP


Come suggerisce in termine anglosassone, un data warehouse è letteralmente un magazzino di dati, ovvero un archivio informatico che contiene una determinata mole di dati. I DW sono progettati per gestire le informazioni e predisporle ad analisi e relazioni. Il data warehouse, quindi, descrive il processo di acquisizione, trasformazione e distribuzione di informazioni presenti all'interno o all'esterno delle aziende come supporto ai decision maker. Un DW comprende anche gli strumenti finalizzati alla estrazione, alla modifica e all’update dei dati, nonché quelli atti al recupero dei metadati e gli strumenti di business intelligence. Secondo la celebre definizione del pioniere di questa tipologia di immagazzinamento delle informazioni, William H. Inmon, un DW è una raccolta di dati integrata, orientata al soggetto, variabile nel tempo e non volatile, di supporto ai processi decisionali. L'integrazione dei dati costituisce la principale caratteristica distintiva del DW rispetto ad altri sistemi di supporto alle decisioni. Il termine integrazione si riferisce al fatto che in un dw convergono dati provenienti da diversi sistemi transazionali e da fonti esterne. Questa convergenza avviene mediante l'utilizzo di metodi di codifica uniformi, oppure attraverso il perseguimento di una omogeneità semantica di tutte le variabili, o ancora mediante l'utilizzo delle stesse unità di misura. Il DW è orientato a temi aziendali specifici. I dati vengono archiviati in modo da essere facilmente letti o elaborati dagli utenti. È facile comprendere come il polo dell’attenzione si sposti dalla eliminazione della ridondanza alla produzione efficace e veloce di informazioni strategicamente utili. I dati archiviati all'interno di un DW riguardano lassi temporali nettamente superiori rispetto a quelli dei dati archiviati in un sistema operativo. Difatti i dw contengono informazioni relative ad aree di interesse contingenti, con tutto il background di riferimento. Ciò comporta che i dati contenuti in un DW siano aggiornati fino ad una certa data che, nella maggior parte dei casi, è antecedente a quella in cui l'utente interroga il sistema. Ciò differisce da quanto si verifica in un sistema transazionale, nel quale i dati corrispondono sempre ad una situazione aggiornata, solitamente incapace di fornire un quadro storico del fenomeno analizzato. I dati contenuti nei dw non sono volatili, nella misura in cui non possono essere modificati dagli utenti, ma solo letti. Il data warehouse è un sistema OLAP (che sta per On-Line Analytical Processing, tecniche software per l'analisi interattiva e veloce di grandi quantità di dati) che differisce dai sistemi OLTP (On Line Transaction Processing), sebbene i dati provengano da questi ultimi. I sistemi OLAP sono sistemi orientati al soggetto, sono integrati, storici e permanenti. Non comprendono dati analitici e statici come i sistemi OLTP, inoltre i dati OLAP non sono adatti ad uso corrente, ma vengono usati per analisi.

domenica 26 ottobre 2008

CMS Content management system


La gestione delle informazioni e della conoscenza è un problema vecchio quanto il mondo. La tecnologia ne ha mutato le prassi, ma non le finalità. Fiumi di dati sono stati archiviati in affollate e polverose biblioteche, fino a giungere a precisi ed avanzati database. Oltre alla archiviazione della conoscenza però, ci si è sempre posti l’obiettivo della sua gestione e divulgazione, realizzando strumenti che fungessero da supporto a tale scopo. Oggi queste dinamiche non sono più appannaggio di pochi, ma ci vedono tutti indiscutibili protagonisti. Ognuno può generare informazioni e conoscenza, esponendole nello sconfinato cyberspazio, come fossero preziose merci. La tecnologia ci ha pertanto fornito strumenti di immediata comprensione che ci aiutassero nella gestione di questo mare magnum di contenuti. Un Content management system (CMS), è un software che si installa su un server web per la gestione automatizzata di siti web, attraverso un sistema di protezione che si basa sulla immissione di un proprio username e di una pw. Alcuni cms nascono con precise finalità, che vanno dalla gestione di un blog, a quella di una enciclopedia on line o di un forum. Altri cms sono generici e in tal senso si adattano alla pubblicazione dei più disparati tipi di contenuti. I linguaggi più comunemente utilizzati nella programmazione dei cms sono PHP e ASP. La scelta del linguaggio dipende anche dalla piattaforma di riferimento (ad esempio Linux o Windows). Questi utilissimi software sono nati negli anni 90 in seno a lungimiranti organizzazioni che, producendo ingenti moli di pubblicazioni per uso interno, necessitavano di sistemi di gestione delle stesse che fossero semplici e di pronto utilizzo. Nel 1998, la Pencom Web Works, una compagnia di consulenza aziendale, introdusse il server di trasformazione dati (DTS) Metaphoria, che permetteva agli sviluppatori Java di scrivere applicazioni che si potevano collegare ai contenuti e permettevano di distribuire tali contenuti su canali diversi. Il prodotto non ebbe successo, ma il concetto che era stato introdotto costituì le basi di ciò che è diventato il CMS odierno. Sebbene i cms non siano nati rivolgendosi espressamente al web, oggi il loro utilizzo avviene in prevalenza on line. Una delle applicazioni più utili dei sistemi di Web CMS, infatti, è quella che permette di gestire i portali. Si tratta di strumenti di pubblicazione flessibili e multiutente. Nella Home Page del mio portale potrò strutturare a mio piacimento contenuti testuali, link, immagini, forum, materiale multimediale e quant’altro io desideri. Alcuni software Web Cms permettono anche di gestire più versione dello stesso sito web, ad esempio una versione Html ed una Wap. Un limite evidente di questi sistemi di gestione risiede nella loro “rigidità”, laddove è impossibile intervenire sulla struttura del CMS stesso. Il rovescio della medaglia è però ugualmente manifesto, visto che questi software non si rivolgono ad esperti informatici e quindi gli strumenti di base che offrono adempiono perfettamente al loro compito, senza bisogno di entrare in macchinosi tecnicismi. Difatti, laddove si desideri un grado di flessibilità maggiore, esistono appositi programmi open source, di ben più complesso utilizzo. Volendo fare un esempio di cms potremmo riferirci al software cms dell'omonimo blog: Word Press. WordPress è una piattaforma blog scritta in PHP che usa come database MySQL. Creata da Matt Mullenweg, attualmente è distribuita con la licenza GNU General Public License e si può scaricare liberamente. Wordpress supporta un solo blog per installazione ma ne esiste una versione multi-utente, anch'essa distribuita con la stessa licenza. Vediamo le principali caratteristiche tecniche:

-Gestione delle pagine a template
-URL permanenti che aiutano l' ottimizzazione nei motori di ricerca
-Supporto a plugin esterni
-Gestione delle categorie
-Funzioni di Trackback e Pingback
-Editor WYSIWYG per la formattazione dei testi
-Creazione di pagine statiche
-Supporto multi-autori
-Log degli utenti che visitano il blog
-Blocco di utenti in base all'indirizzo ip
-Possibilità di specificare meta-tag

lunedì 20 ottobre 2008

JOIN


Partendo dalla tabella studenti, ho creato una seconda tabella, “responsabili” costituita da due soli campi: resp e media voti. Di sicuro esisterà un procedimento più breve, ma non avendo ancora acquisito dimestichezza con Access ed essendo nemico giurato dei conti e della matematica ho proceduto in una maniera squisitamente umanistica! Ho iniziato estraendo "chi" è stato valutato da "chi" e che voto ha preso….

SELECT autore,voto FROM studenti WHERE resp = luca
Luca: media dei voti: 20.

SELECT autore,voto FROM studenti WHERE resp =Giuseppe
Giuseppe media dei voti: 16

SELECT autore,voto FROM studenti WHERE resp = Giovanni

Giovanni media dei voti: 12,7


SELECT autore,voto FROM studenti WHERE resp = Stefano
Stefano media dei voti: 16

Avendo estratto la media dei voti ho provveduto a creare la tabella responsabili per poterla poi "joinare" con quella studenti.
Attraverso una query di tipo JOIN è possibile ottenere come risultato di un'unica query un insieme di dati provenienti da tabelle differenti che presentino però una relazione tra di loro.
Se scrivo una istruzione del tipo: SELECT* from studenti, responsabili produrrà in uscita l'insieme di tutti i possibili accoppiamenti tra un elemento della prima tabella e un elemento della seconda; matematicamente si tratta del prodotto cartesiano tra le due tabelle, che avrà un numero di righe pari al prodotto tra il numero di righe delle due tabelle.
Un risultato questo di scarso interesse, mentre è sicuramente di maggiore utilità poter estrarre dal DB un sottoinsieme opportuno del prodotto cartesiano. Per esempio se volessi sapere la corrispondenza tra la tabella studenti e quella responsabili, per quanto concerne la votazione di ogni blog e la corrispondenza con la media aritmetica di voti del singolo assistente che ha valutato lo stesso, opererò la seguente join:


SELECT studenti.indirizzo, studenti.voto, responsabili.mediaVoti, responsabili.resp FROM studenti INNER JOIN responsabili ON studenti.resp = responsabili.resp


Si palesa qui una lapalissiana verità: i responsabili in questione non sono affatto larghi di voti!Diamoci da fare...:)

l'SQL ed esempi di SELECT


Per estrarre delle informazioni da un database è necessario interrogare la base di dati adoperando un Query language. QL più diffusi sono:





-SQL, linguaggio molto noto, usato per i database relazionali.
-MDX, un QL per i database OLAP.
-Datalog, per i database deduttivi.
-XQuery, per le fonti di dati in XML .
-SuprTool, un QL proprietario per SuprTool, un programma per accedere ai db usato per dati in Image/SQL (TurboIMAGE) e per i database Oracle.




Procediamo ora ad un approfondimento del primo esempio apportato: SQL.


SQL non identifica un prodotto commerciale, bensì un linguaggio nello stesso modo in cui C++ e Basic indicano linguaggi compilatori generali e non un brand specifico. SQL permette di effettuare svariate operazioni sia sui dati che sulle strutture che li contengono. La sigla sta per Structured Query Language e grazie alla sua inarrestabile diffusione è ormai diventata sinonimo di linguaggio standard per la gestione dei database relazionali. SQL assolve alle funzioni di:

Data Definition Language (DDL) - permette di creare e cancellare database o di modificarne la struttura.



Data Manipulation Language (DML) - permette di inserire, cancellare, modificare e leggere i dati



Data Control Language (DCL) - permette di gestire gli utenti e i permessi



Questo linguaggio di interrogazione è stato confezionato per interagire con i database relazionali. I database appartenenti a questa categoria, dei quali abbiamo già trattato in questo blog, si basano sul modello relazionale la cui struttura principale è per l'appunto la relazione, cioe' una tabella bidimensionale composta da righe e colonne. Ciascuna riga, chiamata tupla, rappresenta un'entita' che noi vogliamo memorizzare nel database. Le caratteristiche di ciascuna entita' sono definite invece dalle colonne delle relazioni, che vengono chiamate attributi. Entita' con caratteristiche comuni, cioe' descritti dallo stesso insieme di attributi, faranno parte della stessa relazione. I teorici fanno però notare come le caratteristiche originali dell'Sql, ispirate al calcolo delle tuple, in realtà lo violino. Le sue estensioni più recenti supportano pienamente il Modello relazionale, ma secondo gli esperti hanno implementato lo spettro di tali violazioni. Svariate sono inoltre le critiche mosse all'utilizzo pratico di SQL, a partire dalla presunta complessità del linguaggio, fino ad arrivare alla mancanza di una procedura standard per suddividere un lungo comando in comandi più brevi a cui ci si possa riferire tramite un nome.




SELECT, alcuni esempi.




Dal momento che l'interrogazione è molto probabilmente l'operazione maggiormente effettuata sui db, affronteremo ora una specifica istruzione SQL, preposta all'estrazione dei dati: Select.




La sintassi base di una SELECT SQL è la seguente:
SELECT * FROM nome_tabella
dove * sta per "tutti i campi".




Facciamo un esempio pratico. Ho aperto con Access la tabella excel che contiene le votazioni e la classifica provvisoria dei nostri blog. Ho rinominato la tabella "studenti". I campi che la compongono sono: id, indirizzo, autore, responsabile, personalizzazione, linguaggio, contenuti, numero post, voto e note.


La query: SELECT * FROM studenti


andrà ad estrarre tutti i campi della suddetta tabella. Al posto di * posso usare i nomi dei campi che mi interessa estrarre, ad esempio: SELECT resp FROM studenti ed estrarrò unicamente la colonna dei responsabili.




Inseriamo adesso un filtro nella query utilizzando l'operatore WHERE:


SELECT autore FROM studenti where id=18




mi darà come risultato: Simona Allegretti, una nostra collega (la scelta è stata puramente casuale!)




Conoscendo la sintassi di SQL posso anche operare delle estrazioni più precise. Per esempio potrei estrapolare tutti i nominativi degli studenti che hanno ricevuto una votazione superiore al 18 con la seguente istruzione:




SELECT * FROM studenti where voto > 18




o ancora se volessi conoscere gli studenti che alla voce contenuti hanno riscontrato una valutazione inferiore al 5, mi basterebbe effetture la seguente query:




SELECT * FROM studenti where contenuti <5












sabato 18 ottobre 2008

IL REPORT INFORMATIVO AZIENDALE


Un report informativo è un documento costituito da una combinazione sinottica di tabelle e grafici che presentano le misure di rilievo per i vari fenomeni analizzati, disaggregate e destrutturate secondo specifiche esigenze. Tali misure valgono come indicatori delle attività aziendali e costituiscono una base comune per le analisi successive. I Sistemi di reportistica costituiscono un ambito dei Sistemi informativi, la cui applicazione risulta al giorno d’oggi particolarmente diffusa ed affermata. La funzione principale cui sono chiamati ad adempiere è quella di fornire un valido e fondato supporto informativo alle decisioni strategiche di una organizzazione. Il report è incentrato sui dati di interesse della figura aziendale cui è diretto e il fenomeno che esso prende in considerazione, è analizzato secondo più dimensioni. Si parla in tal senso di Ipercubo informativo, o cubo multidimensionale. Questo viene disaggregato secondo le componenti di estrazione e visualizzato. L'ipercubo informativo è una raccolta di dati di cui si conoscono più dimensioni di analisi. Ogni componente di un dato è rappresentata su una dimensione spaziale del cubo. Spesso si fa riferimento al cubo indipendentemente dal numero di dimensioni. Difatti è possibile associare la rappresentazione di una tabella a doppia entrata ad un ipercubo informativo bidimensionale.

Vediamo un esempio:


Inizialmente può essere descritto uno spazio informativo a tre dimensioni e perciò con tre assi. Al suo interno vogliamo rappresentare lo spazio delle vendite di un'attività per:

1)Ambito Regionale (prima dimensione informativa)
2)Settore Merceologico (seconda dimensione informativa)
3)Ambito Temporale (terza dimensione informativa).

Ogni punto dello spazio così costituito rappresenta una misura delle Vendite per le dimensioni informative considerate. Analogamente ogni cella del cubo rappresenta il valore assunto all'intersezione delle occorrenze delle dimensioni scelte, ed in questo senso esso può essere visto come l'oggetto di un'analisi statistica di tipo multivariato.
Aggiungendo una nuova dimensione di analisi, ad esempio il Punto Vendita, si otterrebbe uno spazio quadri-dimensionale e analogamente un ipercubo a 4 dimensioni.


Torniamo ora ai report, prendendo in considerazione le tecniche di visualizzazione. 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:


1)drill-down
2)slice & dice



Con drill-down ("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 ("dividere una torta") si indica 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 sono un sottoambito dei Sistemi Informativi e per generalità di attribuzione anche dei Sistemi di Business Intelligence e ne costituiscono una estensione legata all'evoluzione informatica. Per sistemi di business intelligence (BI) ci si riferisce solitamente a:
-un insieme di processi aziendali volti alla raccolta e all’analisi di informazioni strategiche.
-la tecnologia utilizzata per realizzare questi processi,
-le informazioni ottenute mettendo in atto tali processi.


L'obiettivo di un Sistema di Reportistica all'interno di una organizzazione è quello di documentare in maniera dettagliata ed anlitica le attività di preminente interesse: questo patrimonio informativo deve essere sempre aggiornato e corretto secondo un'univoca prassi organizzativa che lo tuteli da lacune ed incongruenze. I Sistemi di Reportistica vengono sviluppati in ambiti aziendali complessi che hanno previsto una soluzione di Datawarehouse. Una delle finalità di un processo di Datawarehouse è proprio quella di strutturare un contesto informativo hardware e software capace di rispondere alle esigenze dello scenario organizzativo nel senso più ampio possibile. In tali contesti si hanno coerenza e consolidamento dei dati, velocità nell’accesso alle informazioni e supporto per l’analisi delle stesse. Con l'aumentare della mole di dati a disposizione di una organizzazione i vantaggi di un'elaborazione centralizzata dei documenti si palesano nei tempi di esecuzione dei singoli report: la particolare configurazione hardware delle postazioni su cui vengono materialmente ospitate le risorse del sistema permette l'ottimizzazione delle richieste al sistema e ne diminuisce il carico di attività rispetto alla situazione in cui singoli utenti ricercano informazioni individualmente. La standardizzazione dei documenti consente inoltre - secondo l'approccio all'informazione come bene aziendale - una distribuzione ottimale delle conoscenze ed una visione dell'attività più conforme e concorde fra le varie funzioni dell'organizzazione, di continuo aggiornata sulla base della disponibilità della fonte dei dati.


Vediamo schematicamente le fasi di sviluppo di un sistema di reportistica :


1)Identificazione delle Esigenze Informative e di Visualizzazione
2)Identificazione del Contesto Informativo e delle Fonti
3)Identificazione della Configurazione del Sistema Hardware/Software
4)Fase di Integrazione Hardware/Software delle Risorse Informative
5)Preparazione del Report
6)Validazione del Report
7)Fase di Collaudo del Sistema
8)Fase di Esercizio del Sistema di Reportistica
9)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
10)Metadati (una descrizione dei dati, così da assicurarne la comprensione)
11)Analisi di tipo tradizionale statistico
12)Rappresentazione con GIS (Sistema informativo geografico)
13)Esecuzione di Script personalizzati con linguaggi di basso livello
14)Uso di Componenti Web

Architettura di un sistema di reportistica


Si parla di Architettura di Sistema_client/server di un Sistema di Reportistica informatizzato se esso è funzionalmente strutturato in modo da conservare in un singolo Repository - un Dominio, logicamente associato al Server - i documenti prodotti rendendoli accessibili dalle postazioni Client dei fruitori. La funzione di centralizzazione può essere prevista da architetture complesse ed integrate all'interno di Reti e può prevedere differenti livelli di autorizzazioni e di relativa operatività sul sistema (utenti amministratori, utenti visualizzatori, utenti modificatori e creatori di nuovi documenti, etc..). La fruizione dei documenti finali può essere allargata anche agli utenti di una comunità più ampia . 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 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. Il sistema può mantenere traccia delle variazioni e dei relativi autori e assicurare che il documento sia aggiornato in conseguenza a nuovi caricamenti di dati sui sistemi alimentanti.


Software per i sistemi di reportistica


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 BI software convergendo verso vere e proprie piattaforme di 'Desktop Automation'.

Produttori di tools:


Actuate
Business Objects
Cognos
DataTime
Microstrategy
Oracle

mercoledì 15 ottobre 2008

Elementi teorici e strutturali del report:Dimensioni, Misure, Aggregazione, funzioni di aggregazione e formalizzazione dei concetti statistici di base


Un collettivo statistico o popolazione è costituito da un insieme di unità statistiche. Tali unità possono essere persone, oggetti, transazioni, o qualunque entità che rappresenti una fonte di interesse dal punto di vista del trattamento dei dati. Su ciascuna unità potranno essere rilevati K caratteri indicati generalmente con X1, X2...Xk. Rilevando K caratteri si otterranno K valori, le cosiddette osservazioni, che sono le determinazioni dei caratteri su quelle unità statistiche, che indicheremo con x minuscolo x1,x2...xk. Queste osservazioni dipendono dalle unità statistiche, che indicheremo invece con U1, U2...Un. Avremo dunque n osservazioni ciascuna costituita da un vettore di k elementi. Le osservazioni sono dette vettori k-dimensionali. In una matrice dei dati andremo a porre in riga l'unità i-esima e in colonna il carattere j-esimo. Dalla loro intersezione deriverà una osservazione xij-esima. I k caratteri (ad es nome, cognome, etc) sono caratterizzati ciascuno da un range di valori che possono assumere. Ad esempio se il carattere è il codice identificativo della cassiera, l'insieme dei valori distinti che esso potrà assumere, ovvero le sue modalità del carattere, sarà l'insieme dei codici utilizzati dal supermercato per identificare le cassiere. Le modalità possono essere formate da caratteri quantitativi oppure qualitativi.


I caratteri quantitativi sono discreti nel momento in cui l’insieme delle modalità assumibili può essere messo in corrispondenza biunivoca con un sottoinsieme di numeri interi (ad esempio numero di figli). Sono invece continui quando l’insieme delle modalità assumibili può essere messo in corrispondenza biunivoca con un sottoinsieme di numeri reali (peso, altezza, etc).




I caratteri qualitativi invece possono essere sconnessi e ordinati. Alla prima categoria appartengono quei caratteri per i quali date due o più modalità sarà possibile affermare solo se sono uguali o diverse (ad es. Luogo di nascita, Sesso.). Mentre per i caratteri ordinati è possibile stabilire un ordine tra le modalità (ad es. titolo di studio: senza titolo, licenza elementare, diploma di maturità, laurea di primo livello, etc).




Le funzioni di aggregazione eseguono un calcolo su un set di valori e restituiscono un valore singolo. Vediamo in che senso. La dimensione di un report si riferisce ad uno spazio K-dimensionale in cui si collocano le unità statistiche, è una forma di visualizzazione geometrica. Nel momento in cui più unità presentano le medesime modalità in più caratteri, sarà possibile aggregarle mediante una funzione che vada a sintetizzarle per poterle poi rappresentare in una semplice matrice di dati. La funzione di aggregazione è detta "misura", per ricondurre il tutto ad uno schema matriciale, io opero una misurazione di ciascuna modalità, per l’appunto metto in atto una sintesi, una aggregazione. Nei database, le funzioni di aggregazione più diffuse sono Count, Sum, Avg, Min, Max. Vediamo di cosa si tratta, illustrando un semplice esempio pescato dal web:




COUNT
Restituisce il numero di righe che soddisfano la condizione specificata nella clausola WHERE. Vediamo un esempio: voglio conoscere il numero di impiegati che appartengono al dipartimento produzione
SELECT COUNT (*)FROM IMPIEGATOWHERE DIPARTIMENTO = 'PRODUZIONE';


Risultato--> 2


SUM
Questa funzione somma tutti i valori di una colonna, vediamo un esempio: voglio ottenere la somma di tutti gli stipendi
SELECT SUM(STIPENDIO)FROM IMPIEGATO;

Risultato-->L.29.390.0000



La funzione SUM opera soltanto con i numeri, se viene applicata a un campo non numerico, si ottiene un messaggio di errore.



AVG (average)
Calcola la media aritmetica dei valori di una colonna. Vediamo un esempio: voglio conoscere lo stipendio medio della tabella IMPIEGATO.
SELECT AVG(STIPENDIO)FROM IMPIEGATO;

Risultato--> L. 3.673.750
La funzione AVG opera soltanto con i numeri.



MAX
Questa funzione serve a trovare il valore massimo di una colonna. Per esempio vogliamo sapere a quanto ammonta lo stipendio maggiore.
SELECT MAX(STIPENDIO)FROM IMPIEGATO;

Risultato-->L. 7.300.000


La funzione MAX opera anche con i caratteri.


MIN
Questa funzione opera in modo analogo a MAX, ad eccezione del fatto che restituisce il valore minimo di una colonna. Per trovare il minimo stipendio della tabella IMPIEGATO si usa la seguente espressione:
SELECT MIN(STIPENDIO)FROM IMPIEGATO;

Risultato-->L. 360.000



La funzione MIN opera anche con i caratteri: la stringa ‘AAA’ è minore della stringa ‘BB’.

Il formato ideale per il documento software di relazione aziendale (soggetto a revisioni nel tempo): Presentazioni, relazioni, progetti.


Le Organizzazioni sono unità sociali che interagiscono con l’ambiente esterno e con esso comunicano. Il panorama aziendale moderno risulta però decisamente mutato rispetto al passato. Importanti cambiamenti organizzativi hanno difatti toccato da vicino il mondo aziendale, soggetto a continue fusioni, incorporazioni, ristrutturazioni e ridefinizioni di business. Questa condizione, assieme alla consapevolezza dell’importanza di rendere partecipe della vita aziendale ogni singolo impiegato, ha esplicitato il bisogno di comunicare il cambiamento all’interno dell’azienda, prima ancora di veicolarlo all’esterno. Sono andati così strutturandosi innovativi modelli di organizzazione orientati alla comunicazione, per diffondere in maniera chiara ed impattante notizie, proposte e progetti al personale e agli stakeholders. I format di documento aziendale che meglio rispondono ai moderni dettami del marketing e della comunicazione interna, sebbene siano altamente diversificati, presentano una caratteristica comune: sono accomunati dalle identity guidelines, ovvero da linee guida da seguire per garantire la coerenza di formato sulla base della corporate identity. Quanto trasmesso visivamente o graficamente tramite ogni pezzo di carta pubblicato, dal biglietto da visita alla lettera, dalla pagina pubblicitaria alla newsletter tecnica o commerciale, dalla relazione annuale sull’andamento dei profitti, alla pubblicazione dei più disparati report aziendali: è d’obbligo un corretto uso dei font aziendali (quando usare quelli con le grazie e senza grazie, il grassetto, corsivo, ecc., dimensioni, stili standard per titoli, titolini, corpo testo, ecc.), uso dei margini e degli spazi, colore Pantone corretto, di modo che tutto sia riconducibile a prima vista ad una determinata azienda. Fondamentale in tal senso è la presenza del marchio logo e del descriptor, elementi base per l’immediata riconducibilità del documento all'azienda e ai valori che essa detiene. Anche la nostra università possiede un preciso programma di identità visiva, che è possibile visionare cliccando sul seguente link: http://www.uniroma1.it/ufficiostampa/identita.php . Tornando alla comunicazione interna, essa serve principalmente per condividere il progetto organizzativo (la missione e la visione dell'organizzazione), diffondere il know how e organizzare il lavoro. Gli strumenti di comunicazione interna più diffusa sono gli House Organ, le Newsletter, i manuali, operativi, il Fact book/bilancio, le circolari e gli ordini di servizio, i Position paper, la reportistica e i progetti, le relazioni.


· Le relazioni aziendali riguardanti il fatturato annuo, le politiche adottate, i progetti sposati, o qualunque altro aspetto di interesse per l’azienda, debbono essere in primo luogo chiare e dettagliate. È preferibile evitare uno stile retorico ed è necessario tenere bene in conto le competenze tecniche e il know how del pubblico di riferimento in modo da confezionare una relazione comprensibile a tutti. La stessa, nel rispetto dei canoni dell’ identità visiva, sarà impaginata utilizzando il font aziendale, i colori e la formattazione istituzionali, sarà affiancata dal marchio logo e veicolata in formati testuali laddove se ne faccia una diffusione cartacea o tramite mail, oppure in ppt se la stessa dovrà essere presentata da un responsabile ad una riunione così come ad un meeting.


I medesimi accorgimenti comunicativi dovranno essere applicati a tutte le tipologie di documenti aziendali. Particolare attenzione va tuttavia ai cosiddetti elementi intangibili della comunicazione, un surplus emotivo che colpisca il fruitore, veicolando la vision e la mission aziendali, e trasmettendo chiaramente il senso di appartenenza al team aziendale e la preziosità del singolo contributo.

IL SOFTWARE PER LA CREAZIONE DI PAGINE WEB PERSONALI: UNA REVIEW


Una pagina web è il modo in cui vengono rese disponibili all’internauta le informazioni on line tramite un browser. I contenuti delle pagine web sono strutturati secondo una logica ipertestuale, che crea collegamenti tra le varie informazioni attraverso link o rimandi, facendo in modo che l’utente navighi da una pagina all’altra, costruendo autonomamente il proprio percorso conoscitivo. Un insieme di pagine web, collegate tra loro e riferibili ad un unico web server, costituiscono un sito web. Esistono numerosi software, denominati editor, che permettono di creare in maniera semplice un sito web, fornedo così anche ai meno esperti la possibilità di realizzare una propria pagina personale on line. Vediamo gli editor più diffusi:




Sites di google: Questo software permette anche ai meno esperti di condividere e organizzare come collegamenti web, calendari, foto, video, presentazioni, profili personali, allegati e altri documenti, in un sito facile da creare e aggiornare e che può essere consultato solo dagli iscritti.




Frontpage: Microsoft FrontPage è un editor per creare pagine html ed amministrare siti web sviluppato dalla Microsoft per il sistema operativo Windows. È un componente della suite Office ed è incluso in alcune versioni di questo popolare pacchetto. Esistono inoltre versioni stand alone, col solo programma Frontpage.


Dreamweaver: è un editor prodotto da Macromedia ed è tra i programmi più utilizzati per realizzare siti web. Questo software dà un'interfaccia visuale: con esso si possono allestire pagine web, scrivendo semplicemente del testo, inserendo immagini e collegamenti ipertestuali, senza dover conoscere il linguaggio html.





SciTE (SCIntilla based Text Editor): è un editor di testo libero multipiattaforma scritto da Neil Hodgson usando il componente di editing libero Scintilla.


Nvu: è un editor web che si affianca a Mozilla Firefox e Mozilla Thunderbird per sostituire la suite Mozilla. La pronuncia dovrebbe essere "enview", che sta per new view. "Nuova vista" è rivolto ad una utenza non tecnica o comunque semi-professionale: non mira quindi a sostituire Adobe Dreamweaver quanto piuttosto Microsoft FrontPage. Nvu inoltre è totalmente gratuito!


KompoZer: è una evoluzione di Nvu. È mantenuto da una community di sviluppatori ed è un progetto di Sourceforge.


Expression Web: Un editor della Microsoft che nella sua seconda versione presenta innovative funzioni facilmente utilizzabili anche dai meno esperti. Crea siti Web basati su stili CSS e compatibili per impostazione predefinita con le specifiche XHTML 1.0 Transitional. Grazie a un migliore utilizzo dei browser, semplifica le attività di deployment e manutenzione. Consente di realizzare siti web e con applicazioni e toolset con un'interfaccia grafica che unisce la professionalità alla semplicità d'uso, permettendo di intervenire direttamente sulle impostazioni e nello stesso tempo di pensare allo sviluppo dei contenuti.

lunedì 13 ottobre 2008

-->DbMs...i software più diffusi...


Un DBMS è costituito da un complesso insieme di programmi software che controllano l'organizzazione, la memorizzazione e il reperimento dei dati (campi, record e archivi) in un database. Nello specifico un DBMS accetta richieste di dati da parte del programma applicativo e "istruisce" il sistema operativo per il trasferimento dei dati appropriati. I DBMS sono regolati da meccanismi di autorizzazione mediante l’utilizzo di password che tutelano i contenuti nell’intero database o in una parte di esso (in tal caso si parlerà di subschema). I tre tipi di organizzazione più comuni sono il modello gerarchico, il modello reticolare e il modello relazionale: il modello dominante oggi è quello relazionale, normalmente utilizzato con il linguaggio di interrogazione SQL. I DBMS relazionali sono detti anche RDBMS (Relational DBMS). Si tratta di un modello di database che consiste di diversi file separati che sono correlati l'un l'altro attraverso campi chiave. Si può accedere alle informazioni memorizzate in un file attraverso uno o più file, grazie alle relazioni stabilite tra questi. Ad esempio, un database relazionale vede il collegamento fra un database anagrafico degli impiegati in una società ed il database delle retribuzioni, tramite un codice univoco che identifica il singolo impiegato. I DBMS più diffusi sono Oracle, Microsoft SQL Server, Microsoft Access, Sybase SQL Server, Pico SQL.

...I vantaggi dell'informazione on line...


Grazie all’utilizzo di moderni software, l’informazione è oggi libera da qualsiasi vincolo spaziale e temporale. Acquista le vivaci tinte della democrazia, laddove si presenta veicolata dai più disparati punti di vista, filtrata da ogni tipo di visione ed ideologia, libera da preconcetti e costrizioni, alla portata di tutti. L’informazione on line è sempre aggiornata, il suo gap temporale con la contingenza è quantificabile in una manciata di secondi. Se la borsa di Tokyo crolla, a New York lo sapranno nello stesso momento in cui un lo apprenderà lo sventurato azionista giapponese. L’informazione on line dà voce alla gente, permette agli utenti di controbattere, di commentare, di fare raffronti in tempo reale. Il web trascina il pubblico nell’arena della comunicazione, svestendolo di quel ruolo di bersaglio statico e agevole sa scovare, e fornendogli tutti gli strumenti necessari per divenire protagonista indiscusso dello spazio multimediale. L’interattività è un concetto, una idea che è sempre esistita, la vera rivoluzione sta nel fatto che oggi essa venga sfruttata appieno. L’interattività e il dinamismo del web si concretizzano in una ricchissima gamma di aspetti, dai siti di controinformazione che affermano di dire ciò che i media tacciono, ai blog dove firme note o persone comuni lasciano testimonianze di vita e opinioni personali, ai forum di discussione visitati con assiduità da migliaia di internauti e spesso caratterizzati da un sorprendete fermento culturale ed ideologico. Ai vantaggi offerti agli utenti si affiancano quelli di cui godono i creatori dell’informazione. La possibilità di effettuare continui aggiornamenti, l’assenza di barriere spaziali, laddove è possibile modificare e creare contenuti da ogni angolo del globo con un colpo di mouse. Non è da sottovalutare la mole di contatti che il web permette di raggiungere, con un costo per unità che rasenta lo zero. Maggiore economicità quindi, tanto monetaria, quanto temporale, visto che si aggirano i tempi e i costi di produzione del supporto hardware per veicolare l’informazione, come accade invece nelle riviste cartacee.

Accessibilità dei siti WeB...


Una premessa sulla capillare diffusione e sulla crescente importanza del mezzo Internet allo stato attuale risulta al contempo fondamentale quanto scontata. È difatti opinione più che diffusa che il web abbia invaso ogni interstizio della vita sociale moderna, rivelandosi un indispensabile motore di progresso. Un aspetto probabilmente meno scontato che riguarda la web realtà, è quello concernente la fruibilità del cyberspazio, denominata dai tecnici “accessibilità”. Dal momento in cui il web ha smesso di essere appannaggio dei ricercatori, valicando aule universitarie e uffici governativi, è entrato nelle case della gente, imbattendosi così anche nei diversamente abili, possibilità che fino a pochissimo tempo fa non era stata tenuta in conto. Il punto nodale della questione è costituito dai disabili della vista, dagli ipovedenti ai ciechi. Per diverso tempo a questa categoria è stato negato l’utilizzo del mezzo, intere generazione hanno sofferto una vera e propria “ghettizzazione mediatica”. Grazie agli screen reader, i sintetizzatori vocali che hanno migliorato progressivamente le loro prestazioni, alla barra braille, che traduce in codici tattili i contenuti dei testi, alle schede audio (soundblaster), a un modem e ai comandi da tastiera, predisposti anche per navigare utilizzando il mouse e le icone, un non vedente è in grado oggi di utilizzare perfettamente le versioni più aggiornate di un sistema operativo che si regge esclusivamente sulla grafica come Windows, leggendo ciò che appare sul suo monitor, usando i più diffusi software (per esempio, editor di testo, database, fogli elettronici; così come programmi di posta elettronica, browsers, ecc.); i non vedenti muniti dell'hardware necessario possono stampare, anche in braille, i documenti prodotti e scansionare testi e immagini. Esattamente come qualsiasi altro utente informatico normodotato. Per gli ipovedenti, poi, vi sono anche altri strumenti, come gli ingranditori (magnifier), mirati per rispondere a esigenze diverse in funzione dell'ampia gamma di difficoltà visive esistenti, e accorgimenti nella stesura di documenti e nella presentazione di immagini che permettono a tali utenti di superare in modo relativamente semplice difficoltà oggettive. L’accessibilità dei siti web non concerne solo le disabilità visive, fisiche e cognitive, ma contempla anche le barriere tecnologiche, ovvero il disporre o meno di strumenti hardware e software adeguati. Ad esempio è sconsigliato nella creazione di pagine html l’utilizzo di formati pdf di Acrobat Reader, fla o swf di Flash, ecc.: tutti formati che per essere visualizzati necessitano di applicazioni autonome (o plug-in), che non vengono riconosciute dai software di navigazione standard (browsers e plug-in di cui essi dispongono) e neppure dagli strumenti di ausilio di cui comunemente si servono i non vedenti. Se si utilizzano per lo sviluppo delle pagine web tecnologie non accessibili, è necessario realizzare anche pagine equivalenti che rispondano a criteri di accessibilità. È altresì consigliabile l'inserimento di codici html quando si riferiscano a files audio e alla possibilità di offrire l'ascolto di questi ultimi in coincidenza con l'apertura di una pagina: in casi del genere si creerebbero problemi di sovrapposizione sonora per tutti gli utenti che stiano utilizzando in quello stesso momento un sintetizzatore vocale. Particolare attenzione va data all’utilizzo di caratteri che siano facilmente leggibili, quindi sufficientemente grandi e di un colore che crei un buon contrasto con lo sfondo. I link devono essere chiari e posizionati in maniera comprensibile rispetto al testo. Per quanto riguarda i contenuti è necessario che gli stessi siano linguisticamente chiari e laddove vi siano elementi grafici in movimento è opportuno fornire testi alternativi statici.

giovedì 9 ottobre 2008

Statistici versus Informatici, una sfida all’ultimo numero.


Un Database Management System è un sistema software progettato per consentire la creazione e la manipolazione efficiente di database. I DBMS rivestono una funzione di fondamentale importanza in numerosi campi, dalla contabilità, alla gestione delle risorse umane, dalla finanza fino ai contesti tecnici come la gestione di rete o la telefonia. Un tempo, a causa degli ingenti costi di gestione delle ingombranti e complicatissime apparecchiature hardware, questi software erano a disposizione unicamente delle grandi aziende ed istituzioni, mentre il loro utilizzo ha una diffusione capillare in funzione della crescente necessità di creare report statistici aziendali. La gestione di questi sofisticati software è appannaggio di Informatici e Statistici, i quali per complicare la vita a noi studenti, utilizzano denominazioni differenti per indicare le medesime entità, applicando talvolta sfumature di significato che giustifichino la differenza di nome! Retorica studentesca a parte, passiamo ora al vaglio la terminologia statistica ed informatica, o comunque parte di essa. Facendo un passo all’indietro vedremo come i dati raccolti nelle aziende sono organizzati all’interno di archivi informatici, i database, i quali sono organizzati in una o più tabelle, a loro volta strutturate in una serie di righe o colonne. Uno statistico che osservi una colonna ci vedrà un “carattere, variabile o attributo”. Un informatico ci scorgerà invece “campi, field o dimensioni”. Passando alle righe il primo individuerà unità statistiche o entità, mentre l’amante del pc scoverà senza dubbio un record. L’incontro dell’attributo con l’entità, o che dir si voglia, del field col record, genererà una modalità, meglio conosciuta dagli informatici come misura.

La Normalizzazione dei DataBase


La normalizzazione è una prassi finalizzata alla eliminazione della ridondanza e del rischio di inconsistenza dai database. Questo processo presenta differenti livelli, demominati forme normali che certificano la qualità dello schema del database. Si tratta di una procedura di tipo graduale, che realizza un’ottimizzazione progressiva a partire da relazioni non normalizzate fino a raggiungere un certo livello di normalizzazione. Si fonda su un assunto tanto semplice quanto basilare: se una relazione presenta più concetti tra loro indipendenti, la si decompone in relazioni più piccole, una per ogni concetto. Questo tipo di processo non è purtroppo sempre applicabile in tutte le tabelle, dato che in taluni casi potrebbe comportare una perdita d'informazioni. Prima di passare al vaglio le diverse tipologie di normalizzazione, è bene precisare due concetti fondamentali, quello di ridondanza e di anomalia. La prima si riferisce alla situazione in cui gli stessi dati vengono memorizzati inutilmente più volte, mentre le anomalie si riscontrano nel momento in cui si verificano irregolarità dei dati. Tornando alle forme normali, possiamo affermare che esse sono una proprietà di una Base di Dati Relazione che ne garantisce la qualità. La decomposizione di una relazione dovrebbe sempre garantire che non avvenga una perdita, affinché possa esserci la ricostruzione delle informazioni originarie e che si conservino le dipendenze, per il mantenimento dei vincoli di integrità originari. Di seguito le forme normali:


Prima forma normale


Definizione: Si dice che una base dati è in 1NF (prima forma normale) se vale la seguente relazione per ogni relazione contenuta nella base dati:



  1. una relazione è in 1NF se e solo se:
    non presenta gruppi di attributi che si ripetono


  2. esiste una chiave primaria (ossia esiste un insieme di attributi, che identifica in modo univoco ogni tupla della relazione)

Seconda forma normale



Definizione: Una base dati è invece in 2NF (seconda forma normale) quando è in 1NF e per ogni tabella tutti i campi non chiave dipendono funzionalmente dall'intera chiave primaria e non da una parte di essa.

Terza forma normale



Definizione: Una base dati è in 3NF (terza forma normale) se è in 2NF e per ogni dipendenza funzionale è vera una delle seguenti condizioni:



  1. X è una superchiave della relazione

  2. Y è membro di una chiave della relazione

Teorema: Ogni relazione può essere portata in 3NF.

Quarta forma normale

Una base dati è detta invece essere in 4NF quando per ogni relazione di dipendenza funzionale molti a molti X Y, X sia una superchiave.


Quinta forma normale

Infine, una base dati si dice in 5NF se e solo se:



  1. è in 4NF;

  2. ogni relazione di dipendenza è implicata dalle chiavi candidate.

lunedì 6 ottobre 2008

Dati, informazione e conoscenza.


La conoscenza è capacità di osservazione, di discernimento e di interpretazione. L’istinto umano, come quello animale, ci porta ad inquadrare il mondo circostante, a scandagliarlo, e a strapparne unicamente i brandelli necessari a ricucire l’informazione di cui necessitiamo. Siamo abili tessitori di infinite tele di esperienza, che spesso presentano intrecci errati e trame contorte, ma costituiscono senza dubbio un progresso, seppur di lieve entità. Un dato è una informazione riconoscibile e rilevante, è la porzione di mondo che individuiamo sulla base dei filtri adottati, dei nostri intenti conoscitivi. La sua rilevazione ed elaborazione genererà una informazione, che a sua volta sfocerà in conoscenza esplicita e formalizzata, la quale si baserà su un uso consapevole e produttivo del dato originale. La gestione della conoscenza e dell’informazione rappresenta la chiave di volta della società moderna e dell’economia internazionale. L’oceano di dati e di informazioni a disposizione è sconfinato, non quantificabile, semplicemente inesauribile. Volendo operare una semplificazione di sicuro non esaustiva, potremmo dire che il compito degli Statistici consiste nella raccolta e codificazione dei dati, mentre quello dei Comunicatori, includendo tutte le mansioni e professioni che questo titolo racchiude, consta della manipolazione della informazione. Prescindendo dalla diffusa accezione negativa, per manipolazione intendiamo qui la proposta al pubblico di una lettura personale dell’informazione e della conoscenza, sulla base dei propri ideali e dei propri fini comunicativi.

I canali di comunicazione software e la comunicazione sociale


I software potenziano la mente umana e fagocitano le distanze spazio-temporali. Sono straordinari propulsori della socializzazione, variegate declinazioni della libera comunicazione, della possibilità di esprimere se stessi e le proprie opinioni. Sono le vene nelle quali scorre il virus della informazione veloce e senza vincoli, uno strumento nelle mani di tutti e nel concreto di nessuno. I blog sono diari liberati da lucchetti ed esposti al mare magnum dei web navigatori. I social network sono affollate piazze, punti di ritrovo di conoscenti e non, grazie ai quali è possibile rintracciare amici lontani e condividere contenuti multimediali di ogni tipo. La conoscenza viaggia veloce nelle mailing list e nei news group, aggiornando in tempo reale gruppi di persone che condividono interessi, sogni e passioni. Ogni persona può lasciare una traccia del proprio pensiero nei forum, proponendo spunti di riflessione o sviluppando quelli altrui. È bene sottolineare però che queste immense arene della comunicazione digitale sarebbero terribilmente vuote e inutili se a riempirle non fossero le voci e i pensieri di tutti noi, che creiamo e alimentiamo la web realtà.

...Software Platonici...


“La scrittura non è un farmaco della memoria” affermava Platone, così come il Software non è un sostituto della mente umana. Il libro «ha sempre bisogno dell’aiuto del padre, perché non è capace di difendersi e di aiutarsi da solo» ci ha altresì insegnato questo grande pensatore, e la sua saggezza si sa, non conosce limiti epocali. Il termine libro sia in greco che in latino deriva etimologicamente dalla parola “corteccia”(liber e biblos), dalla parte, potremmo dire, hardware della creazione. Il che rimanda alla concreta realizzazione dello stesso da parte dell’uomo. L’uomo si è sempre sforzato di potenziare la sua memoria con supporti esterni, che egli stesso ha realizzato con l’ausilio del proprio intelletto e infinito acume. Ma come Platone stesso ci ha mostrato, la scrittura non produce autonomamente sapere. La conoscenza è una prerogativa squisitamente umana, così come sono di derivazione umana i supporti alla conoscenza stessa. Le moderne tecnologie e quelle antiche sono stupefacenti strumenti nelle mani degli uomini, indispensabili ausili per la gestione dell’informazione e della sapienza.