&uot andreagaschi.org

Semantic Web - Introduzione

Una parte degli appunti della lezione di oggi del corso di Argomenti avanzati di sistemi informativi, tenuta da Emanuele Della Valle. Il semantic web sarà anche l’argomento del mio approfondimento, oltre che una parte consistente del progetto che sto completando: la progettazione di un Data Warehouse per un centro congressi.

“C’era una volta, in un’organizzazione felice, un’applicazione con tanti utenti soddisfatti, ma l’organizzazione non era certo l’unica. Altre organizzazioni avevano applicazioni con utenti soddisfatti e, per esigenze di business, due organizzazioni sentirono l’esigenza di integrare le due applicazioni. Pensando alla contingenza l’organizzazione felice decise di addossarsi lo sforzo di integrazione…” ma quando il problema di integrazione coinvolge molte organizzazioni autonome ma interdipendenti non paga nel lungo periodo.
“…e fu così che nacquero le soluzioni di Enterprise Application Integration e iniziò il processo di maturazione delle tecnologie per l’integrazione”.
L’integrazione è un problema e l’interoperabilità è una possibile soluzione: “La capacità di comunicare, eseguire programmi o trasferire dati tra varie unità funzionali in modo da richiedere poca o nessuna conoscenza delle caratteristiche proprie di tali unità” (Source: ISO-IEC-2382 “Information technology – Vocabular””).

Gli approcci attuali comportano notevoli limiti quando si trovano ad operare in contesti caratterizzati da alta dinamicità. È semplice gestire pochi servizi all’interno di un’unica organizzazione da utilizzare in workflow poco complessi, mentre diventa difficile gestirli quando i servizi sono numerosi e occorre comporli in complessi business process cross-organizzazione.
L’eterogeneità semantica rimane il principale intoppo alla integrazione di applicazioni, un intoppo che i Web Services da soli non risolveranno. Finchè qualcuno non troverà un modo di per far si che le applicazioni si capiscano, gli effetti dei Web Services resteranno limitate. Quando si passano i dati di un utente in un certo formato usango un Web Services come interfaccia, il programma che li riceve deve comunque sapere in che formato sono. Occorre comunque accordarsi sulla struttura di ciascun business object. Fino ad ora nessuno ha ancora trovato una soluzione attuabile …” (Larry Ellison - Oracle Chairman and CEO).

Nell’implementazione di una SOA usando Web Services, la semantica dell’informazione scambiata in parte è codificata nella descrizione del servizio (WSD), ma quella che abilità l’interazione resta nella testa delle persone. Il Semantic Web sta invece rendendo disponibili meccanismi per rendere la semantica elaborabile. Il meccanismo sono le ontologie, perché abilitano la comprensione dei simboli da parte delle persone e allo stesso tempo la loro elaborabilità. Le ontologie permettono di descrivere le relazioni tra i simboli in modo formale.
Mentre nel keyword mathcing (es. in UDDI) il matching è basato solo sulla sintassi della stringa, avendo a disposizione un’ontologia si possono utilizzare le relazioni tra i simboli per “inferire” altre forme di matching.
I possibili matching abilitati dalla relazione di classificazione sono:

  • Exact matching: tutti i servizi classificati utilizzando il simbolo richiesto
  • Plug-in matching: tutti i servizi classificati utilizzando uno dei simboli che sono classificati come tipi più specifici di quello richiesto
  • Subsume matching: tutti i servizi classificati utilizzando uno dei simboli di tipo più generico di quello richiesto

In termini astratti le ontologie servono a rappresentare correttamente una parte dell’universo che ci circonda. In termini pratici (nel contesto dell’ICT), specificano un modello concettuale condiviso, descrivendo un dominio applicativo, con lo scopo di agevolare la comunicazione sia tra più sistemi informativi sia tra le persone e i sistemi informativi.

Definizione di ontologia: “Una specifica esplicita e formale di una concettualizzazione condivisa” (Strudel 1998). Significa che concetti, relazioni, funzioni, assiomi sono definiti esplicitamente; significa che una ontologia deve essere leggibile dalle macchine, deve essere un modello concettuale, su cui c’è accordo, di qualche aspetto del mondo.

Oggi in una comune Intranet esistono molti sistemi e numerose integrazioni. Questa situazione è abbastanza comprensibile all’uomo, ma non è elaborabile dalle macchine. Una ontologia può essere utilizzata prima di tutto per fare ordine, ma annotando le risorse con metadati definiti dall’ontologia, resterà solo una integrazione per risorsa e la struttura della Intranet sarà meglio comprensibile dall’uomo ed elaborabile dalle macchine.
 

Technology Convergence Workshop - Intervento di Alan Bosworth

