La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Progettazione di Dati e Applicazioni per il Web Alessandro Antonini 3676383 Lorenzo Berti 3645918 Lorenzo Maffucci 2734419.

Presentazioni simili


Presentazione sul tema: "Progettazione di Dati e Applicazioni per il Web Alessandro Antonini 3676383 Lorenzo Berti 3645918 Lorenzo Maffucci 2734419."— Transcript della presentazione:

1 Progettazione di Dati e Applicazioni per il Web Alessandro Antonini 3676383 Lorenzo Berti 3645918 Lorenzo Maffucci 2734419

2 Videoteca on-line (1) Si vuole realizzare un'applicazione web che consenta la gestione e la vendita on-line di un catalogo di materiale video Gli utenti esterni (visitatori del sito) possono registrarsi attraverso uno username e una password. Di ogni utente registrato si vogliono conoscere i dati anagrafici (nome, cognome, data e luogo di nascita) ed i suoi recapiti (indirizzo di residenza, numero di telefono, indirizzo e- mail). Anche gli utenti interni (amministratori e responsabili marketing) sono identificati da uno username ed una password Ogni film in catalogo è riconosciuto da un codice, ne vengono specificati titolo, prezzo, anno, paese di produzione, genere, regista, attori principali, trama, durata e locandina (foto)

3 Videoteca on-line (2) Di ogni regista/attore sono disponibili i dati anagrafici (nome, cognome, data e luogo di nascita), la filmografia e una foto Le notizie di vario genere (curiosità, gossip, recensioni, avvertimenti, etc.) relative ai film presenti nel catalogo della videoteca sono identificate da un codice e caratterizzate da un titolo, una data di pubblicazione, una categoria ed una fonte Lutente può acquistare un qualsiasi film presente in catalogo effettuando il pagamento tramite carta di credito. Larticolo sarà quindi spedito al recapito fornito dallautore dellacquisto

4 Schema dei Dati

5 Sottoschema Applicativo (1) Include entità e relazioni che denotano gli oggetti più importanti dell'applicazione Tali oggetti vengono individuati in fase di analisi dei requisiti In una applicazione Web, sono gli oggetti principali cui accedono gli utenti esterni e quelli gestiti dagli utenti interni autorizzati ad amministrarne i contenuti

6 Sottoschema Applicativo (2)

7 Sottoschema di Connessione (1) Include le relazioni che connettono le entità centrali dell'applicazione Dal punto di vista del modello E-R, sono relazioni definite tra entità per esprimere associazioni semantiche Dal punto di vista dell'applicazione Web, sono rappresentati da link e indici per la navigazione tra oggetti

8 Sottoschema di Connessione (2)

9 Sottoschema dAccesso (1) Include le entità e le relazioni aventi il ruolo di facilitatori di accesso Utilizzati per classificare o specificare gli oggetti: Costruendo gerarchie di indici che portano l'utente agli oggetti desiderati Definendo meccanismi di ricerca per parole chiave Raggruppando gli oggetti più significativi in collezioni speciali (es. le offerte del giorno)

10 Sottoschema dAccesso (2)

