Articoli del meseArticoli del mese

Articoli del mese


Stampa articolo

Articolo del Mese - Marzo 2013

Leonardo da Vinci aveva ragione!

Chris Date by Chris Date

Sareste disposti a vivere in un grattacielo costruito ignorando i principi architetturali fondamentali? Sareste disposti a gestire il vostro business con un database realizzato ignorando le regole e i principi fondamentali del database computing? La risposta alle prime due domande è scontata. E riguardo alla terza domanda? La risposta dovrebbe essere, ovviamente, negativa. Se - però - si deve giudicare da quanto accade, ci si accorge che, spesso, si risponde implicitamente con un sì. Come mai? Forse, semplicemente per il fatto che molte persone non sono al corrente dell’esistenza di una solida teoria scientifica. È sufficiente riflettere su alcune delle seguenti - e errate - affermazioni per renderci conto di quanto sia vero quello che abbiamo appena detto.
(Le affermazioni sono tratte dal sito web di Fabian Pascal, www.dbdebunk.com. Sono state volontariamente omesse alcune fonti per non rilevare il nome degli autori e il testo è stato modificato per renderlo più comprensibile).

«Ho già creato un database secondo la logica Entity-Attribute-Value» - Così facendo gran parte del modello logico è rappresentato in una forma dati e non come schema. In questo modo qualunque cambiamento al modello logico può avvenire senza modificare lo schema. Non solo, ma anche le stored procedure, se scritte correttamente, non devono essere cambiate. Le controindicazioni? Si deve fare uso di un codice SQL molto complesso. Ho utilizzato questa logica nei confronti di un cliente che non aveva una chiara comprensione dei propri requisiti e domandava di avere un’applicazione funzionante con una deadline precisa.

«Ritengo che i database siano dei semplici archivi, dedicati a gestire dati, non la logica di business…» - Facciamo in modo che il database sia il più semplice possibile e che invece sia l’applicazione a essere smart. Dopotutto, è l’applicazione a riflettere un processo di business mentre il database è puro storage, uno strumento di supporto all’applicazione.

«Il problema dei database relazionali è la necessità di adattare la struttura di tabella ogni qualvolta si aggiungono dati…» - Con RDF si possono riversare dati in uno store multiplo e lavorare su di essi immediatamente. Si tratta di un metodo molto più agile.

«SQL è inadeguato per gestire il modello relazionale poiché non permette di esprimere relazioni diverse da quelle definite dalla tabella» - Non è questa una limitazione del modello relazionale stesso? Credo che solo il modello entity-relationship possa fare delle distinzioni tra relazioni e dati. Una volta che si converte il modello in un modello di dati relazionali si perde quella capacità. Quanto meno questo è ciò che abbiamo appreso durante i corsi universitari sul database.

«Sono un utente Microsoft Access alle prime armi. Di solito non utilizzo chiavi primarie» - Da quanto ho letto la chiave primaria viene principalmente usata per velocizzare le operazioni di ricerca. Al momento uso solo due piccole tabelle che contengono un comune record ID. Effettuo query su queste tabelle e non mi risulta che vi siano errori. Da ciò che ho potuto costatare, riesco a ottenere dei risultati corretti. È importante utilizzare la chiave primaria o è soltanto qualcosa che sarebbe bene avere quando si lavora su grandi database?

Risposta: «La definizione di una chiave primaria non è mai necessaria, nemmeno in un grande database» - I vantaggi di una chiave primaria consistono nell’avere la sicurezza che il campo contenga solo valori unici. Questo evita la duplicazione di record. Access garantirà che la chiave primaria contenga un valore in modo tale che si possa avere una identificazione unica del record.

«I database relazionali sono essenzialmente matrici a due dimensioni con puntatori e fogli elettronici di alto livello» - E’ molto probabile che database XML o a oggetti consentano un adattamento maggiore nei confronti di architetture e modelli dati con cui si lavora quotidianamente: sono più flessibili e personalizzabili. Si è in grado di adottare principi di programmazione estrema, così come aggiungere nuovi campi, connettersi ad altri sistemi ed essere focalizzati sul modello dati e sul progetto e non sul modello del database e del possibile modello che meglio si adatta a quel database. Operazioni import-export da RDBMS sono immediate. Questi ultimi sono creati per lavorare in real-time e trarre un reale vantaggio da disegno e manutenzione di OODBMS preservando l’atomicità e i tool relazionali correnti senza sacrificare la qualità dei dati.

