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