UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Scienze dell’Informazione
Applicazione Web per la Gestione Applicazione Web per la Gestione
e Fruizione di Documenti Digitali e Fruizione di Documenti Digitali
Relatore Prof. Riccardo Martoglia
Anno Accademico 2009/2010 Tesi di Laurea
Luca Bonacorsi
Introduzione al problema Introduzione al problema
• Il progetto di tesi risponde ad una reale esigenza lavorativa
• Richiesta di creare un sistema in grado di avvicinare un numero sempre maggiore di utenti ai servizi offerti da enti come le biblioteche
• Necessità di estendere i servizi classici di consultazione delle biblioteche
• Scelta di utilizzare il ‘web’ che, per sua natura, permette di raggiungere un
numero importante di persone
• Necessità di applicazioni informatiche per la creazione di tale servizio
• I documenti cartacei devono essere
tradotti in formati digitali
Introduzione Introduzione
• Grazie al mezzo informatico, è possibile creare strumenti di ricerca
estremamente rapidi, diversamente dalla consultazione manuale classica
• Al contrario dei documenti cartacei, è
possibile interagire con i documenti digitali senza pericolo di rovinarli o sciuparli
• Consultazione disponibile 24 ore su 24
• La consultazione, grazie ai particolari meccanismi di interattività della libreria digitale, diventa una vera e propria ‘user- experience’
• Possibilità di segnalare ad amici documenti
di interesse comune
Introduzione Introduzione
Questa tesi descrive un progetto sviluppato in ambito lavorativo. Si tratta di:
•Un’applicazione per la gestione e fruizione di documenti digitali
(libreria digitale)
Analisi delle tecnologie utilizzate per il suo sviluppo
Focalizzazione sui requisiti logico- funzionali tramite ‘class diagram’
Implementazione delle funzionalità con
Flash, AS3 e XML
Problematiche affrontate Problematiche affrontate
nella tesi nella tesi
• Analisi delle tecnologie
• Progetto
• Implementazione
Analisi delle tecnologie Analisi delle tecnologie
• XML: linguaggio di ‘mark-up’, caratteristiche e proprietà
• Obiettivo principale di XML:
rappresentazione di
informazioni strutturate, di qualsiasi tipo, purché
riconducibili a precise regole, ad una gerarchia di
informazioni
Analisi delle tecnologie Analisi delle tecnologie
• Esempio di XML per la
descrizione di documenti digitali
<immagine id="4" page="iv">
<thumbnail><![CDATA[thumbnails/a.jpg]]></thumbnail>
<url><![CDATA[images/04.jpg]]></url>
</immagine>
• XML come tramite tra
sorgente dati e libreria
digitale
Analisi delle tecnologie Analisi delle tecnologie
• Adobe Flash: applicazione per lo sviluppo di contenuti, interfacce utente e
applicazioni ‘web’
multimediali ed interattive
• Adobe Flash Player :
‘software’ che consente di
visualizzare applicazioni
sviluppate con Adobe Flash
Analisi delle tecnologie Analisi delle tecnologie
• ActionScript 3.0: linguaggio di programmazione
orientato agli oggetti
• XML, Flash e ActionScript 3.0
Libreria Digitale
Problematiche affrontate nella Problematiche affrontate nella
tesi tesi
• Analisi delle tecnologie
• Progetto
• Implementazione
Progetto: Libreria Digitale Progetto: Libreria Digitale
• Libreria Digitale:
documenti proposti in
formati digitali e fruibili tramite computer
Applicazione ‘web’ dedicata
Progetto: problematiche da Progetto: problematiche da
risolvere risolvere
• Presentazione dei documenti in formati digitali: Quali?
Immagini ‘bitmap’
Immagini ‘bitmap’
( .jpg, .gif, .png )
( .jpg, .gif, .png )
Progetto: problematiche da Progetto: problematiche da
risolvere risolvere
• Generare una struttura dati contenente le informazioni dei documenti affinché
siano utilizzabili dalla libreria digitale
XML
Progetto: requisiti funzionali requisiti funzionali
• L’applicativo dovrà caricare dati XML esterni
• L’applicativo dovrà caricare
documenti esterni per facilitare l’aggiornabilità
• L'applicativo dovrà permettere
all'utente di selezionare uno specifico documento tramite un sistema di
navigazione sequenziale, oppure tramite icone organizzate in menu altamente interattivi
• Le icone saranno create, a partire dai documenti, automaticamente da
‘script’ opportuni
Progetto: requisiti funzionali requisiti funzionali
• Dovranno essere presenti strumenti specifici che
abilitino la possibilità di ridimensionare i
documenti per apprezzarne i dettagli e trascinarli
sullo schermo per prendere visione di eventuali
porzioni nascoste
Progetto: requisiti funzionali requisiti funzionali
• Dovrà essere presente un elemento interattivo,
dotato di un campo di testo di 'input' grazie al quale poter compiere ricerche di documenti
• E’ richiesta la possibilità di stampare i documenti
selezionati
Progetto: ‘class diagram’
Progetto: ‘class diagram’
La classe 'Main':
• Cuore della libreria digitale
• E’ il contenitore e gestore di tutti gli elementi grafico- interattivi e dei documenti
• Estensione del ‘framework’ di
Flash
Progetto: la classe ‘Main’ la classe ‘Main’
Progetto: ‘class diagram’
Progetto: ‘class diagram’
La classe ‘BitmapLoader ':
• Oggetti ‘BitmapLoader’
gestiscono il caricamento e la visualizzazione dei
documenti
• Oggetti ‘BitmapLoader’
segnalano visivamente la fase di ‘precaricamento’ dei documenti
• Oggetti ‘BitmapLoader’
contengono le immagini
Progetto: ‘class diagram’
Progetto: ‘class diagram’
• 'Main' crea tanti oggetti 'BitmapLoader', quanti sono i documenti
richiesti
Progetto: ‘class diagram’
Progetto: ‘class diagram’
Classe ‘MacStyleMenu’:
• Un oggetto di questo tipo contiene un gruppo di miniature
• ‘n’ menu per ‘n’ gruppi di miniature
• Interazione in stile ‘dock’
menu del ‘Mac’
Progetto: ‘class diagram’
Progetto: ‘class diagram’
Classe ‘XmlLoader’:
• Carica stringhe XML esterne
• Informa il resto
dell’applicazione del completamento del
caricamento dei dati XML tramite eventi
• Espone i dati al resto dell’applicazione
• L’applicazione utilizza i
dati per costruire i ‘menu’,
caricare i documenti, etc
Problematiche affrontate Problematiche affrontate
nella tesi nella tesi
• Analisi delle tecnologie
• Progetto
• Implementazione
>
Implementazione : XML Implementazione : XML
<immagini serverYear="2007" serverMonth="11" serverDate="20"
serverHour="10" serverMinute="58" serverSecond="56"
serverMillisecond="230">
<immagine id="1" page="i">
<thumbnail><![CDATA[thumbnails/d.jpg]]></thumbnail>
<url><![CDATA[images/01.jpg]]></url>
<tooltip><![CDATA[]]></tooltip>
<link><![CDATA[]]></link>
</immagine>
<immagine id="2" page="ii">
<thumbnail><![CDATA[thumbnails/b.jpg]]></thumbnail>
<url><![CDATA[images/02.jpg]]></url>
<tooltip><![CDATA[]]></tooltip>
<link><![CDATA[]]></link>
</immagine>
<immagine id="3" page="iii">
<thumbnail><![CDATA[thumbnails/c.jpg]]></thumbnail>
<url><![CDATA[images/03.jpg]]></url>
<tooltip><![CDATA[]]></tooltip>
<link><![CDATA[]]></link>
</immagine>
<immagini>