«Non ho mai avuto necessità che mi fosse spiegato il design di un database. Era così intuitivo, così ovvio...» - Non concepisco l’idea che possa esistere una diversa struttura di database. Non vedo l’ora di imparare qualcosa di nuovo i cui contenuti mi sono ancora del tutto estranei.

Risposta: «Dimenticate tutto ciò che sapete sui modelli dati: questa è la prima regola del data warehouse» - Per poter realizzare velocemente degli ottimi report, senza dover necessariamente contare su un team di matematici, dobbiamo fare una cosa triviale quanto insignificante. Fare tabula rasa della mentalità che considera il database come il cuore di tutto ciò che facciamo. Citando un sito web, possiamo dire di smettere di pensare il database in termini architetturali! Le applicazioni associate direttamente al database sono costose da sviluppare e manutenere. Sebbene una volta fossero considerate lo stato dell’arte sono oggi notoriamente poco sofisticate e poco adattabili.

Conclusioni - Bene, potrei spendere un sacco di tempo per contraddire tutte queste affermazioni, ma non credo sia poi così necessario. Penso che il messaggio sia sufficientemente chiaro e semplice: esiste una ignoranza diffusa. Ho un altro fatto da raccontare e che rende più forte la mia opinione. È una lettera pubblicata sul numero del luglio 2011 di Communication of ACM (Volume 54, n. 7). Nota: l’autore fa riferimento, nello specifico, a object/relational mapping e a sistemi NoSQL (un altro termine di moda privo di senso), tuttavia sono considerazioni che possono essere estese ad ambiti più ampi. Nella lettera si legge: “Object Relational Mapping e sistemi NoSQL tentano di risolvere (attraverso mezzi tecnici) un problema non tecnico. La difficoltà di molte persone nel padroneggiare il modello relazionale e, quindi, di trarre vantaggio dalla consistenza dei dati e dalla logica inferenziale è un problema di conoscenza. Invece di sfruttare in modo adeguato e chiedere ai vendor DBMS più funzionalità relazionali, molti cercano di evitarlo e sostituirlo, invocando un ritorno ai fragili e inaffidabili sistemi degli Anni 70”.
La verità è che esiste una conoscenza scientifica per risolvere il problema del database, ma non è messa in pratica. Molte persone evitano deliberatamente di applicare la teoria, come se questa non avesse possibilità di essere tradotta nel mondo reale (non rompetemi le scatole con disquisizioni filosofiche, sono una persona molto pratica!). La mia idea è tutto l’opposto. Se qualcosa non è fondato su una solida teoria, è facile che non sia praticabile.
Vorrei chiudere questo articolo citando Leonardo da Vinci e quanto scrisse a proposito cinquecento anni fa: “Coloro che non coniugano la pratica con la teoria sono come un comandante che sale sulla nave senza timone o compasso. Viaggiano senza conoscere in quale direzione stanno andando. La pratica dovrebbe invece sempre poggiare su una forte base teorica”. Leonardo aveva ragione.

Leonardo da Vinci aveva ragione! - Technology Transfer

Enterprise information catalog. I requisiti per fare la scelta giusta
Mike Ferguson

La nuova era dell’analisi predittiva - Le aziende alla prova del Machine Learning
Frank Greco

Uno sguardo Agile - Per capire il passato e progettare il futuro
Arie van Bennekum

Trasformazione Agile
Se il product owner diventa un collo di bottiglia

Sander Hoogendoorn

Una Fiat o una Ferrari?
Qual è la più adatta per il business digitale?

Barry Devlin

Vincere la complessità dei dati. È l’ora dello smart data management
Mike Ferguson

Big Data e Analytics - Se il machine learning accelera anche la data science
Mike Ferguson

I dati al centro del business
Christopher Bradley

I Big Data forniscono il contesto e la ricchezza predittiva attorno alle transazioni di business Avere dati coerenti e di qualità resta fondamentale per il processo decisionale
Barry Devlin

Cosa c’è dietro l’angolo? Cinque mosse per diventare un digital leader
Jeroen Derynck

Managing information technology Gestire l’IT come un business nel business
Mitchell Weisberg

Data integration self-service Miglioramento della produttività o caos totale?
Mike Ferguson

