Deliverable 3.5

Transcript

Deliverable 3.5
Analisi dei requisiti e casi d’uso
Indice
1 Introduzione
1.1 Terminologia . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2
2 Modello della Web Application
5
3 Struttura della web Application
6
4 Casi di utilizzo della Web Application
8
1
1
Introduzione
Gli obiettivi generali della Web Application, sono quelli di permettere all’utente finale di avere una visione d’insieme dell’intero progetto. Sarà possibile
nello specifico visualizzare l’intera documentazione del progetto in formato
.pdf scaricabile. Sarà possibile consultare tutti gli esperimenti effettuati ed
eventualmente simulare dei nuovi esperimenti. Sarà possibile consultare i
dataset utilizzati per la sperimentazione. Sarà possibile consultare i grafici
della sperimentazione phi-delta.
1.1
Terminologia
Questa sezione riporta la terminologia utilizzata all’interno del progetto di
sviluppo della web application:
• Hosting: In informatica si definisce hosting (dall’inglese to host, ospitare) un servizio di rete che consiste nell’allocare su un server web
le pagine web di un sito web, rendendolo cosı̀ accessibile dalla rete
Internet e ai suoi utenti.
Tale server web, definito host, è connesso ad Internet in modalità idonea a garantire l’accesso alle pagine del sito mediante il web browser
dell’host client dell’utente, con identificazione dei contenuti tramite
dominio ed indirizzo IP. Il servizio può essere gratuito o a pagamento,
tipicamente a qualità maggiore nel secondo caso.
La fornitura di servizi di connessione ad Internet, hosting, housing, e
servizi connessi, è oggi un settore economico molto specifico, compreso
all’interno dell’ICT, in cui operano molte realtà nazionali, ma anche
grandi aziende transnazionali.
Pur essendo possibile ospitare il proprio sito web su un server o spazio
FTP all’interno della propria infrastruttura, è prassi che ci si rivolga ai
servizi forniti da imprese specializzate: provider, data center, società
di telecomunicazioni, etc.
Quanto sopra riportato descrive più propriamente un web hosting:
esiste anche l’hosting relativo a servizi infrastrutturali ovvero l’host
network.
• Server Web: In informatica un server web (o web server) è un’applicazione software che, in esecuzione su un server fisico, è in grado di
gestire le richieste di trasferimento di pagine web di un client, tipicamente un web browser. La comunicazione tra server e client avviene
tramite il protocollo HTTP, che utilizza la porta TCP 80 (o 8080), o
eventualmente la versione sicura HTTPS, che utilizza invece la 443.
L’insieme di tutti i web server interconnessi a livello mondiale dà vita
al World Wide Web.
2
Teoricamente un qualsiasi dispositivo per cui sia disponibile qualche
software che agisca come server web può diventare un server web, ma
solitamente i dispositivi che ospitano server web sono sistemi hardware
dedicati ottimizzati a tale scopo. Ad esempio si può installare un
server web su un normale PC allo scopo di testare in locale un insieme
di pagine web oppure per consentire l’accesso ai propri documenti da
altri client host, sia in rete locale, sia via Internet.
• Dominio: Il dominio internet è un nome che identifica in maniera
precisa il nome di un privato, ente o azienda, di un’organizzazione su
Internet.
I nomi a dominio sono la base di Internet e del web e permettono
di raggiungere i siti internet nella rete “in formato testuale”, grazie
al sistema DNS. Il sistema dei nomi a dominio, in inglese Domain
Name System (spesso indicato con DNS) è un sistema utilizzato per
la risoluzione di nomi dei nodi della rete (in inglese host) in indirizzi
IP e viceversa. Il servizio è realizzato tramite un database distribuito,
costituito dai server DNS.
Il nome DNS denota anche il protocollo che regola il funzionamento
del servizio, i programmi che lo implementano, i server su cui questi
girano, l’insieme di questi server che cooperano per fornire il servizio.
Un dominio web è composto da più parti: pensando ai domini nella
forma www.nome.it, si avrà una spiegazione per le tre parti di cui è
composto questa etichetta, per cui:
www indica il protocollo utilizzato per raggiungerlo, la parte centrale
indica il nome scelto e può avere una lunghezza da 3 a 63 caratteri, la
parte finale, ad esempio .IT, indica l’estensione o il top level domain
(TLD). Non c’è una sola tipologia di estensione per il dominio, ma al
contrario ne esistono di diverse e si differenziano essenzialmente per:
tipologia di sito che può essere commerciale, destinato ad associazioni,
ecc.; nazionalità (i TLD nazionali, come .IT, .DE, .FR, identificano
il paese a cui appartiene quel dominio e la lingua che probabilmente
utilizzerà il sito).
• Connessione SSH: rappresenta una delle aree fondamentali dell’intelligenza artificiale e si occupa della realizzazione di sistemi e algoritmi
che si basano su osservazioni di dati per la sintesi di nuova conoscenza. L’apprendimento può avvenire catturando caratteristiche di interesse provenienti da esempi, strutture dati o sensori, per analizzarle e
valutarne le relazioni tra le variabili osservate.
• SMTP: Simple Mail Transfer Protocol (SMTP) è il protocollo standard per la trasmissione via internet di e-mail. In italiano si potrebbe
3
tradurre come Protocollo elementare di trasferimento postale. È un
protocollo relativamente semplice, testuale, nel quale vengono specificati uno o più destinatari di un messaggio, verificata la loro esistenza
il messaggio viene trasferito. È abbastanza facile verificare come funziona un server SMTP mediante un client telnet. Il protocollo SMTP
utilizza come protocollo di livello transport TCP. Il client apre una
sessione TCP verso il server sulla porta 25 (recentemente modificata
in 587 da molti Provider per limitare lo spam). Per associare il server
SMTP a un dato nome di dominio (DNS) si usa un Resource Record
di tipo MX (Mail eXchange).
Poiché SMTP è un protocollo testuale basato sulla codifica ASCII (in
particolare ASCII NVT), non è permesso trasmettere direttamente
testo composto con un diverso set di caratteri e tantomeno file binari. Lo standard MIME permette di estendere il formato dei messaggi
mantenendo la compatibilità col software esistente. Per esempio, al
giorno d’oggi molti server SMTP supportano l’estensione 8BITMIME,
la quale permette un trasferimento di un testo che contiene caratteri
accentati (non-ASCII) senza bisogno di trascodificarlo. Altri limiti di
SMTP, quale la lunghezza massima di una riga, impediscono la spedizione di file binari senza trascodifica. (Nota che per i file binari
inviati con HTTP si utilizza il formato MIME senza bisogno di una
trascodifica.)
SMTP è un protocollo che permette soltanto di inviare messaggi di
posta, ma non di richiederli ad un server: per fare questo il client di
posta deve usare altri protocolli, quali il POP3 (Post Office Protocol)
e l’IMAP (Internet Message Access Protocol).
• Tassonomia: la tassonomia è uno schema di classificazione dei contenuti basato sulla correlazione tra essi. Il termine “tassonomia” deriva
da “taxos”, ordinare e “nomos”, regola. In particolare è una struttura ad albero di istanze (o categorie) appartenenti ad un dato gruppo
di concetti. A capo della struttura c’è un’istanza singola, il nodo
radice, le cui proprietà si applicano a tutte le altre sotto-istanze. I
nodi sottostanti a questa radice costituiscono categorie più specifiche
le cui proprietà caratterizzano il sottogruppo del totale degli oggetti
classificati nell’intera tassonomia.
4
2
Modello della Web Application
La web application comprende un insieme di componenti hardware e software. Grazie al connubio di entrambi sarà possibile tramite la scelta del
dataset, procedere alla navigazione dello stesso, lanciare la sperimentazione
e visualizzare le sperimentazioni phi-delta in archivio.
Facendo riferimento ai Requisiti hardware la Web Application è stata
strutturata con l’ausilio di un Hosting condiviso e di un web server. Nello
specifico l’hosting condiviso è un servizio acquistato dall’azienda ARUBA
S.P.A. su cui risiede il sito del gruppo di ricerca dell’università di Cagliari
IASC (www.iascgroup.it). Il Web Server, non risiede sull’hosting condiviso,
ma è stato sviluppato sul nodo di calcolo di CyberSAR iasc.dsf.unica.it,
per via della potenza di calcolo necessaria al dimostratore per il corretto
funzionamento.
In merito ai Reguisiti software la web application è stata strutturata con l’ausilio del CMS Joomla!, dei linguaggi di programmazione php,
javascript, html, Css e python.
Per il corretto funzionamento della web application non è possibile prescindere dalla connessione internet.
5
3
Struttura della web Application
Vediamo nel dettaglio la struttura della web application. La web application
è raggiungibile all’indirizzo www.iascgroup.it/webapp. L’accesso alla stessa
permette di aprire un interfaccia grafica con due botti che permettono di
fare due scelte:
Web Application: Con il click di questo button è possibile aprire la
web application. Come detto in precedenza la Web application per comodità
è stata direttamente implementata nel nodo di calcolo dove è presente il web
server. La Web Application è implementata in 4 tab:
1. Overview: Verrà brevemente descritto l’uso della web application.
2. Data Viewer: Sarà possibile consultare i risultati della sperimentazione all’interno del dataset DMOZ
3. Experiments: Sarà possibile consultare le sperimentazioni già effettuate.
4. Demo: Sarà possibile selezionare un sottoset di nodi e un paio di parametri e lanciare l’algoritmo. I risultati andranno a finire direttamente
nella sezione experiments.
Vediamo nel dettaglio i vari tab presenti all’interno della web application:
Overview: All’interno della sezione Overview, verrà descritto in maniera breve la funzionalità dello strumento web. Sarà possibile capire con
esattezza quali operazioni e quali utilità avrà ogni singolo tab presente
nell’applicativo web.
Data Viewer: All’interno della sezione Data Viewer sarà possibile vedere in maniera dettagliata, tramite una struttura grafica ad albero il dataset
Dmoz. Durante la navigazione della struttura e con la selezione delle foglie,
sarà possibile vedere al lato destro dello schermo gli spettri di classificazione
delle words e delle c. Lo slideshow, affianca gli spettri delle words con gli
spettri delle c. Le foto saranno visibili in formato thumbnail ma al click
saranno visibili a una miglior risoluzione.
Experiments All’interno della sezione Experiments sarà possibile consultare tutte le sperimentazioni già effettuate. Il sistema è predisposto per
il salvataggio automatico delle sperimentazioni lanciate nella sezione Demo.
Le sperimentazioni verranno salvate con il giorno e l’ora in cui viene lanciato l’esperimento, e resteranno in archivio per le consultazioni successive.
L’esperimento sarà consultabile con la possibilità di delineare tutte le scelte
fatte dall’utente che aveva lanciato la sperimentazione.
Demo: All’interno della sezione Demo sarà possibile lanciare l’esperimento. Con una vista completa del dataset sarà possibile selezionare un
sottoset di nodi. Con dei menu a tendina, sarà possibile selezionare la tipologia dell’algoritmo ( per ora l’unica scelta possibile sarà l’algoritmo Greedy)
6
, il linkage criterion con opzione Minimum e Average, e il cohesion method,
con opzione tra 3 metodi.
Documentazione: E’ possibile, leggere e/o scaricare tutta la documentazione legata al progetto. Il formato dei documenti è in pdf. La documentazione è divisa per Deliverable come da progetto. E’ inolter presente un
Summary dell’intero progetto e un Summary per ogni Work Packages.
7
4
Casi di utilizzo della Web Application
8