Realizzazione di Web Service per l estrazione di informazioni da siti web enciclopedici



Documenti analoghi
Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato

Realizzazione di interazioni sincrone e asincrone tra applicazioni Web 2.0

Casi di studio sulla migrazione di applicazioni web verso servizi REST Anno Accademico 2008/2009

Sviluppo di processi per l automatizzazione del testing per applicazioni Android

Confronto tra strumenti e tecniche per il Reverse Engineering in Macromedia Flash e Microsoft Silverlight

Strumenti per la gestione della configurazione del software

Access. P a r t e p r i m a

Analisi e sviluppo di un componente per un ESB open source

Diagrammi di Flusso dei Dati

Tesi di Laurea Automazione del testing delle Interfacce utente di applicazioni WEB:

Uno strumento per la valutazione automatica dell accessibilità delle

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Sviluppo di strumenti per la valutazione automatica di accessibilità e usabilità di applicazioni web

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Protocolli applicativi: FTP

19. LA PROGRAMMAZIONE LATO SERVER

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi

Generazione Automatica di Asserzioni da Modelli di Specifica

DOCFINDERWEB SERVICE E CLIENT

Oreste Signore, Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, Pisa

Il database management system Access

Servizio Telematico Paghe

Tecniche di riuso del software: applicazione ad un caso di studio reale

Introduzione alla Programmazione

Generatore stampati via. automatico personalizzabili web

Analisi dei requisiti e casi d uso

IL SISTEMA INFORMATIVO

Architettura client-server

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

REGOLE PROCEDURALI DI CARATTERE TECNICO OPERATIVO PER L ACCESSO AI SERVIZI DISPONIBILI TRAMITE LA POSTA ELETTRONICA CERTIFICATA

Lezione 1 Introduzione

Tesi Di Laurea. Anno Accademico 2010/2011. relatore Ch.mo prof. Cinque Marcello. correlatore Ch.mo Ing. Catello Cacace

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

ESERCITAZIONE Semplice creazione di un sito Internet

Registratori di Cassa

Analisi della Costruzione Partecipativa di un Wiki con un Applicazione a Wikipedia

Attività relative al primo anno

Reti di Calcolatori. Il Livello delle Applicazioni

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali

Sviluppo e integrazione di strumenti a supporto del reverse engineering di applicazioni flash

Creare un Ipertesto. 1

Un framework a supporto della sperimentazione di tecniche euristiche. per l ottimizzazione di pagine Web per Screen Readers

Corso di Sistemi di Elaborazione delle informazioni

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Esercizi di JavaScript

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

Sistema Ambiente 2010": Il Network Nazionale della Biodiversità. Checklist, chiavi di identificazione, archivi di immagini ed altre risorse

WorkFLow (Gestione del flusso pratiche)

Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.

Introduzione alle applicazioni di rete

MANUALE D USO DELLA PIATTAFORMA ITCMS

RILIEVO TRIDIMENSIONALE DEL «CONVENTO ROSSO», SOHAG (EGITTO)

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

INNOVAZIONE XNOTTA PER PORTALI TURISTICI

Protocollo di metadata harvesting OAI-PMH Lavoro pratico 2

Università Politecnica delle Marche. Progetto Didattico

DATA BASE ON LINE (BANCA DATI MODULI SPERIMENTALI)

ISTRUZIONI PER IL SERVIZIO SPCOOP - RICEZIONE

DESIGN PATTERN ESERCITAZIONE UML E DP INGEGNERIA DEL SOFTWARE. A quali pattern si riferiscono i tre schemi?

Progetto Campo Base. Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

EA 03 Prospetto economico degli oneri complessivi 1

Studente: SANTORO MC. Matricola : 528

Architetture Informatiche. Dal Mainframe al Personal Computer

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited

Un architettura di servizi integrati di comunicazione su rete IP per una PMI

Indice. Introduzione. Capitolo 1

Automazione Industriale (scheduling+mms) scheduling+mms.

Esercitazione di Basi di Dati

Analisi di prestazioni di applicazioni web in ambiente virtualizzato

Una Soluzione di NAT Traversal per un sistema di comunicazione VOIP per una PMI

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Ottimizzazione dello scambio messaggi in un middleware di distribuzione dati conforme allo standard OMG DDS

LE RETI: STRUMENTO AZIENDALE

Realizzazione di un prototipo di un software web based per la gestione di un inventario comunale

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

Concetti di base dell informatica. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

MODULO 5 Appunti ACCESS - Basi di dati

Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework.

Strumenti di modellazione. Gabriella Trucco

Fasi di creazione di un programma

Client - Server. Client Web: il BROWSER

il software per la gestione del programma scientifico SEMTIFIC

N componente 6 N azione 3.2 Titolo prodotto : Interfaccia di comunicazione con il software DEVS

Come iscriversi al M5S. Gruppi di Lavoro PROSPETTO ORGANIZZATIVO COMUNICAZIONE. Come funzionano le consultazioni via web

Indice FAQ

( x) ( x) 0. Equazioni irrazionali

Dispensa di Informatica I.1

Abbiamo il piacere di comunicarvi che da oggi, su internet, è presente TrovaLocali.it, un portale virtuale sia per chi opera nell ambito del

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

Il web server Apache Lezione n. 3. Introduzione

Procedura di iscrizione al corso on line

Linee Guida Modalità di assolvimento dell obbligo statistico tramite il SIRED

tesi di laurea Anno Accademico 2004/2005 relatore Ing. Massimo Ficco candidato Pasquale Incarnato Matr. 534/938

NodeXL: l amo delle Reti Sociali

Internet e il World Wide Web. Informatica di Base A -- Rossano Gaeta 1

