Università degli studi di Modena e Reggio Emilia
Mail Configurator: un’applicazione ad
agenti mobili basata su ruoli dinamici
Relatore:
Tesi di Laurea di:
Chiar.mo Prof. Letizia Leonardi
Claudio Chiossi
Correlatori:
Ing. Giacomo Cabri
Ing. Luca Ferrari
1 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
2 di 15
Agenti e Ruoli
 Autonomia
 Mobilità
Piattaforma
Piattaforma
Piattaforma
Piattaforma
 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
3 di 15
Il framework BRAIN
Correntemente ci sono due
implementazioni:
BRAIN framework
BRAIN framework
framework
Role-based
interaction model
Role-basedinteraction
Role-based
model
Role-based interaction model
• RoleSystem (2002): basato
su registrazione agenti-ruoli
XML-based notation
notation
XML-based
XML-based
notation
XML-based notation
• RoleX (2003): basato su
RoleX
Interaction
assunzione dinamica di ruoli da
Interaction
infrastructure
parte di agenti
(implementation A)
Interaction
La nostra applicazione
è
infrastructure
(implementation A)
stata sviluppata utilizzando
Interaction
infrastructure
(implementation B)
RoleSystem
Interaction
Interaction
infrastructure
infrastructure
(implementation
(implementation B)
B)
…
…
RoleX
Behavioural
B. Role
R. Agent
A. INteractions
IN.
RoleX:
Le
Un
un
infrastrutture
livello
modello
middleware
XML:
di interazione
di
Java
interazione:
da anteporre
basato sui
allaruoli:
piattaforma
definisce
ad
implementano
Interoperabilità
agenti mobili.
un ruolo
ilFornisce
fra
modello
come
diversi
servizi
disistemi
BRAIN
orientati all’uso dei
azioni sfruttando XSL
 Differenti
ruoli
forniscono
un
oltre
insieme
adviste
meccanismo
una
di capacità
della
comunicazione
stessa
di azioni-eventi
informazione
event-driven.
 Leggibilità
abilitano l’agente
comportamenti
da parte
attesi
addegli
assumere/usare/rilasciare
agenti eeventi
dei programmatori
un ruolo
4 di 15
 gestiscono i ruoli
Assunzione dei ruoli in RoleX
Ruolo: Interfaccia più Classe Java e descrittore in XML
Fusione del bytecode del ruolo con quello dell’agente
 il ruolo e l’agente diventano una singola entità
Agente originale
Catalogo
dei ruoli
Agente manipolato
Role Loader
role
5 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 ruoli
diversi
6 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.
7 di 15
Il ruolo Data Manager
Questo è il primo ruolo usato, viene assunto dallo
user agent per acquisire i dati dell’utente
user’s data
user agent
Data manager
User
role
HOME SITE
client di posta
8 di 15
Mobilità da client a mail provider
user agent
mail provider agent
user’s data
HOME SITE
MAIL PROVIDER SITE
9 di 15
I ruoli Subscriber e Administrator
La comunicazione fra gli agenti avviene tramite
scambio di eventi
user’s data
parameter
mail provider agent
user agent
Subscriber
Administrator
M AIL PROVIDER SITE
10 di 15
Mobilità da mail provider a client
user agent
mail provider agent
parameter
HOME SITE
MAIL PROVIDER SITE
11 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
user agent
Parameter Setter
User
role
HOME SITE
client di posta
12 di 15
Configurazione di un client: KMail
L’agente configura il client Kmail di Linux
13 di 15
Analisi delle prestazioni
Andamenti
120000
Reg manuale
100000
Reg Mail Configurator
Traffico di rete
80000
60000
40000
20000
0
1
5
9
13
17
21
25
29
Numero di account
14 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.
Sviluppi futuri
L’applicazione può essere estesa sia aggiungendo nuovi
ruoli sia modificando quelli preesistenti
 Riduzione traffico di rete
 Configurazione di altri client sotto Windows e Linux 15 di 15
Scarica

Presentazione (PPT