• Non ci sono risultati.

• Sezioni principali del sito: Projects, Publications e Thesis

N/A
N/A
Protected

Academic year: 2021

Condividi "• Sezioni principali del sito: Projects, Publications e Thesis"

Copied!
27
0
0

Testo completo

(1)

Università degli Studi di Modena e Reggio Emilia Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze Matematiche, Fisiche e Naturali Facoltà di Scienze Matematiche, Fisiche e Naturali

Corso di Laurea in Scienze dell’Informazione Corso di Laurea in Scienze dell’Informazione

Progetto e Sviluppo di un Sistema Informativo Progetto e Sviluppo di un Sistema Informativo

per la Gestione di una Base di Dati per la Gestione di una Base di Dati

di Pubblicazioni Scientifiche di Pubblicazioni Scientifiche

Valerio Romeo Valerio Romeo

Relatore:

Relatore:

Prof. Riccardo Martoglia Prof. Riccardo Martoglia

Anno Accademico 2006/2007 Anno Accademico 2006/2007

(2)

Introduzione Introduzione

• Studio ed estensione delle funzionalità del sito Information Systems Group

(http://www.isgroup.unimo.it)

• Sezioni principali del sito: Projects, Publications e Thesis

• La sezione analizzata in dettaglio è quella delle pubblicazioni scientifiche

• Necessità degli autori di effettuare inserimenti e modifiche alla base di dati direttamente da

interfaccia Web

• Realizzazione di un’area protetta per consentire

le operazioni summenzionate

(3)

Problematiche affrontate Problematiche affrontate

nella tesi nella tesi

• Analisi del caso di studio

• Analisi dei dati

• Progetto

• Implementazione

(4)

Information System Group Information System Group

• L’ISGroup è un gruppo di ricercatori che ha sede presso il Dipartimento di Ingegneria

dell’Informazione (DII) di Modena e che si

occupa di design e sviluppo di nuovi sistemi, algoritmi e strutture dati per l'accesso e

l'amministrazione dell’Informazione Sezioni principali

Sezioni principali

• Projects:

sono descritti in dettaglio i Topic Of Interest studiati e i progetti a cui il gruppo partecipa o ha partecipato

• Publications:

vengono elencate, raggruppate per anno o topic, le pubblicazioni scientifiche realizzate dai vari

membri del gruppo

• Thesis:

sono elencate le tesi proposte e una serie di

tesi pubblicate

(5)

Information System Group Information System Group

• Server Web: Internet Information Services

• Database: pub.mdb (MS Access)

• Tecnologie utilizzate:

– HTML

– ASP (VBScript) – JavaScript

Principali caratteristiche del sito:

(6)

Problematiche da risolvere Problematiche da risolvere

• Inserimenti e modifiche manuali dei dati

• Upload del file tramite accesso diretto alla cartella del server ( /pub/ )

• Mancanza di funzionalità sul controllo dei dati inseriti

• Generazione manuale del BibTeX Accesso

diretto alle tabelle

@inproceedings{sebd04smart,

author = {F. Mandreoli and R. Martoglia},

title = "{Exploiting related digital library corpora with query rewriting}",

booktitle = {Proc. of the 12th Convegno su Sistemi Evoluti per Basi di Dati (SEBD 2004)}, year = {2004}

Es.

(7)

Problematiche affrontate Problematiche affrontate

nella tesi nella tesi

• Analisi del caso di studio

• Analisi dei dati

• Progetto

• Implementazione

(8)

Studio del database

Studio del database pub.mdb pub.mdb

Gli Autori possono realizzare 0 o n Pubblicazioni, mentre

ogni Pubblicazione può far riferimento ad 1 o più Autori

Le Pubblicazioni possono essere di vario Tipo (unico

per ognuna) e possono riguardare un determinato

Topic of interest

Ogni Pubblicazione inoltre riguarda 1 o n Progetti per ciascuno dei quali possono essere stati realizzati da 0 a

n Prototipi

Un determinato Prototipo riguarda un solo Progetto e

fa riferimento ad un unico Topic Of Interest

(9)

Schema Logico Schema Logico

AUTORI ( ID, Nome, Search ) PUB-AUT ( ID, Pub, Autore ) AK: Pub, Autore

FK: Pub REFERENCES Pubblicazioni FK: Autore REFERENCES Autori

PUBBLICAZIONI ( ID, Titolo, Libro, Abbr, Luogo, Year, Month, Tipo, Topic,

PDFLink, Abstract, BibTeX )

FK: Tipo REFERENCES Tipo

FK: Topic REFERENCES TopicOfInterest TIPO ( ID, Tipo )

TOPICOFINTEREST ( ID, Titolo, Descrizione, PaginaWeb, Search ) PROG-PUB ( ID, Prog, Pub )

AK: Prog, Pub

FK: Prog REFERENCES Progetti FK: Pub REFERENCES Pubblicazioni

PROGETTI ( ID, Titolo, Descrizione, PaginaWeb, Tipo, Inizio, Fine ) PROTOTIPI ( ID, Nome, PaginaWeb, Topic. Progetto )

FK: Topic REFERENCES TopicOfInterest FK: Progetto REFERENCES Progetti

(10)

Problematiche affrontate Problematiche affrontate

nella tesi nella tesi

• Analisi del caso di studio

• Analisi dei dati

• Progetto

• Implementazione

(11)

Progetto Progetto

1. Raccolta dei requisiti da sviluppare

2. Analisi dello scenario: gestione pubblicazioni 3. Individuazione dei casi d’uso: inserimento e

modifica pubblicazione

4. Realizzazione degli Activity Diagram 5. Modifica al database

Fasi affrontate:

(12)

Scenario:

Scenario:

Gestione Gestione

Pubblicazione Pubblicazione

Scenario: Gestione Pubblicazione Scenario: Gestione Pubblicazione

L’autore, a login effettuato, mediante un

apposito menù potrà decidere se inserire una

nuova pubblicazione o modificarne una già

esistente L’autore, a login effettuato, mediante un

apposito menù potrà decidere se inserire una

nuova pubblicazione o modificarne una già

esistente

In caso di inserimento verrà caricata la pagina opportuna contenente il

form da compilare...

In caso di inserimento verrà caricata la pagina opportuna contenente il

form da compilare...

...al contrario, se si è deciso di modificare una pubblicazione, mediante un apposito menù, sarà

possibile sceglierla ...al contrario, se si è deciso di modificare una pubblicazione, mediante un apposito menù, sarà

possibile sceglierla ... se è stato inserito un

nuovo topic, sarà necessario completare l’operazione relativa con i

dati del topic

... se è stato inserito un nuovo topic, sarà necessario completare l’operazione relativa con i

dati del topic

Dopo aver confermato l’inserimento, i dati saranno immessi nel database e sarà possibile

infine caricare sul server il file della pubblicazione

Dopo aver confermato l’inserimento, i dati saranno immessi nel database e sarà possibile

infine caricare sul server il file della pubblicazione

Visione globale della

gestione di una

pubblicazione da

inserire o da modificare

(13)

Activity Diagram:

Activity Diagram:

Inserimento Inserimento Pubblicazione Pubblicazione

Diagramma delle attività per la funzione di

inserimento di una

pubblicazione analizzata

in dettaglio

(14)

Modifiche al database Modifiche al database

• Nuovi dati per le pubblicazioni:

– Numero di pagine – Keywords

Attributi: Pag-Iniz e Pag-fin

Entità: Keywords

Relazione: Pub-Key

(15)

Schema E-R modificato Schema E-R modificato

AUTORI ( ID, Nome, Search ) PUB-AUT ( ID, Pub, Autore ) AK: Pub, Autore

FK: Pub REFERENCES Pubblicazioni FK: Autore REFERENCES Autori

PUBBLICAZIONI ( ID, Titolo, Libro, Abbr, Pag-Iniz, Pag- Fin, Luogo, Year, Month, Tipo, Topic, PDFLink, Abstract, BibTeX )

FK: Tipo REFERENCES Tipo

FK: Topic REFERENCES TopicOfInterest KEYWORDS ( ID, Keyword )

PUB-KEY ( ID, Pub, Keyword ) AK: Pub, Keyword

FK: Pub REFERENCES Pubblicazioni FK: Keyword REFERENCES Keywords TIPO ( ID, Tipo )

TOPICOFINTEREST ( ID, Titolo, Descrizione, PaginaWeb, Search )

PROG-PUB ( ID, Prog, Pub ) AK: Prog, Pub

FK: Prog REFERENCES Progetti FK: Pub REFERENCES Pubblicazioni

PROGETTI ( ID, Titolo, Descrizione, PaginaWeb, Tipo, Inizio, Fine )

PROTOTIPI ( ID, Nome, PaginaWeb, Topic. Progetto ) FK: Topic REFERENCES TopicOfInterest

FK: Progetto REFERENCES Progetti

Schema E-R / Logico

Schema E-R / Logico

(16)

Problematiche affrontate Problematiche affrontate

nella tesi nella tesi

• Analisi del caso di studio

• Analisi dei dati

• Progetto

• Implementazione

(17)

Studio degli script Studio degli script

Script ASP:

• LoginForm (3 KB): realizza il form di login, contenente LoginForm i campi di testo Username e Password e il

checkbox Salva LogIn, per accedere all’area privata del sito

• Login (2 KB): controlla che i campi inseriti siano presenti Login nella tabella ‘Login’

• Menu (3 KB): menù per effettuare le seguenti Menu

operazioni: logout, cancellazione cookie, inserimento pubblicazione e modifica pubblicazione

• Logout (1 KB): esegue il logout dall’area privata del sito e Logout redireziona l’utente alla pagina di login

(18)

Studio degli script (2) Studio degli script (2)

• DeletecookieDeletecookie (1 KB): cancella il cookie ‘Logon’ generato in fase di login con salvataggio dei dati

• SceltapubSceltapub (10 KB): permette di ricercare, per autore e

topic, le pubblicazioni presenti nel database. Selezionando il pulsante ‘Modifica’ si potrà accedere al form per

apportare i cambiamenti desiderati

• InsmodForm (16 KB): form per l’inserimento e la modifica InsmodForm dei dati di una pubblicazione

• PreinserimentoPreinserimento (10 KB): visualizza, in una struttura a tabella, i dati inseriti nel form prima di dare l’effettiva

conferma di inserimento o modifica

• InstopicForm (2 KB): form di inserimento per i dati del InstopicForm

(19)

Studio degli script (3) Studio degli script (3)

• InstopicInstopic (3 KB): visualizza, in una struttura a tabella, i dati del nuovo topic inseriti

• InserimentodatiInserimentodati (14 KB): contiene le query SQL per l’inserimento e la modifica dei dati della pubblicazione

• UploadUpload (4 KB): gestisce l’upload del file, in formato PDF, della pubblicazione scientifica sul server

Script JavaScript:

Bibtex (4 KB): contiene la funzione gen_bibtex() per la Bibtex generazione automatica del BibTeX

• Script (11 KB): realizza una serie di controlli sui campi del Script form

(20)

Area Web: gestione pubblicazioni Area Web: gestione pubblicazioni

• Gestione pubblicazioni protetta da Login

Salvataggio dati: Cookie

‘Logon’

• Menù: Logout, Cancella Cookie,

Inserimento nuova Pub e Modifica Pub

(21)

Inserimento nuova pubblicazione:

caricamento del form

(22)

Controlli JavaScript Controlli JavaScript

( ( script.inc script.inc ) )

• Controllo sui campi obbligatori: Autore, Titolo, Libro, Abbr, Anno, Tipo e Topic

• Abilitazione / Disabilitazione

campi Nuovi Autori, Nuovo Tipo e

Nuovo Topic

• Controllo sulle

pagine inserite: le pagine devono

essere separate dal carattere ‘-’

• Controllo sulle parole chiave inserite: max 5

• Menù a tendina:

filtro autori

(23)

Inserimento pubblicazione Inserimento pubblicazione

• Possibilità di confermare i dati prima di inserirli nel database

• Possibilità di inserire un nuovo topic compilando i campi del form relativo

Visualizzazione

dati inseriti

(24)

Modifica pubblicazione Modifica pubblicazione

• Scelta della pubblicazione da ricercare mediante un apposito menù

• Caricamento dei

dati nel form

(25)

Upload file Upload file

• Gestito mediante un form di tipo multipart/form-data

• Fasi upload:

1. Verifica di quanti dati sono stati spediti dal client (Request.TotalBytes)

2. Recupero dei dati (Request.BinaryRead)

3. Distinzione dell’header dal contenuto vero e proprio (variabile ContenutoFile)

4. Scrittura del file mediante l’oggetto

FileSystemObject che permette di accedere al file system del server

(26)

Generazione automatica BibTeX Generazione automatica BibTeX

( ( bibtex.inc bibtex.inc ) )

• Strumento utilizzato per la formattazione di riferimenti bibliografici contenente una serie di voci; nel caso di una pubblicazione, le voci prese in considerazione sono:

Abbr, Autori, Titolo, Libro e Anno

• realizzato mediante una concatenazione di stringhe generata automaticamente dalla funzione gen_bibtex()

• questa funzione viene richiamata ogni volta che si

compila un campo a cui è associato il metodo onChange

• tale metodo stabilisce l'esecuzione di un'espressione

JavaScript quando un campo di un form HTML non è più evidenziato e il suo valore è cambiato

Esempio:

(27)

Obiettivi raggiunti :

Sviluppi futuri :

 migliorata la sezione Publications attraverso inserimenti e modifiche più veloci e sicure attraverso una serie di controlli

 sono stati introdotti nuovi attributi per le pubblicazioni ed è stata aggiunta l’entità ‘Keywords’

 anche l’upload del file è stato ottimizzato gestendolo mediante

l’ausilio di un form ed evitando quindi l’accesso diretto alla cartella del server

 creare script ASP al fine di ottimizzare gli inserimenti e le modifiche anche per le sezioni Projects e Thesis

 inserire nel criterio di ricerca delle pubblicazioni anche le parole chiave così da filtrare maggiormente i risultati ottenuti

 gestire inoltre la cancellazione dalla base di dati di una determinata pubblicazione

 l’area privata realizzata risulta essere protetta grazie all’uso di variabili di sessione e mediante una pagina di accesso

Riferimenti

Documenti correlati

Questo semplificher` a l’analisi di nostri dati perch` e una matrice diagonale possiede tutti gli elementi fuori dalla diagonale pari a zero e quindi baster` a considerare i

per i quali si è arrivati ad una buona uniformazione (almeno negli elementi fondamentali) a livello italiano, i bandi sono spesso elaborati secondo principi e

Le informazioni di seguito riportate descrivono le fasi principali del Suo progetto protesico- riabilitativo ed hanno lo scopo di farLe conoscere le modalità di svolgimento

Le informazioni di seguito riportate descrivono le fasi principali del Suo progetto protesico- riabilitativo ed hanno lo scopo di farLe conoscere le modalità di svolgimento

Le informazioni di seguito riportate descrivono le fasi principali del Suo progetto protesico- riabilitativo ed hanno lo scopo di farLe conoscere le modalità di svolgimento

Le informazioni di seguito riportate descrivono le fasi principali del Suo progetto protesico- riabilitativo ed hanno lo scopo di farLe conoscere le modalità di svolgimento

L’obiettivo di questo lavoro è la trattazione dell’operazione straordinaria di scissione e, al fine di meglio descriverne la portata di applicazione, verrà svolto un

-Se d (spessore della parete) è più grande T diminuisce (vantaggio del cuore ipertrofico), però la parete è meno cedevole quindi più difficile il ritorno. -Se r più grande T