Sistemi centralizzati e distribuiti

1 Vincenzo de Stefano SAP e Servizi Web

Realizzazione di un Tool per l iniezione automatica di difetti all interno di codice Javascript

Transcript:

tesi di laurea Realizzazione di Web Service per l estrazione di informazioni da siti web enciclopedici Anno Accademico 2008/2009 relatore Ch.mo prof. Porfirio Tramontana Ch.mo prof. Annarita Fasolino candidato Cirillo Giovanni Matr. 534/2881

Cos è un Web service? Secondo la definizione data dal World Wide Web Consortium (W3C) un Web Service (servizio web) è un sistema software progettato per supportare l'interoperabilità tra diversi elaboratori su di una medesima rete; caratteristica fondamentale di un Web Service è quella di offrire un'interfaccia software (descritta in un formato automaticamente elaborabile quale, ad esempio, il Web Services Description Language) utilizzando la quale altri sistemi possono interagire con il Web Service stesso attivando le operazioni descritte nell'interfaccia tramite appositi "messaggi" inclusi in una "busta" (la più famosa è SOAP): tali messaggi sono, solitamente, trasportati tramite il protocollo HTTP e formattati secondo lo standard XML. Quali sono i vantaggi? E gli svantaggi? Perché creare un Web Service? Quale tecnologie sono utilizzate nel Web Service? Perché trasformare Web application in Web Service? XML and XPATH

o WRAPPER Lo scopo del Wrapper è quello di interagire con l applicazione web per ottenere dalla sua esecuzione le funzionalità che devono essere esportate come web service. o Il wrapper diviso in due componenti principali: un interprete e un automa che deve essere interpretato. I passi fondamentali da seguire per la costruzione di un Wrapper saranno: Selezionare la funzionalità di interesse che si vuole migrare verso web service; Effettuare un reverse enginerring dell'interfaccia utente della Web Application; Creare il Modello di Iterazione descritto tramite l FSA; Convalidare il Wrapper; Esportare la funzionalità creata verso web service.

<Input Type="Click"> <Element>//INPUT[@type="image" and @title="go"]</element> </Input> Facoltà di Ingegneria <Input Type="Click"> <Element>//INPUT[@type="image" and @title="go"]</element> </Input> Struttura dell automa L automa è costituito da sequenza di stati con: Nome Numero identificativo Discriminante Stati successivi Variabili di I/O <DiscriminatingExpression>//B[contains(.,'Titles (Exact Matches)')]</DiscriminatingExpression> <Element Variable="esatti">string(id('main')/p[contains(.,'Titles (Exact Matches)')])</Element> \

SERVIZIO IMDB AUTOMA UNO Il sito Internet Movie Database è un database online di informazioni su film, attori, registi, DVD, programmi televisivi, spot pubblicitari e videogiochi. Il nostro scopo è quello di: dato in input un titolo di un film, restituirne in output il direttore (regista), il genere del film (romantico, commedia, horror etc..) e il plot (trama del film). Precondizioni Input Output Descrizione Presente nel database Film da cercare Direttore, Genere e Trama del film L automa interroga l applicazione che ne restituisce direttore genere e trama del film cercato.

SERVIZIO IMDB AUTOMA DUE Il risultato finale sarà un automa del tipo: Precondizioni Input Output Descrizione Presente nel database Lemma da cercare Lista dei film L automa interroga l applicazione che ne restituisce la lista di tutti i film che hanno come titolo il nome esatto del film cercato.

SERVIZIO WIKIPEDIA AUTOMA UNO Wikipedia è un'enciclopedia online, multilingue, a contenuto libero, redatta in modo collaborativo da volontari e sostenuta dalla Wikimedia Foundation, un'organizzazione senza fine di lucro. Lo scopo di questo servizio è: dato in input un lemma da ricercare, ci restituisca il risultato della ricerca, in pariticolar modo l incipit. Precondizioni Input Output Descrizione Presente nel database Lemma da cercare Incipit della pagina L automa interroga l applicazione che ne restituisce l incipit della pagina con il suo relativo URL

SERVIZIO WIKIPEDIA AUTOMA DUE Precondizioni Input Output Descrizione Presente nel database Lemma da cercare Lista delle disambiguazioni L automa interroga l applicazione che ne restituisce la lista delle disambiguazioni o, se unico, il risultato del lemma cercato.

Nel caso di Wikipedia: In base ai risultati ottenuti, su un campione di 528 ricerche, possiamo dire che la percentuale di successo è del 97,7%. In totale sul calcolo dei tempi di 2640 ricerche la media per l estrazione delle informazioni è stato di 3976,563 ms, con una deviazione standard dei valori di 954 ms. Nel caso di IMDB: la percentuale di successo è stata ancora maggiore 98,41% dei casi su un campione di 563 ricerche. La media, fatta su un calcolo di 2815 ricerche, è 7021,825ms con una deviazione standard di 1581,073ms. SPERIMENTAZIONE Affidabilità E Performance Analizziamo l affidabilità e le prestazione di ogni servizio composto dai due automi:

CONCLUSIONI E SVILUPPI In questo lavoro di Tesi è stata presentata una metodologia per l estrazione di informazioni da siti enciclopedici attraverso un Web Service: L estrazione avviene tramite un Wrapper che, in maniera trasparente all utente, interagisce con le Web Application; Abbiamo creato due tipi di servizi complessi a loro volta formati da servizi più semplici in modo da rendere modulabile la nostra applicazione. Eventuali sviluppi degli automi possono portare a servizi diversi: Raccogliere informazioni diverse o di diverso tipo; Implementazioni di automi per raccogliere le informazioni da altre fonti.