Top Banner
SAMOA Francesco Ferri 0000249016 A Semantic Context-aware Middleware-level Solution to Support AnyTime and Anywhere Social Networks
19

SAMOA

Mar 18, 2016

Download

Documents

isanne

SAMOA. A Semantic Context-aware Middleware-level Solution to Support AnyTime and Anywhere Social Networks. Francesco Ferri 0000249016. Reti sociali. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SAMOA

SAMOAFrancesco Ferri0000249016

A Semantic Context-aware Middleware-level Solution to Support AnyTime and Anywhere Social Networks

Page 2: SAMOA

Reti sociali.

Peter Steiner, una vignetta

“Nella teoria delle reti sociali (social network theory) la società è vista e come rete di relazioni, più o meno estese e strutturate. Il presupposto

fondante è che ogni individuo si relaziona con gli altri e questa sua interazione plasma e modifica il

comportamento di entrambi.”

Reti sociali: cambio di contesto.

Page 3: SAMOA

SAMOA e le reti sociali.

Manager

In SAMOA specifichiamo due ruoli: Manager e utenti .

Utente -> può manifestare interesse ad entrare nella rete sociale; il manager lo accoglierà se presenta i requisiti necessari.

Manager -> definisce la dimensione e stabilisce i criteri di appartenenza della rete sociale.

Manager

1) 2)

Manager

3)

Page 4: SAMOA

I profili.SOMOA contempla l’uso di tre profili: User profile (UP), Place profile (PP) e Discovery profile (DP).

2.PP

3.DP

1.Utenti

Page 5: SAMOA

I profili.

<Attività: Arte> <Preferenza: Leonardo> Soggetto: uomo. Tecnica: disegno. </Preferenza> </Attività><Attività: Degustazione> <Preferenza: Vini> Tipo: rosso. % alcool: <10°. </Preferenza> <Preferenza: Formaggi> Stagionatura: >1 anno. </Preferenza></Attività> UP

PP

DP

<Attività: Arte></Attività><Attività: Acquisto libri></Attività>

<Attività: Arte> <Preferenza: Leonardo> Tecnica: disegno. </Preferenza> <Preferenza: Caravaggio> Soggetto: storico. Tecnica: olio su tela. </Preferenza></Attività>

!

Page 6: SAMOA

Neighbours Table.

ManagerCliente A

Cliente BCliente D

Cliente E

Cliente F

Cliente C

TimeUUID Add

UuidBUuidA

UuidF… … …

12771212

1579

112.88.75.10

133.99.75.11

180.17.75.13

Cliente non compatibile con

la rete sociale

Neighbours Table

CurrentTime > TimeStamp

Page 7: SAMOA

Two matching algorithms.

1.Place Profile(PP)

2.User Matching Profile(UMP)

3.Valid/invalid member0.UP 0.PP , DP

1.UMP=PP+UP 2.Y/N=UMP+DP

Page 8: SAMOA

<Attività: Arte> <Preferenza: Leonardo> Soggetto: uomo. Tecnica: disegno. </Preferenza> </Attività><Attività: Degustazione> <Preferenza: Vini> Tipo: rosso. % alcool: <10°. </Preferenza> <Preferenza: Formaggi> Stagionatura: >1 anno. </Preferenza></Attività>

<Attività: Musica> <Preferenza: Classica> Strumento: corno francese. </Preferenza></Attività> <Attività: Arte>

<Preferenza: Leonardo> Tecnica: disegno. </Preferenza> <Preferenza: Caravaggio> Soggetto: storico. Tecnica: olio su tela. </Preferenza></Attività>

UP

PP

DP

UP

<Attività: Arte></Attività><Attività: Acquisto libri></Attività>

NO MATCH

La galleria d’arte: un esempio.

BLA BLA

Page 9: SAMOA

SAMOA: un’architettura a livelli

Supporto alla persistenza.

Ricerca di possibili utenti.

Gestione della comunicazione

Gestione dei profili.

Controllo evoluzione rete.

Ricerca di affinità tra utenti.

Page 10: SAMOA

MTMMessage Transport Manager

MTM

Fornisce delle porte di input e di output per trasmissioni broadcast.

Mette a disposizione per i servizi in alto delle porte di input e output per trasmissioni punto-punto.

Gestisce delle code per evitare di perdere messaggi in arrivo da più nodi.

Page 11: SAMOA

L/PMLocation/Proximity Manager

Richiede una porta all’MTM per trasmettere in broadcast il proprio beacon di presenza per segnalare di essere attivo in quella località.

Assegna un UUID all’utente, e lo memorizza nel file personalID.

Si pone in attesa di beacon di presenza altrui, occupandosi di popolare una hashTable di vicini (NeighboursTable). Inoltre gestisce la coda neighboursVariationQueue, per segnalare ai servizi in alto l’entrata di un utente o la sua uscita se viene oltrepassata una soglia di tempo senza ricevere beacon da un nodo.

L/PM

Page 12: SAMOA

assegna/recupera

L/PM

PersonalID.txt

L/PM

TimeUUID Add

UuidBUuidA

UuidF… … …

12771212

1579

112.88.75.10

133.99.75.11

180.17.75.13

Neighbours Table

gestisce

comunica

PM

Page 13: SAMOA

PSNMPlace-dependent Social Network Manager

PSNM

Si occupa di mantenere aggiornato l’insieme degli utenti attivi in quel momento, non gestisce la storia globale della rete sociale stessa.

In caso di variazione di profilo di un utente, questo deve essere sostituito al vecchio.

Coopera in stretto contatto con il PM, il quale a fronte di variazioni della rete sociale informa il PSNM. Ottiene dal PM, l’UUID e l’UP degli utenti attivi.

Page 14: SAMOA

PSNMVerde arrivatoRosso arrivatoGiallo arrivato

Page 15: SAMOA

GSNMGlobal Social Network Manager

GSNM

Gestisce la persistenza degli utenti: mantiene uno storico di tutti gli utenti entrati nella storia della rete sociale.

Mantiene l’informazione dei profili degli utenti: UP, DP e PP.

Verifica la consistenza delle informazioni contenute: tiene traccia di quei profili per cui si conosce l’UP, assegna PP e DP di default se essi mancano.

Page 16: SAMOA

GSNM – Struttura DB

Identificativo univoco dell’utente

Profili coinvolti. Hash.

DP1.txtDP2.txtDP3.txt

PP2.txtPP1.txt

PP3.txt UP3.txtUP2.txtUP1.txt

../ProfileRepository/

Page 17: SAMOA

PMProfile Manager

PM

E’ un servizio centrale in SAMOA, coordina e comunica con tutti gli altri servizi con l’obiettivo di costituire correttamente la rete sociale.

Ottiene dall’ LPM l’informazione di possibili utenti osservando la Neighbour Table.

Avvia e segue il protocollo per inglobare un utente nella rete sociale.Segnala al PSNM ed al GSNM come la rete sociale stà evolvendo: utenti che si connettono/disconnettono, che cambiano profilo, passano le informazioni da memorizzare.

Page 18: SAMOA

SMESemantic Maching Engine

SME

Si occupa del controllo di compatibilità tra il place profile e l’user profile, stabilendo se un utente svolge attività legate al place.

Verifica la compatibilità tra la parte di profilo ottenuta dal precedente controllo per osservare se le preferenze del manager e dell’utente hanno punti di contatto.

Page 19: SAMOA

Scenari di funzionamento.

1.

2.

3.