1 di 15 Università degli studi di Modena e Reggio Emilia Mail Configurator: un’applicazione ad...
-
Upload
immacolata-farina -
Category
Documents
-
view
216 -
download
4
Transcript of 1 di 15 Università degli studi di Modena e Reggio Emilia Mail Configurator: un’applicazione ad...
1 di 15
Università degli studi di Modena e Reggio Emilia
Mail Configurator: un’applicazione ad agenti mobili basata su ruoli dinamici
Correlatori:
Ing. Giacomo Cabri
Ing. Luca Ferrari
Tesi di Laurea di:
Claudio Chiossi
Relatore:
Chiar.mo Prof. Letizia Leonardi
2 di 15
Scopo della tesi
Realizzazione di un’applicazione che consenta la registrazione automatica
di account di posta elettronica utilizzando la tecnologia ad agenti
mobili e una infrastruttura di interazione basata su ruoli dinamici
3 di 15
Agenti e Ruoli
PiattaformaPiattaformaPiattaforma Piattaforma
Autonomia
Mobilità
Eterogeneità
Un ruolo rappresenta un’insieme di capacità e di comportamenti che un agente assume al fine di portare a termine i suoi 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
4 di 15
XML-based notation
Role-based interaction model
BRAIN framework
Interaction infrastructure
(implementation A)
Interaction infrastructure
(implementation B)
…
XML-based notation
Role-based interaction model
BRAIN framework
Interaction infrastructure
(implementation A)
Interaction infrastructure
(implementation B)
…
XML-based notation
Role-based interaction model
BRAIN framework
Interaction infrastructure
(implementation A)
Interaction infrastructure
(implementation B)
…
XML-based notation
Role-based interaction model
BRAIN framework
Interaction infrastructure
(implementation A)
Interaction infrastructure
(implementation B)
…
XML-based notation
Role-based interaction model
BRAIN framework
RoleX RoleSystem …
AgentINteractionsLe infrastrutture di interazione: implementano il modello di BRAIN forniscono meccanismo di azioni-eventi abilitano l’agente ad assumere/usare/rilasciare un ruolo gestiscono i ruoli
Un modello di interazione basato sui ruoli: definisce un ruolo come un insieme di capacità comportamenti attesi
un livello XML: Interoperabilità fra diversi sistemi Differenti viste della stessa informazione sfruttando XSL Leggibilità da parte degli agenti e dei programmatori
B. R. A. IN.BehaviouralRole
Correntemente ci sono due implementazioni:
• RoleSystem (2002): basato su registrazione agenti-ruoli
• RoleX (2003): basato su assunzione dinamica di ruoli da parte di agenti
La nostra applicazione è stata sviluppata utilizzando
RoleX
Il framework BRAIN
RoleX:RoleX: middleware Java da anteporre alla piattaforma middleware Java da anteporre alla piattaforma ad agenti mobili. Fornisce servizi orientati all’uso dei ad agenti mobili. Fornisce servizi orientati all’uso dei ruoli oltre ad una comunicazione event-driven.ruoli oltre ad una comunicazione event-driven.azioni
eventi
5 di 15
Assunzione dei ruoli in RoleX
Role Loader
role
Agente manipolato
Agente originaleCatalogo dei ruoli
Fusione del bytecode del ruolo con quello dell’agente
il ruolo e l’agente diventano una singola entità
Ruolo: Interfaccia più Classe Java e descrittore in XML
6 di 15
L’applicazione Mail Configurator
L’utente fornisce le proprie preferenze all’applicazione riguardo alla posta elettronica.
L’applicazione si occupa di registrare presso un mail provider un account che le soddisfi.
In caso di successo, il client di posta dell’utente viene automaticamente configurato.
Requisiti Soluzioni
Autonomia di esecuzione Agenti: user agent e mail provider agent
Necessità di interazione Mobilità dello user agent
Diversificazione operazioni/interazioni
Ruoli assunti dinamicamente:lo user agent assume tre ruolidiversi
7 di 15
Agenti utilizzati
User Agent: si occupa della sottoscrizione dell’account utente.
Porta con sé le preferenze dell’utente e i parametri dell’account sottoscritto.
Mail Provider Agent: si occupa di amministrare il sistema mail provider.
Riceve le richieste dagli user agent ed eventualmente
sottoscrive gli account.
8 di 15
Il ruolo Data Manager
Questo è il primo ruolo usato, viene assunto dallo user agent per acquisire i dati dell’utente
Data manager
HOME SITEUser
user agent
role
client di posta
user’s data
9 di 15
Mobilità da client a mail provider
HOME SITE MAIL PROVIDER SITE
user agent mail provider agent
user’s data
10 di 15
I ruoli Subscriber e Administrator
La comunicazione fra gli agenti avviene tramite scambio di eventi
MAIL PROVIDER SITE
AdministratorSubscriber
user agent mail provider agent
user’s dataparameter
11 di 15
Mobilità da mail provider a client
HOME SITE MAIL PROVIDER SITE
user agent mail provider agent
parameter
12 di 15
Il ruolo Parameter Setter
Mediante questo ruolo lo user agent configura il client di posta dell’utente mostrandogli anche i parametri dell’account sottoscritto
Parameter Setter
HOME SITEUser
Parameter
user agent
role
client di posta
13 di 15
Configurazione di un client: KMail
L’agente configura il client Kmail di Linux
14 di 15
Analisi delle prestazioni
Andamenti
0
20000
40000
60000
80000
100000
120000
1 5 9 13 17 21 25 29
Numero di account
Tra
ffic
o d
i re
te
Reg manuale
Reg Mail Configurator
15 di 15
Conclusioni
È stato realizzato un programma per la gestione automatica degli account di posta dell’utente.
La tecnologia ad agenti mobili ha permesso di dotare l’applicazione di un’elevata autonomia.
L’utilizzo dei ruoli ha fornito capacità di adattamento, dinamicità e riutilizzabilità del codice.
Riduzione traffico di rete
Configurazione di altri client sotto Windows e Linux
Sviluppi futuri
L’applicazione può essere estesa sia aggiungendo nuovi ruoli sia modificando quelli preesistenti