Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoAngioletta Mauri Modificato 11 anni fa
1
Modellazione concettuale di applicazioni Web personalizzate e context-aware
Stefano Ceri, Florian Daniel, Federico Facca, Maristella Matera Milano – 18 Novembre ‘04 Estensione WebML - WP7.1
2
Supporta personalizzazione lungo due dimensioni
WebML & Adattività Descrizione generale Linguaggio grafico (e testuale) di modellazione per applicazioni Web data-intensive Supporta personalizzazione lungo due dimensioni Contenuti personalizzati rispetto ad utenti Interfacce ipertestuali personalizzate rispetto a gruppi WebML adattativo Personalizzazione dell’applicazione non solo rispetto all’ identità dell’utente, ma anche rispetto al suo contesto. Dimensioni di adattività (cosa vogliamo ottenere?) Adattamento automatico di contenuti Esecuzione automatica di azioni di navigazione o servizi Adattamento automatico dell’ipertesto (site view) Per ulteriori dettagli: rapporto R.7.1.1
3
WebML adattativo: Overview
Contenitori context-aware Pagine “C” presentano comportamento adattativo Aggiornamento pagina tramite meccanismo di refresh automatico Azioni di adattamento: specificano il comportamento adattativo e sono eseguite a ogni refresh automatico Aree “C” permettono di raggruppare operazioni da eseguire per ogni pagina “C” contenuta Contenitori interni ereditano azioni da quelli esterni
4
WebML adattativo: Computo di pagine dinamiche
5
WebML adattativo: Computo di pagine context-aware
6
Esempio: Primo prototipo P.7.1.1 (mese 20)
Strumenti per la produzione di siti Web multicanale personalizzati Scenario di riferimento Portale Agenzia Viaggi: due sotto-scenari Travel Planner (Cefriel/Engineering): ricerca destinazioni e selezione pacchetti viaggio Adattamento della presentazione al contesto Accesso multi-dispositivo Interazione multimodale Travel Assistant (Polimi): informazioni di supporto sul luogo di destinazione Mantenimento modello del contesto Adattamento di contenuti e navigazione
7
Esempio: Modello dei dati
Adattamento di contenuti ed azioni di navigazione automatiche
8
Esempio: Ipertesto adattativo (frammento semplificato)
Adattamento di contenuti ed azioni di navigazione automatiche
9
Esempio: screenshot prototipo
10
Implementazione Prototipo
Runtime Framework WebML Implementazione Java/Struts Paradigma MVC (Model/View/Controller) Prototipo: soluzione esterna Indipendente dal Runtime Framework di WebML Agisce come filtro di richieste HTTP Implementato a mano Sviluppo futuro: soluzione interna Integrazione nel Runtime Framework Implementazione di primitive e logica di computo Generazione automatica del codice
11
Deliverable Mese 24 Valutazione del primo prototipo Accesso ai prototipi Approcci adottati dalle unità coinvolte Dimensioni di valutazione (qualitative) Stabilità Scalabilità Sicurezza/Privacy Uso di risorse (System Requirements) Usabilità Performance generale
12
WP 7.1: I lavori delle unità coinvolte…
Polimi Modellazione concettuale di applicazioni Web adattative (multi-versione): estensione di WebML Personalizzazione di contenuti rispetto al profilo utente Engineering Deployment multi-canale di applicazioni WebML Adattamento della presentazione al canale utilizzato Cefriel Deployment multi-modale Sincronizzazione di due canali di deployment separati
13
WP 7.1: … ed integrazione degli approcci
14
Multimodalità e context awareness
I’m going to talk about an approach we followed in the development of a platform for the delivery of multimodal and ergonomic services Dimostratore MAIS WP 7.1.1: contributo Cefriel
15
Tematiche di interesse Delivery multimodale di ipertesti
Attività Cefriel WP 7.1 Tematiche di interesse Delivery multimodale di ipertesti Progettazione e realizzazione di una piattaforma Che supporti diverse modalità di interazione contemporaneamente anche su dispositivi diversi Per ambienti mobili e nomadici Per applicazioni nuove Delivery context-aware di servizi Per l’erogazione di servizi che si adattino al contesto di fruizione
16
Delivery multimodale: definizioni di riferimento
Vision: “extending the Web to allow multiple modes of interaction” (W3C) Multimodalità per gli ipertesti “Multimodal interaction will enable the user to speak, write and type, as well as hear and see using a more natural user interface than today's single mode browsers” (W3C) Supporto per voce, testo scritto (input e output) e rappresentazione visuale dei contenuti First of all we must decide which kind of applications to erfer to: hypertexts Approccio Server-side Non sono richieste particolari risorse sui dispositivi Non si devono imporre particolari vincoli Semplificare l’uso dei “piccoli” dispositivi portatili Utilizzare più dispositivi contemporaneamente
17
La piattaforma M3L: architettura
M3L Framework M3L documents User Voice gateway TTS ASR VoiceXML Browser Multimodal integrator VoiceXML Servlets HTML browser Developer HTML Visual mode Vocal mode Modello WebML Il multimodal integrator è l’implementazione di un interaction manager (W3C)
18
Servizi web context-aware
Siti Web context-aware OBIETTIVI: Adattare presentazione, navigazione, contenuti al variare delle proprietà dell’ambiente al fine di migliorare l’utilizzo del servizio da parte dell’utente. APPROCCIO: Compliance con WebML tramite utilizzo di properties Gestione di più elementi di contesto riferiti alla particolare situazione Context awareness & situation awareness Esempi di dimensioni del contesto: Dispositivo, Posizione, Stato di movimento, attività, modalità di interazione … SOLUZIONE: Definire delle proprietà di adattamento nella progettazione dell’ipertesto Definire l’ipertesto anche in funzione delle proprietà definite (es. il testo da mostrare se è vera una condizione su una proprietà) Definire delle regole che adattano l’ipertesto (presentazione, navigazione, contenuti, modalità di interazione) in funzione del valore delle variabili di contesto
19
Le proprietà associate al servizio: esempi
Nome proprietà Valori possibili Desktop Palmare Cellulare ... Dispositivo Fermo In movimento ... Stato di movimento Seduto In piedi … Posizione Spare time Attività Working time ... Le dimensioni del contesto abilitano la gestione della situazione
20
ESEMPIO Servizio e-WebML A Si parla “Attributi” di una data unit
SELEZIONE SCROLLING_DETTAGLI MENU_SCELTA Nome rist Indirizzo TO PRENOTAZIONE A Numero Civico Posti disponibili In movimento Menu odierno In movimento Zona Ristorante Ristorante Nome rist SELEZIONA_RIST MENU_SCELTA1 MENU_SCELTA2 DETTAGLI_RIST Indirizzo Numero Civico Si parla “Attributi” di una data unit Tornando al servizio sui ristoranti, il rispetto delle linee guida descritte ha portato ad una classificazione degli attributi. Ad esempio, l’indicazione circa la disponibilità attuale di posti nel ristorante, secondo quanto qui espresso, avviene nel caso in cui l’utente si stia muovendo, idealmente alla ricerca del ristorante stesso; nel caso sia fermo, invece, gli viene fornita l’informazione sulla capienza globale del ristorante. Tutto questo è fatto agendo su un’unica unit. CAPIENZA GLOBALE ad esempio perché l’utente vuole prenotare una cena con tanti invitati! Capienza Desktop Fermo Categoria Posti disponibili Palmare In movimento Menu costo minimo Desktop Zona Ristorante Ristorante Menu odierno Promozione Palmare In movimento Foto LQ Palmare D L Foto HQ Desktop MENU_SCELTA DETTAGLI_PROMO ESEMPIO Zona NEST Ristorante Promozione
21
L’attività Engineering nel WP7
Gabriele Giunta Milano – 11 Novembre 2004
22
Dynamic Presentation Manager: una visione d’insieme
Il Dynamic Presentation Manager (DPM) è un modulo per la generazione adattiva al contesto di pagine di presentazione Le informazioni da presentare sono dati prodotti dalla logica di business, e la presentazione è funzione dei dati contestuali generati dell’infrastruttura di context-sensing. Sia i dati di business sia i dati contestuali sono espressi in formato XML.
23
Schema architetturale del DPM (1/2)
Business Logic Business DB Stylesheet Repository User Communication XSL Engine Agent Servlet Page Formatter Rule Engine Generic Rules Business dependent DPM
24
Schema architetturale del DPM (2/2)
Il DPM è costituito dai moduli: Page Formatter XSL Engine Rule Engine XSL Stylesheet Repository L’XSL Engine realizza la trasformazione XSLT applicando un foglio di stile ai dati di business. Il risultato di questa trasformazione è la pagina di presentazione. Il Rule Engine seleziona il foglio di stile per l’ XSL Engine dopo l’esecuzione delle regole di presentazione. L’ XSL Stylesheet Repository contiene i fogli di stile dell’applicazione da realizzare.
25
Schema funzionale del DPM
Rule Engine Presentation Rules 2 (DATActx) Business data Page Formatter 1 (rXSLTctx,[ PARAMSctx]) 3 (DATAbss) Context data 5 XSL Engine XSLT Repository 6 4 7 ((X)HTML/WML) Presentation Page
26
Le regole di generazione della presentazione (1/2)
I contenuti vengono adattati in funzione del profilo utente dalla logica di business Le regole adattano la presentazione in funzione del: Configurazione del device Dimensione dello schermo Protocollo applicativo (HTTP/WAP) Stato fisico del device Livello di carica della batteria Movimento Regole di presentazione implementate: Resize del font dei widget; Sostituzione dei widget; Scelta dei colori.
27
Le regole di generazione della presentazione (2/2)
Esempio di un’implementazione JESS (defrule PDADeviceRule (START_PRESENTATION) (CONTEXT USER_ID ?user_id) (CONTEXT CHANNEL http) (CONTEXT DEVICE pda) (CONTEXT SCREENSIZE ?screensize) => (assert (PRESENTATION_COMPONENT (id xsltPDA))) (assert (PRESENTATION_COMPONENT_PARAMETER (id xsltPDA) (name displayWidth)(value ?screensize))))
28
Deployment multicanale
Recommendation System per destinazioni turistiche Lo scenario utilizzato è quello relativo alla Preparazione Viaggio (“Scenario in ambito turistico” ). Sono state modellate con WebML+ le seguenti pagine: Planner Home Country Details Travel Package
29
Modellazione dei dati in WebML+
30
Screenshot dell’applicazione multicanale (1/5)
* Interazione iniziale attraverso PC *
31
Screenshot dell’applicazione multicanale (2/5)
* Primo cambio di canale: da PC a PDA *
32
Screenshot dell’applicazione multicanale (3/5)
* Secondo cambio di canale: da PDA a Mobile Phone *
33
Screenshot dell’applicazione multicanale (4/5)
* Adattamento al contesto (im movimento) mediante il resize del font *
34
Screenshot dell’applicazione multicanale (5/5)
* Adattamento al contesto (batteria scarica) mediante l’invio di una mail *
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.