Università degli studi di Modena e Reggio Emilia Un approccio per sviluppare applicazioni di E-Democracy basato su ruoli per agenti mobili Relatore: Tesi di Laurea di: Prof.ssa Letizia Leonardi Marco Panari Correlatori: Ing. Giacomo Cabri Ing. Luca Ferrari 1/15 Definizione • E-Government: uso delle moderne tecnologie di informazione e comunicazione da parte del Governo per migliorare in maniera significativa i processi amministrativi e democratici E-Democracy l’uso delle tecnologie a favore della democrazia Informazione E-Vote Discussione 2/15 Scopo della tesi Realizzare un’applicazione che tramite dispositivi mobili permetta a più cittadini di partecipare ad una convention (dibattito) offrendo loro la possibilità di esporre le proprie opinioni, ascoltare quelle degli altri e votare per il discorso ritenuto più valido 3/15 Differenze rispetto lo stato dell’arte • Dispositivi portatili (palmari, PDA) fornisce maggiore libertà di utilizzo • Comunicazioni wireless (protocollo 802.11) no cablaggio • Tecnologia ad agenti mobili basata su approccio a ruoli adatto a dispositivi mobili 4/15 Agenti e Ruoli Agenti Adattabilità Piattaforma Piattaforma Piattaforma Piattaforma Socialità Mobilità Ruoli un’insieme di capacità e di comportamenti che possono essere assunti dall’agente consentendogli di portare a termine i propri compiti Vantaggi: Riusabilità: i ruoli permettono di separare gli aspetti algoritmici da quelli di interazione Sicurezza: i ruoli permettono di applicare in modo semplice agli agenti politiche locali e quindi specifiche per ogni piattaforma 5/15 The BRAIN framework BRAIN framework BRAIN BRAIN framework framework infrastrutture di Role-based Role-based interaction interaction model model interazione: Role-based interaction model gestiscono i ruoli XML-based XML-based notation notation abilitano l’agente ad XML-based notation Interaction Interaction assumere/usare/rilasciare RoleSystem RoleX infrastructure infrastructure (implementation A) (implementation B) un ruolo Interaction Interaction infrastructure (implementation A) infrastructure (implementation B) … … … RoleX: middleware Java da anteporre alla piattaforma ad agenti mobili che consente un’assunzione dinamica dei ruoli e una comunicazione event-driven. 66/15 Assunzione dei ruoli in RoleX Ruolo: Interfaccia + classe di implementazione Assunzione altamente dinamica Agente originale Catalogo dei ruoli Agente manipolato Role Loader ruolo 7/15 Implementazione della convention middleware Application Application Menu convention tema: Inquinamento 1)assumi ruolo participant 2)assumi ruolo speaker 3)assumi ruolo voter 4)richiedi informazioni scegli: _ RoleX Canale Palmare modello iPAQ 3660 Sistema operativo Linux Familiar 0.6 Server che esegue RoleX Server 8/15 Fasi della convention Necessità di un moderatore Chair Fase Pre-discussione Discussione Votazione Risultati votazione Azioni prenotazione, richiesta informazioni prenotazione, richiesta informazioni, discorso richiesta elenco candidati, votazione richiesta risultati 9/15 Ruoli Operazione di voto speak participant Discorsi, Informazioni Convention speaker participant speaker voter Richiesta informazioni voter 10/15 Azioni Chair start speak! participant speakert participant start speak! bla bla bla… participant speaker speakert Convention bla bla bla… RoleX Discorso 11/15 Azioni Chair participant voter ricevuta participant Voto + certificato voter speakert Convention voter RoleX Voto 12/15 Chair chair 13/15 Conclusioni • Sono state studiate i problemi e le potenzialità legati all’utilizzo di agenti mobili sui palmari • È stato verificato come l’unione degli approcci ad agenti mobili e a ruoli si presti bene a scenari altamente dinamici come possono essere quelli legati all’E-Democracy Agenti compatti e trasportabili Agenti altamente adattabili 14/15 Sviluppi futuri • • • • Utilizzo del protocollo GSM/GPRS Passaggio ad una convention vocale Log della convention Possibilità di scaricare informazioni 15/15 16/15 Dettagli implementativi • Palmare iPAQ COMPAQ 3660 – 16Mbyte flash 64Mbyte RAM • SO: Linux Familiar 0.6 kernel 2.4.18 • JVM BlackDown compatibile con la versione 1.3 di Java 2 17/15 The BRAIN framework BRAIN framework BRAIN framework Role-based interaction model Role-based interaction model XML-based notation XML-based notation Interaction infrastructure (implementation A) Interaction infrastructure (implementation A) Interaction infrastructure (implementation B) Interaction infrastructure (implementation B) … … un modello di interazione basato sui ruoli: definisce un ruolo come azioni un insieme di capacità eventi comportamenti attesi 618/15 The BRAIN framework BRAIN framework Role-based model Role-basedinteraction interaction model XML-based notation notation XML-based Interaction Interaction infrastructure infrastructure (implementation A) (implementation Interaction infrastructure (implementation B) … un livello XML: Interoperabilità fra diversi sistemi Differenti viste della stessa informazione sfruttando XSL Facilmente comprensibile anche dai programmatori 619/15 The BRAIN framework BRAIN framework Role-based interaction model XML-based notation Interaction infrastructure (implementation A) Interaction infrastructure (implementation B) … B. Role R. Agent A. INteractions IN. Behavioural 20/15 The BRAIN framework Correntemente ci sono due implementazioni: BRAIN BRAIN framework framework • RoleSystem (2002): basato su registrazione agenti-ruoli Role-based Role-based interaction interactionmodel model • RoleX (2003): basato su assunzione dinamica di ruoli da parte di agenti XML-based XML-based notation notation La nostra applicazione è stata sviluppata utilizzando RoleX Interaction Interaction RoleX infrastructure infrastructure (implementation A) A) (implementation Interaction Interaction RoleSystem infrastructure infrastructure (implementationB) B) (implementation … … 621/15 The BRAIN framework infrastrutture di interazione: gestiscono i ruoli abilitano l’agente ad assumere/usare/rilasciare un ruolo BRAIN BRAIN framework framework Role-based model Role-based interaction interaction model XML-based XML-based notation notation Interaction Interaction infrastructure infrastructure (implementation (implementation A) A) Interaction Interaction infrastructure infrastructure (implementation (implementation B) B) RoleX: middleware Java da anteporre alla piattaforma ad agenti mobili che consente un’assunzione dinamica dei ruoli e una comunicazione event-driven. … 22/15