11 Sottoschema di Personalizzazione (1) Include le entità e le relazioni che descrivono proprietà degli utenti rilevanti per la personalizzazione: dati dei profili utente (es. nome, indirizzo, data dell'ultimo acquisto) dati sui gruppi che rappresentano classi di utenti omogenei relazioni di personalizzazione che specificano diritti di accesso, appartenenze a gruppi o preferenze verso specifici oggetti

12 Sottoschema di Personalizzazione (2)

13 Modello di Ipertesto Fra i siti Internet, giocano un ruolo predominante quelli dinamici, ovvero collegati a basi di dati, con la finalità non solo di pubblicare queste ultime, ma anche di rendere possibile la loro gestione in remoto Lo scopo della modellazione ipertestuale è quello di specificare lorganizzazione di un documento non con una struttura sequenziale, bensì costituito da varie porzioni fra loro logicamente collegate

14 WebML WebML (Web Modelling Language) è un semplice linguaggio di natura grafica in grado di offrire uno schema concettuale di ipertesto, intuitivo e apprezzabile anche da utenti meno esperti Fornisce le primitive per la modellazione ipertestuale, ereditando dal modello E-R lidea di utilizzare concetti semplici ed espressivi e di essere supportato da una notazione grafica intuitiva I costrutti fondamentali di WebML sono le unit, le pagine, i link, le aree e le site view (viste di sito)

15 Unit Elementi atomici che specificano i contenuti di una pagina Web Le pagine vengono costruite assemblando unit di vario tipo Combinando diversi tipi di unit, possono essere modellate pagine di complessità arbitraria Le unit hanno una rappresentazione grafica e una testuale

16 Data Unit Mostra i dati di un singolo oggetto di una determinata entità Proprietà: Nome Sorgente Selettore (opzionale) Attributi da visualizzare

17 Multidata Unit Mostra i dati di un insieme di oggetti di un'entità, ripetendo la presentazione di molte data unit Proprietà: Nome Sorgente Selettore (opzionale) Attributi da visualizzare Clausola di ordinamento (opzionale)

18 Index Unit Mostra un insieme di oggetti di una entità come una lista Proprietà: Nome Sorgente Selettore (opzionale) Attributi da visualizzare Clausola di ordinamento (opzionale)

19 Entry Unit Supporta l'inserimento di dati tramite form Utilizzata per ricevere input dall'utente (es. per effettuare ricerche o login) Proprietà: Nome Campi Proprietà dei campi: nome, tipo, valore iniziale, modificabilità, predicato di validità (es. not null)

20 Link (1) Un link è un collegamento orientato fra due unit o pagine Un link specifica: i possibili percorsi navigazionali fra le pagine le possibili selezioni offerte allutente leffetto dellinterazione dellutente sul contenuto delle unit visualizzate nella pagina I link generalizzano il concetto di ancora, uno strumento attivo per mezzo del quale lutente interagisce con lipertesto

21 Link (2) Nella terminologia WebML, i link che attraversano i confini delle pagine vengono chiamati link inter-pagina, mentre i link che hanno sorgente e destinazione appartenenti alla stessa pagina vengono detti link intra-pagina. Inoltre, i link che trasportano informazioni sono definiti contestuali, altrimenti sono detti non contestuali

22 Link (3) Un parametro del link è un valore associato a un link tra unit, che viene trasportato dalla unit sorgente alla unit di destinazione, per effetto della navigazione del link (può essere anche multi-valore) Un selettore parametrico è un selettore di una unit le cui condizioni si riferiscono a uno o più parametri La sintassi di un parametro di un link richiede una stringa utilizzata allinterno del selettore della unit di destinazione in riferimento al parametro, e unetichetta che indica il contenuto del parametro, sia esso un attributo oppure un campo della unit sorgente del link

23 Link (4) I vari tipi di unit (multidata, index, multi-choice index) differiscono per i parametri associati ai loro link uscenti: index unit: il link uscente permette la selezione di un singolo oggetto multi-choice index unit: è possibile selezionare un sotto-insieme di oggetti multidata unit: è possibile passare soltanto linterno insieme di oggetti visualizzati Vengono definiti dei parametri di output di default per ogni unit in modo che si possono dedurre direttamente dal contesto senza perdita di informazione Analogamente, una tale semplificazione può essere applicata alle condizioni del selettore

24 Link (5) Link contestuale con parametri Semplificazione Il contenuto della unit di destinazione dipende dallinformazione fornita dalla unit sorgente e il trasferimento di questa informazione di contenuto è associata alla navigazione del link Intuitivamente la index unit fornisce lOID della notizia selezionata alla data unit

25 Link (6) Lesempio mostra un selettore costruito utilizzando un ruolo di relazione Tale selettore ([Notizia_Fonte]) restringe linsieme degli oggetti (Fonte) mostrati solamente a quelli collegati tramite il ruolo di relazione ([Notizia_Fonte(NotiziaCorr)]) specificato alloggetto avente OID uguale al parametro dato (NotiziaCorr) Quando il parametro associato al link è il parametro di default, questo può essere omesso anche dal selettore LOID dell oggetto visualizzato dalla Data Unit viene assunto implicitamente come largomento del predicato specificato sul ruolo della relazione

26 Link (7) I parametri dei link possono essere usati anche per la trasmissione di valori inseriti in unentry form La unit Condizioni Ricerca include un singolo campo per inserire una parola chiave; il valore di questo campo viene assegnato come parametro, di nome Parola, al link in uscita dalla entry unit e usato nella condizione del selettore della index unit: in questo modo verranno mostrati solamente i film che contengono la parola chiave inserita dallutente

27 Link (8) Link di trasporto: link utilizzati solamente per passare informazioni contestuali da una unit allaltra abilitando solamente il passaggio di parametri e non la navigazione dellutente Quando si accede alla pagina, sia la data unit (Dettagli Film) che la index unit (Elenco Notizie) mostrano il loro contenuto, ma per il link non viene visualizzata alcuna ancora

28 Pagine Costituiscono l'interfaccia fornita all'utente Tipicamente contengono diverse unit, raggruppate per comunicare concetti ben definiti

29 Site View Costrutto modulare che racchiude pagine e unit collegate tramite link Rappresenta un ipertesto coerente per soddisfare un insieme ben definito di requisiti Esempio: utenti generici di un sito vs. amministratori del sito

30 Aree Site view complesse possono essere decomposte gerarchicamente in aree Le aree sono gruppi di pagine con uno scopo omogeneo

31 Pagina Home La pagina home è la pagina di default del sito o che viene presentata dopo che l'utente ha effettuato il login È unica all'interno della site view

32 Pagina di Default La pagina di default è la pagina presentata di default quando si accede all'area che la racchiude È unica all'interno di tale area

33 Pagina Landmark Una pagina landmark è raggiungibile da tutte le altre pagine o aree all'interno del modulo che la racchiude (site view o super-area) Riduce significativamente il numero di link da disegnare

34 Aree di Default e Aree Landmark I concetti di default e landmark possono essere estesi anche alle aree L'area di default è la sotto-area cui si accede di default quando si accede alla super-area che la contiene Un'area landmark è un'area implicitamente raggiungibile da tutte le altre pagine o aree della site view in cui è racchiusa Stessa notazione delle pagine

35 Site View Utente Casuale Gli utenti casuali appartengono alla categoria degli utenti esterni, ovvero i visitatori del sito Non si conoscono i dati relativi agli utenti casuali Gli utenti casuali hanno diritti di sola lettura

36

37 Site View Utente Registrato Anche gli utenti registrati appartengono alla categoria degli utenti esterni Gli utenti registrati hanno la possibilità di accedere al servizio di acquisto on-line tramite carta di credito

38

39 Site View Responsabile Marketing I responsabili marketing appartengono alla categoria degli utenti interni, ovvero i dipendenti dellazienda che fornisce il servizio di videoteca on-line I responsabili marketing hanno diritto di scrittura sul catalogo della videoteca

40

41 Site View Amministratore Anche gli amministratori del sito web appartengono alla categoria degli utenti interni Gli amministratori hanno diritto di scrittura su le notizie relative ai prodotti in catalogo Gli amministratori hanno inoltre il compito della gestione (abilitazione e cancellazione) di tutti gli utenti registrati presso il sito web

42

43 Semplificazione (1) Nelle site view relative agli amministratori ed ai responsabili marketing abbiamo effettuato delle semplificazioni Infatti per ogni notizia (per gli amministratori) o film (per i responsabili marketing) che viene creato devono essere definite, qualora già non lo siano, le sue corrispondenti istanze delle entità categoria e fonte (per le notizie) o genere e regista/attori (per i film)

44 Semplificazione (2) Tutto questo avviene tramite una catena di operazioni di creazione che noi abbiamo preferito omettere per semplicità e brevità

45 Operation Unit (1) Utilizzata in WebML per esprimere dei processi eseguiti in seguito alla navigazione di un link Può avere più link entranti, che forniscono i parametri in ingresso Più operation unit possono essere collegate tramite link per formare una sequenza

46 Operation Unit (2) Ogni operation unit ha un link OK e un link KO Una operation unit può avere un qualsiasi numero di link di trasporto uscenti Una operation unit non visualizza dati, ma esegue solo dei processi come effetto della navigazione di un link

47 Create Unit Permette di creare una nuova istanza di unentità Solitamente, linput della create unit proviene da una entry unit I valori in ingresso vengono usati per costruire un nuovo oggetto a partire dalle assegnazioni specificate

48 Delete Unit Permette di cancellare uno o più oggetti di una determinata entità Lutente sceglie un singolo oggetto (o un insieme di oggetti) da cancellare Gli OID di tali oggetti vengono associati ai parametri dei link entranti nella delete unit

49 Create/Delete Unit: esempio

50 Login Unit Ha due parametri fissi (nome utente e password), normalmente forniti da una entry unit Controlla la validità dellidentità dellutente Se il controllo ha successo, porta lutente nella propria home page Se il controllo fallisce, porta lutente in una pagina di errore

51 Login Unit: esempio

52 Operazioni generiche: addebito su carta di credito Oltre alle operation unit predefinite, WebML permette al progettista di definire operazioni generiche Esempio: addebito su carta di credito Loperazione riceve in ingresso i dettagli dellacquisto Stabilisce se la transazione è andata a buon fine o è fallita

53 Addebito su carta di credito: esempio


Scaricare ppt "Progettazione di Dati e Applicazioni per il Web Alessandro Antonini 3676383 Lorenzo Berti 3645918 Lorenzo Maffucci 2734419."

Presentazioni simili


Annunci Google