Project manager vecchi miti e nuove realtà
Aaron Shenhar

La catena alimentare dei requisiti
Suzanne Robertson

Come diventare un’azienda data-centric
Lindy Ryan

Enterprise analytical ecosystem - Come comprendere il comportamento online dei clienti e capitalizzare il valore dei dati nell’era Big Data
Mike Ferguson

Agilità? Basta Volere
Suzanne Robertson

Ma la vostra architettura è efficace?
Mike Rosen

Se il NoSQL diventa SQL
Rick van der Lans

La data quality e l’impatto sul business
Danette McGilvray

Business analysis e regole di business By Ronald G. Ross con Gladys S.W. Lam
Ronald Ross

Usare Scrum su larga scala: cosa cambia?
Craig Larman

Le architetture per ridurre il debito tecnico
Mike Rosen

Conversando con un marziano
Suzanne Robertson

Cosa c’è di nuovo nel project management?
Aaron Shenhar

Reinventare la Business Intelligence
Barry Devlin

Il nuovo volto della business intelligence
Shaku Atre

Alla ricerca del valore tra i pomodori nell'orto
John Favaro

I big data cambiano il mercato dei Database Server
Rick van der Lans

Un “superstorm” di informazioni
Barry Devlin

I dieci step per la qualità dei dati
Danette McGilvray

Perché è meglio evitare il private cloud?
Jason Bloomberg

Leonardo da Vinci aveva ragione!
Chris Date

Mobile user experience: Come adottare una strategia sostenibile
James Hobart

Cosa significa occuparsi di architettura?
Mike Rosen

Virtualizzazione dei dati e sistemi di Business Intelligence Agili
Rick van der Lans

Modelli e linguaggi naturali, quale il modo migliore per definire i requisiti?
James Robertson

Extreme Scoping: un approccio Agile all'Edw e alla BI
Larissa Moss

BI², la Business Intelligence al quadrato
Barry Devlin

I test di regressione in ambienti legacy
Randy Rice

Le conseguenze della consumerizzazione e del Cloud
Chris Potts

Come vanno gli affari? Chiedetelo al vostro cruscotto
Shaku Atre

Organizzare team di progetto efficienti in ambienti DW/BI
Larissa Moss

Big Data, come e perché
Colin White

Business Capabilities e l'allineamento del business all'IT
Mike Rosen

Il valore della tassonomia nella ricerca delle informazioni
Zach Wahl

BI, ma il Data Warehouse è ancora necessario?
Colin White

Reinventare la Business Intelligence
Barry Devlin

Il cruscotto delle prestazioni: il nuovo volto della Business Intelligence
Shaku Atre

Modelli e processi di User acceptance testing
Randy Rice

I limiti nel gestire l'IT come un Business
Chris Potts

Le componenti fondamentali del Cloud
George Reese

Metadati e DW 2.0
Derek Strauss

BI Open Source: basso costo e alto valore?
Jos van Dongen

Semplicità e requisiti
Suzanne Robertson

Business intelligence e analisi testuale
Bill Inmon

Extreme Scoping™: approcci agili al DW e alla BI
Larissa Moss

Dalla BI a un'architettura IT di livello Enterprise
Barry Devlin

Ambiente efficiente di ricerca di informazioni
James Hobart

Il Business deve trainare la Strategia IT
Chris Potts

Web database: la questione MapReduce (seconda parte)
Colin White

Web database: la questione MapReduce
Colin White

Misura delle prestazioni. I sette comandamenti
Harry Chapman

Le dieci cose che un architetto deve fare per creare valore
Mike Rosen

Sviluppare applicazioni a prova di sicurezza
Ken van Wyk

The ECM Landscape in 2008
Alan Pelz-Sharpe

Ma chi sono gli operatori dell’informazione?
Colin White

Qualità dell’informazione e trasformazione del management
Larry English

Classificazione sistematica delle informazioni
Zach Wahl

L’uso intensivo del Web nelle applicazioni di Bi
Colin White

Enterprise Search
Theresa Regli

La forza dell'astrazione
Steve Hoberman

La strada verso una BI pervasiva
Cindi Howson

Soa, una strategia di test
Randy Rice

Verso una BI più semplice e a minor costo
Colin White

I contenuti “Killer” del Web
Gerry McGovern

Sviluppo iterativo del software per i Dw
Larissa Moss