Il giorno 08-04-2005 ho partecipato al Technology Convergence Workshop organizzato da Stefano Ceri (mio docente universitario) presso il Politecnico di Milano. Tra gli altri ha partecipato al workshop anche Alan Bosworth (Vice Presidente per la tecnologia di Google e che ha partecipato alla realizzazione di prodotti e standard come Microsoft Access, Internet Exporer 4.0, ODBC e XML).
Quello che segue è una sintesi del suo intervento che ha mi ha davvero colpito.

Adam Bosworth, guru statunitense della rivoluzione web, analizza gli scenari futuri delle applicazioni in rete.
Serve la capacita di semplificare e di adottare un nuovo approccio allo sviluppo delle applicazioni, capace di adattarsi alle dimensioni del Web del futuro.
Il Web si sta preparando a una nuova svolta sociale e tecnologica: da insieme di pagine ad uso personale e aziendale a contenitore globale della conoscenza e dell'esperienza umana.
Questa evoluzione è in larga parte frutto del progresso dei sistemi di elaborazione e memorizzazione. Un progresso che rende possibile il trattamento di quantitativi inimmaginabili di dati, misurabili in "exabyte" (tanto per avere un raffronto, si stima che tutti i materiali stampati esistenti occupino circa un quinto di exabyte).
Ma la questione non si riduce alla sola potenza di calcolo o capacità di memorizzazione. Serve un nuovo approccio allo sviluppo delle applicazioni, capace di adattarsi alle dimensioni del Web del futuro. L'obiettivo è quello di riprodurre il successo planetario del "primo" Web, dovuto in gran parte alla semplicità dei principali standard tecnologici: HTTP e HTML.
Le applicazioni di domani dovranno consentire un accesso collaborativo al Web. Ogni utente, anche privo di conoscenze informatiche, dovrà essere capace non solo di effettuare interrogazioni ma anche di pubblicare informazioni in modo diretto e immediato.
Il massiccio uso dei blog manifestatosi recentemente negli Stati Uniti prefigura questo tipo di
scenario: un Web popolato di milioni di autori in grado di esprimere in modo autonomo conoscenze e opinioni grazie a tecnologie a basso impatto. Un secondo aspetto essenziale per le applicazioni del futuro è poi la capacità di gestire il concetto di "presenza dell' utente", come esemplificato in modo ancora rudimentale dai sistemi di scambio istantaneo di messaggi molto popolari sul Web. La gestione efficace della presenza favorirà ancora maggiormente l'utilizzo della rete per lo sviluppo delle relazioni sociali, decretandone in maniera definitiva la supremazia tra tutti gli strumenti di comunicazione.
Perché tutto ciò avvenga servono nuovi linguaggi di interrogazione, nuovi metodi di
rappresentazione e di trasmissione dei dati e nuove architetture software.
Sintetizzando l'esperienza passata, Bosworth ha identificato i quattro principali obiettivi da porre alla base dei futuri componenti tecnologici del Web: semplicità, flessibilità, standardizzazione e scalabilità. Nel passato recente, HTML e HTTP hanno colto tutti e quattro questi obiettivi: sono semplici e utilizzabili da tutti; si adattano facilmente alle estensioni, anche a quelle non previste in origine; sono stati rapidamente standardizzati e
hanno consentito la creazione di una rete di contenuti su scala planetaria.
I nuovi standard tecnologici dovranno seguire la medesima strada, ma confrontarsi con esigenze dimensionali e prestazionali enormemente maggiori.
Nella sua panoramica Bosworth non ha indicato un elenco di linguaggi o protocolli specifici candidati a sostituire gli standard di oggi, ma ha segnalato alcune direzioni interessanti verso cui guardare. In particolare, ha citato il mondo degli aggregatori di contenuti (negozi e mall virtuali, aste, siti di distribuzione di news, comunità di utenti, blogs ecc.) come uno degli esempi di maggior interesse. In questo settore è emerso di recente lo standard RSS. Quest’ultimo consente una descrizione semplice ed efficace di contenuti di tipo qualsiasi, facilmente aggregabili in canali tematici presso cui l'utente può iscriversi, e anche svolgere ricerche in modo semplice e potente.
Bosworth ha concluso con un richiamo agli sviluppatori delle applicazioni Web del futuro.
La semplicità dell'interfaccia utente non va confusa con la semplicità dello sviluppo dell'applicazione. Semmai vale il contrario: costruire applicazioni semplici ed efficaci sul Web del futuro sarà un problema enormemente complesso, visto la mole inaudita di informazioni coinvolte e il numero immenso di utenti da servire.
Questo apre un secondo livello di sfida: semplificare non solo le applicazioni ma anche il modo di progettarle e costruirle.

Potete trovare gli altri interventi all'indirizzo www.webratio.com.
 

Buongiorno

Buongiorno a tutti.

Oggi inauguro il mio blog, che vuole essere non tanto un diario online, ma piuttosto una raccolta di ciò che ritengo interessante e degno di essere visto o letto. Semplicemente.

Ringrazio in anticipo chiunque deciderà di visitarlo.