IVQS SERVER “IVQS SERVER: un sistema client/server per l’interrogazione di basi di dati multimediali in rete, ad elevato grado di usabilità, con interfaccia iconica” F. Fontana, M. Moscarini, S. Moretti, M. Valeri Usability Lab ENEA, Università di Roma, DI A.A. 2002 - 2003 Indice • Introduzione • I Web-DB • Sistemi di interrogazione visuali a basi di dati • IVQS SERVER- obiettivi e requisiti utente • IVQS SERVER- il sistema e la metodologia di progettazione • Test di usabilità e risultati della sperimentazione • Conclusioni e futuri sviluppi Introduzione - Internet Internet è la più grande e capillare rete globale: Milioni di utenti eterogenei 609 Milioni di utenti a Settembre 2002 Miliardi di informazioni su rete attraverso il Web Aumento esponenziale dei siti Web da 3,3 milioni di domini nel ‘98 a 33 milioni di domini nel 2001 La crescita dell’esplorazione in rete da parte degli utenti finali Fonte NUA 2002 Introduzione - Problematiche Problema: L’aumento di dati e di informazioni in relazione anche all’elevato numero di utenti del Web comporta il problema della ricerca di informazioni in specifici domini. Problemi dell’utente inerenti la ricerca: • Attuale conformazione delle pagine Web • Limitati strumenti di ricerca (navigazione o parole chiavi) • Difficoltà nell’esprimere con termini efficaci e sintetici l’informazione Studi e ricerche: • Accesso a dati strutturati (DBMS) tramite Web (Web-DB) • Miglioramento delle interfacce uomo-macchina per la ricerca di informazioni on-line R&S: Implementazione di un sistema client/server con interfaccia iconica, sperimentato e testato in ENEA, per effettuare interrogazioni a RDBMS remoti tramite Web attraverso le tecnologie Java WEB-DB - Struttura generale Web Browser Web Server DBMS CGI Network Gutierrez. “Web Database Development”. Prentice Hall 1999 Tecnologie di integrazione Uso dei Web-DB Vantaggi: Svantaggi: •Accesso a basi dati remote •Lunghi tempi trasferimento dati col il solo web browser •Creazione siti dinamici (servizi, e-commerce, ecc.) multimediali (lentezza rete) •Sicurezza Attività scientifiche • Supporto durante l’attività di ricerca WEB-DB • Collaborazione con altri enti o organizzazione • Presentazione dei risultati di ricerca Campi di applicazione Results DB Science Community Web Research Center Web Server Experiments DB E-commerce • Catalogo prodotti • Gestione clienti e transazioni on-line Transactions DB Customer PC Web On-line Store Web Server Products DB Sistemi di interrogazione visuali a basi di dati - Tipologie di interfaccie I Visual Query System sono sistemi per l’interrogazione di basi di dati che fanno uso di rappresentazioni visuali per descrivere il dominio di interesse ed esprimere delle richieste ad esso correlate [CATARCI, LEVIALDI 95]. L’interfaccia oggi più diffusa nel Web è la form di inserimento di parole chiave sui campi. L’utente digita nelle aree di testo le parole da ricercare Select author,… From Biblio Where …. Stringa SQL Elenco Libri L’utente attiva l’interrogazione tramite un doppio click sull’icona Iconic Visual Query System Server (IVQSS) - Sperimentazione dell’interfaccia iconica nella interrogazione a basi di dati in rete. Sistemi di interrogazione visuali a basi di dati – Studio Iconico Un'icona è una forma percettibile alla quale una comunità di utenti assegna un significato in modo che essa possa utilizzarsi per la comunicazione umana ed il ragionamento.[MUSSIO 86] Analogica Marylin Panda Metaforica Home page Giustizia Simbolica Cerca di riprodurre fedelmente ciò che l’occhio vede. Granchio Girasole Descrive un contesto con un altro contesto. Search the Web Accesso a Internet Usa segni che in un determinato contesto hanno un particolare significato. H2O Simboli stradali Lanterna femmina maschio acqua Fontana, Levialdi. “L’Immagine e La Conoscenza”, 1995 IVQS SERVER - Obiettivi e requisiti utente Obiettivi: Sviluppare un nuovo sistema client/server a partire dal sistema client IVQS (Valeri 1999) Sperimentazione del server come strumento per accedere a DB e fornire servizi WEB Sistema attivabile tramite Web Browser senza installazione da parte dell’utente Analisi della effettività, efficienza e qualità del prototipo realizzato (usabilità) Analisi dei requisiti utente: • Richieste organizzative (corso d’apprendimento, punto di consulenza, ecc.) • Richieste generali (facilità d’uso, robustezza, chiarezza nei messaggi, ecc.) • Richieste funzionali (uso del mouse, uso della tastiera, icone, ecc.) • Richieste tecniche (indipendenza dal SO, velocità di downloading, ecc) Analysis of Users, Tasks and Usability, Goals Surveys IVQS SERVER Metodologia di progettazione I Generation prototype Surveys, Expert II Generation prototype Surveys, Expert, Controlled Experiments, Direct Observation, ecc. III Generation prototype Surveys, Expert, Controlled Experiments, Direct Observation, ecc. Final version Surveys, Expert, Controlled Experiments, Direct Observation, ecc. Bargellini, Fontana, Levialdi e altri . “VENUS: Experimentation at Pilot site”. ENEA RT 1995 Iconic Visual Query System Server (IVQSS). E’ un sistema sviluppato con la JVM SDK1.3, che permette l’interrogazione a RDBMS diversi tramite web con interfaccia iconica e la personalizzazione della visualizzazione dei risultati. I principali servizi offerti sono: • Servizio di presentazione dei risultati di una interrogazione in tempo reale, via email e nel corso di successivi collegamenti; • Gestione delle interrogazioni tipiche (più richieste) per la preparazione preventiva e automatica di risultati da fornire direttamente agli utenti (formato XML); • Repository di query predefinite cui possono far riferimento gli utenti; • Gestione di pagine dinamiche di siti Web per mezzo di file HTML/XML generati da IVQSS e inseriti in directory predefinite del Web Server. Tale servizio è offerto ad altri siti Web esterni. Utente INTERNET Servizio accessibile da tutti e da tutte le piattaforme IVQSS Java Application Server Remote DBs IVQS SERVER - Architettura generale Client Server Applet IVQSS (in esecuzione) Application Server Remote DB Web Browser Web Server Remote DB Network IVQSS presenta una architettura client/server three tier con application server • Client Side: IVQSS applet Java • Server Side: Java Application Server • Comunicazione client/server: tramite RMI Login/ Logout User Data IVQS SERVER Architettura interna Query Manager Favourite Queries Dynamic Icons Icon Editor Query Generator Query Executor Preferences DB Result Display WEB Lato client Remote DB (Oracle) Remote DB (Access) User Manager Login/ Logout IVQS SERVER Architettura interna Query Manager Repository Manager Lato server Transaction Manager Kernel Maintenence XML Manager Statistic Manager Email Manager Ripristino User Manager IVQS SERVER Architettura interna Query Manager Repository Manager Lato server Login/ Logout Transaction Manager Kernel Kernel Modulo principale che dirige gli altri. ChiamaMaintenence in causa i vari moduli quando necessario e si occupa della loro interazione. XML Manager Statistic Manager Email Manager Ripristino User Manager IVQS SERVER Architettura interna Query Manager Repository Manager Lato server Login/ Logout Transaction Manager Kernel User Manager Gestisce il profilo personale dell'utente Maintenencealla sua interfaccia e i dati relativi grafica personalizzata. XML Manager Statistic Manager Email Manager Ripristino User Manager IVQS SERVER Architettura interna Query Manager Repository Manager Lato server Login/ Logout Transaction Kernel Query Manager Manager Gestisce le interrogazioni depositate nella base dati di servizio. Maintenence Individua le interrogazioni tipiche e genera i file XML contenenti i risultati. XML Manager Statistic Manager Email Manager Ripristino User Manager IVQS SERVER Architettura interna Query Manager Repository Manager Lato server Login/ Logout Transaction Manager Kernel Repository Manager PermetteMaintenence all’utente di usufruire del deposito di interrogazioni tipiche. XML Manager Statistic Manager Email Manager Ripristino User Manager IVQS SERVER Architettura interna Query Manager Repository Manager Lato server Login/ Logout Transaction Manager Kernel XML Manager Crea, cancella, modifica file XML. Maintenence Si occupa, inoltre, della conversione dei file XML in formato HTML. XML Manager Statistic Manager Email Manager Ripristino User Manager IVQS SERVER Architettura interna Query Manager Repository Manager Lato server Login/ Logout Transaction Manager Kernel Email Manager Crea e spedisce messaggi di posta Maintenence elettronica in formato testuale con allegati file XML o HTML. XML Manager Statistic Manager Email Manager Ripristino User Manager Login/ Logout Query Manager Login/Logout Gestisce la verifica dell’esistenza dell'utente nella base datiRepository di servizio Manager Oracle in base a userID e password forniti dall'utente Transaction Manager Kernel IVQS SERVER Architettura interna Maintenence XML Manager Statistic Manager Email Manager Ripristino Lato server User Manager Login/ Logout Query Manager Transaction Manager Gestisce il monitoraggio delle Repository richieste di connessione al server e Manager delle transazioni con i client. Crea un file di log in formato XML Transaction Manager Kernel IVQS SERVER Architettura interna Maintenence XML Manager Statistic Manager Email Manager Ripristino Lato server User Manager Login/ Logout Query Manager Maintenence Effettua opere di manutenzione del Repository server, quali: Manager Cancellazione file scaduti, Cancellazione dati obsolescenti da DB Transaction Manager Kernel IVQS SERVER Architettura interna Maintenence XML Manager Statistic Manager Email Manager Ripristino Lato server User Manager Login/ Logout Query Manager Statistic Manager Costruisce grafici a barreRepository che Manager rappresentano le attività del sistema. Il grafico è in formato Gif. Transaction Manager Kernel IVQS SERVER Architettura interna Maintenence XML Manager Statistic Manager Email Manager Ripristino Lato server User Manager Login/ Logout Query Manager Ripristino Ripristina da errori nella Repository comunicazione e da eventuali Managercrash facendo uso di un file di log in formato XML Transaction Manager Kernel IVQS SERVER Architettura interna Maintenence XML Manager Statistic Manager Email Manager Ripristino Lato server IVQS SERVER - Comunicazione Client/Server La comunicazione Client/server si basa sul meccanismo Java Remote Method Invocation (RMI) RMI è un sistema basato su oggetti distribuiti I client sono isolati dall'implementazione dei servizi, in quanto l'esecuzione del codice avviene esclusivamente sul server RMI presenta diversi vantaggi: • È semplice da capire e usare (a differenza di CORBA); • È 100% pure-Java (a differenza di CORBA); • Snellisce il lavoro del progettista e dello sviluppatore poiché non si deve progettare un protocollo di comunicazione • Fornisce meccanismi di garbage collection (a differenza di CORBA); Inoltre ci ha permesso di raggiungere degli obiettivi che ci eravamo prefissi, ovvero: • La comunicazione è affidabile; • Abbiamo realizzato un Thin - Client; • I tempi di attesa degli utenti sono diminuiti. IVQS SERVER Menù-bar Area di gestione delle icone di interrogazione Consolle Comandi per la Gestione delle Icone Area delle interrogazioni peferite Consolle Comandi Preferiti Area delle Icone Dinamiche (entità) Consolle Comandi Icone Dinamiche Specifiche dell’interfaccia Area Visualizzazione Risultati Consolle Tipo di Visualizzazione (Tabella-Scheda) Macchine di sviluppo e test: 2 Intel Pentium III 1000 dual processor/ Windows 2000 server Intel Pentium IV 1500 / Windows 2000 P Intel Pentium IV 1800 / Linux RH 7.3 Sun Sparc / Unix Solaris 2.7 IVQS SERVER Il Pilot Center Strumenti software: J2SDK v1.4 e J2EE 1.3 Forte for Java CE v2.0 IDS Server v3.5.6 JMF v2.1 Figure professionali: Responsabile sala di calcolo, centro di calcolo e reti Matematici Ricercatori in IT IVQS SERVER Riepilogo Studio delle tecnologie Obiettivi e Requisiti utente Metodologia di progettazione Implementazione e validazione Risultati di sperimentazione Futuri sviluppi Icone di sistema IVQS SERVER Query Repository Misura della soddisfazione utente Funzione • indice generale di accettazione dell’utente con un buono grado di usabilità • velocità di esecuzione e di presentazione dei risultati efficiente Result Display Icon Editor Query Generator Dynamic Icons Favourite Queries Query Manager 6.5 7 7.5 8 8.5 giudizio Circa 30 utenti scelti sulla base della metodologia di validazione ENEA/VENUS: utenti casuali (esterni al laboratorio). Uso occasionale (scelti soprattutto nel contesto ENEA.) utenti professionali: uso inerente alla propria attività lavorativa. utenti esperti. conoscitori del sistema o esperti in informatica (studenti) 9 9.5 IVQS SERVER - Conclusioni e futuri sviluppi Completa migrazione verso la J2EE per una totale integrazione con il WWW Uso di server dedicati: • alle basi di dati • all’utenza Ottimizzazione della memorizzazione delle strutture dati necessarie per il profilo utente attraverso l’uso di basi di dati ad oggetti o relazionali facendo uso di strutture dati complesse, introdotte dal JDBC 2.0 (Clob, Blob, Array) In termini di Interfaccia: Interrogazioni dirette dai campi delle card Icone dinamiche gestite tramite una matrice (massimo quattro entità sovrapponibili) Interrogazioni di rifinitura iterativa sui risultati IVQS SERVER – last Conferences Presentazione di IVQSS al: Denver Colorado, USA, 24-29 Giugno 2002 DEMO ON - LINE