Qualità delle Informazioni e Datawarehousing
Larry English

Lo scenario Ecm 2008
Alan Pelz-Sharpe

La nascita del Web 3.0
John Kneiling

Documentazione: il dossier del crimine
Suzanne Robertson

L’impatto del Web 2.0 sui portali delle imprese
Colin White

Le tecniche vincenti di IT Management
Ken Rau

Web 2.0
Ed Yourdon

Web di successo se si conosce il cliente
Gerry McGovern

Un approccio alla BI incentrato sui processi
Colin White

Integrare Master Data Management e BI (Parte Seconda)
Mike Ferguson

Integrare Master Data Management e BI (Parte Prima)
Mike Ferguson

Il Project Manager è una Tata
Suzanne Robertson

Web di successo se si conosce il cliente
Gerry McGovern

L'informazione personalizzata
Colin White

La Tassonomia dell'Impresa
Zach Wahl

Managed Meta Data Environment (II parte)
David Marco

Managed Meta Data Environment
David Marco

Migliorare le applicazioni dell'impresa con Web 2.0
James Hobart

La Balanced Scorecard migliora la Performance dell'IT
Harry Chapman

La fusione dei processi dell'impresa grazie a Soa (II parte)
Max Dolgicer

La fusione dei processi dell'impresa grazie a SOA (I parte)
Max Dolgicer

Volere è Potere, in Ogni Senso
Suzanne Robertson

Dimostrate con i numeri il valore dei contenuti del web
Gerry McGovern

Il Back-end della pianificazione strategica dell'It
Ken Rau

L'audit delle prescrizioni di progetto (II parte)
Suzanne Robertson

L'audit delle prescrizioni di progetto (I parte)
Suzanne Robertson

Il Processo di gestione delle informazioni
Ted Lewis

I requisiti come strumento di gestione dei progetti
Suzanne Robertson

Il futuro è nel contenuto killer del web
Gerry McGovern

Alla ricerca del valore tra i pomodori nell'orto
John Favaro

Rilevare i costi sulla base delle attività
Ken Rau

Un percorso verso l'impresa intelligente (II parte)
Mike Ferguson

Un percorso verso l'impresa intelligente (I parte)
Mike Ferguson

Il Data Store Operativo: un lavoro di martello
Claudia Imhoff

Il data warehouse orientato all'impresa
Michael Schmitz

Dieci punti chiave per realizzare balanced scorecard di successo
Harry Chapman

Content management: i contenuti al primo posto
Gerry McGovern

Applicazioni Web ad alta disponibilità
John Kneiling

Il 2004, sarà l'anno in cui abbandoneremo html?
James Hobart

La tecnologia EII ripropone il data warehousing virtuale?
Colin White

Misurare per Gestire
Ken Rau

Volere è Potere, in Ogni Senso
Suzanne Robertson

Realizzare il CPM e l'integrazione della BI
Mike Ferguson

Tutti i punti della FPA
Koni Thompson

Requiem per il Portale?
Colin White

Business Intelligence: dalla teoria alla realtà (II parte)
Shaku Atre

Business Intelligence: dalla teoria alla realtà (I parte)
Shaku Atre

I portali Corporate e di E-business: la nuova generazione del posto di lavoro
Mike Ferguson

I 10 errori da evitare nella realizzazione di un Meta Data Repository (II Parte)
David Marco

I 10 errori da evitare nella realizzazione di un Meta Data Repository (I parte)
David Marco

Usare i modelli per acquisire l'esperienza di progettazione
James Hobart

Realizzare l'Impresa Intelligente
Colin White

.NET or J2EE - Choosing the Right Web Services Framework
John Kneiling

Progettare Applicazioni Mobili di Successo
James Hobart

La Sociologia del Progetto: Identificare e Coinvolgere tutti i Partecipanti
Suzanne Robertson

Integrare la Business Intelligence nell'Impresa (II parte)
Mike Ferguson

Integrare la Business Intelligence nell'Impresa (I parte)
Mike Ferguson

L'Evoluzione del Portale di e-Business (II parte)
Colin White

L'Evoluzione del Portale di e-Business (I parte)
Colin White

Il Consulente WebEAI: Servizi Web, XML e l'Impresa
John Kneiling

Data Mining: Come Gestire le Relazioni con i Clienti Secondo i Principi del CRM
Weaver James

Articoli del mese - Technology Transfer