Progettazione dell'ipertesto
La progettazione dell'ipertesto produce la specifica delle site view
e le operazioni di manipolazione dei dati.
Le sorgenti di input della progettazione dell'ipertesto sono:
 lo schema concettuale dei dati, ossia la struttura dei dati
 i requisiti funzionali, che indicano le funzionalità che devono
essere fornite dall'applicazione
 le mappe delle site view, che delineano l'organizzazione degli
ipertesti che devono essere offerti agli utenti
L'output della progettazione è una specifica WebML, una vista ad
alto livello delle interfacce dell'applicazione. Tale specifica è
indipendente dai dettagli implementativi ma è una guida per
l'implementazione.
La progettazione dell'ipertesto procede in modalità top-down,
dall'alto verso il basso attraverso raffinamenti successivi dalla
progettazione preliminare a quella dettagliata.
PROG
-2-
Progettazione ipertesto
Requisiti funzionali
Schema dei dati
Mappa del sito
Progettazione preliminare site view
Identificazione delle aree
Progettazione dettagliata site view
Specifica della visibilità delle aree
Identificazione delle pagine
Specifica dei contenuti delle aree
Specifica della visibilità delle pagine
Specifica WebML delle pagine
Siteview1
Schema WebML delle site view
Area1
Pagina accesso
D
Indice
Accesso
Pagina core
Core
L
Core
PROG
-3-
Progettazione preliminare
La progettazione preliminare:
definisce uno schema della site view ad alto livello, privo di
dettagli
per le aree nelle mappe delle site view viene definito un
livello di visibilità: vengono definite come aree di default,
landmark o interne
per ogni area viene specificato il contenuto specificando
quali elementi dello schema dei dati popoleranno l'area
PROG
-4-
Identificazione delle aree
La prima attività è l'identificazione delle aree:
Input:
 requisiti funzionali
 mappe delle site view
Output:
 la lista delle aree che devono essere sviluppate per le
varie site view
 una prima rappresentazione in WebML di ogni site view
PROG
-5-
Identificazione delle aree (2)
SiteView1
AreaX
AreaY
AreaZ
AreaK
PROG
-6-
Specifica visibilità aree
La visibilità delle aree viene stabilita secondo le seguenti
definizioni:
Area di default: indica che vi si accede “per default”
quando si entra nella site view che la include. Tipicamente
contiene la home page della site view.
Area landmark: indica che l'area è accessibile globalmente
da ogni altra area della site view. Di solito questa proprietà
si traduce in una barra di navigazione che contiene i link a
tutte le pagine di default delle aree landmark.
Area Interna: corrisponde ad una porzione di ipertesto che
può essere raggiunta solo tramite link espliciti posizionati in
altre pagine.
PROG
-7-
Specifica visibilità aree (2)
SiteView1
AreaX
D
AreaY
L
AreaZ
AreaK
L
PROG
-8-
Specifica del contenuto
L'ultimo passo della progettazione è la specifica del
contenuto associato ad ogni area.
Il contenuto di un'area è espresso in termini di frammenti di
ipertesto, che sono classificati come:
 Ipertesti core: pubblicano il contenuto di entità
specifiche o di gruppi di entità che rappresentano gli
oggetti principali (core) dell'applicazione.
 Ipertesti di accesso: supportano varie forme di
accesso ai concetti core.
 Ipertesti di interconnessione: collegano concetti core.
PROG
-9-
Specifica del contenuto (2)


Ipertesti di personalizzazione: sono utilizzati per
definire meccanismi di personalizzazione (es.
autenticazione utente ogestione contenuti
personalizzati).
Ipertesti per la gestione dei contenuti: specificano le
operazioni (es. creazione, cancellazione e modifica di
entità o relazioni).
PROG
- 10 -
Specifica del contenuto (3)
I frammenti di ipertesto dell'area sono rappresentati con una notazione
testuale:
Core(EntitàCore, Componente1, …, ComponenteN) viene
pubblicata l'EntitàCore e le sue entità componenti.
Accesso(EntitàCore,EntitàAccesso1,…,EntitàAccessoN)
indica l'accesso ad una o più istanze di EntitàCore, tramite una
selezione per passi successivi per mezzo delle entità di
categorizzazione (EntitàAccesso1...). Quando le entità di
categorizzazione non sono specificate, il frammento di ipertesto deve
permettere l'accesso diretto all'entità core per mezzo di meccanismi
di ricerca.
Interconnessione(Ruolo1,...,RuoloN) indica la navigazione
dalle istanze di Entità1 alle istanze di EntitàN, dove Entità1 ed EntitàN
sono entità core connesse da una sequenza di ruoli di relazione
Ruolo1, …, RuoloN
PROG
- 11 -
Specifica del contenuto (4)
Crea&Connetti(Entità1,Ruolo1,…,RuoloN) indica la
creazione di una nuova istanza di Entità1 ed eventualmente
la sua connessione ad N altre entità attraverso i ruoli di
relazione Ruolo1,...,RuoloN.
Modifica(Entità1) indica la modifica di istanze di Entità1.
Elimina(Entità1) indica la cancellazione di istanze di
Entità1.
Connetti(Entità1),Disconnetti(Entità1) indicano la
creazione e la cancellazione di istanze del ruolo di relazione
Ruolo1.
Set(InformazioneContesto) indica l'inizializzazione di
parametri globali (tipicamente un attributo), che è
necessario rendere disponibili a tutte le pagine della site
view.
PROG
- 12 -
Specifica contenuto di un'area - esempio
Esempio di specifica dei contenuti per un'area dedicata alla
creazione, cancellazione e modifica di notizie.
Area Notizie_GestioneContenuti
Accesso (Notizia, CategoriaNotizie)
Cancella (Notizia)
Modifica (Notizia)
Crea&Connetti (Notizia, Notizia_CategoriaNotizie)
Set (CategoriaNotizie)
PROG
- 13 -
Acer-Euro: progettazione ipertesto
Analizziamo in dettaglio la progettazione dell'ipertesto per una
porzione limitata dell'applicazione Acer-Euro, cioè la site view per
utenti esterni.
La site view per utenti esterni pubblica contenuti sui prodotti e le
notizie di interesse per gli utenti di una certa nazione.
PROG
- 14 -
Acer-Euro: progetto preliminare site view
Site view utenti esterni
Area home
Set (Nazione)
Accesso (Notizia, CategoriaNotizia)
Accesso (Notizia, NotiziaEvidenziata)
Accesso (Prodotto, GruppoProdotto)
D
Area novità
Accesso (Notizia, CategoriaNotizia)
Core (Notizia)
Interconnessione (Notizia_Prodotto)
L
L
Area prodotti
Accesso (Prodotto, GruppoProdotto, MarchioProdotto)
Core (Prodotto, Vantaggio, Riconoscimento, ConfigurazioneProdotto, Logo,
SpecificaTecnica)
L
PROG
- 15 -
Progettazione dettagliata
La progettazione dettagliata:
è un raffinamento della progettazione preliminare
gli schemi grezzi delle site view sono revisionati fino a farli
diventare una specifica WebML
si seguono i seguenti passi:
 identificazione delle pagine
 specifica della visibilità delle pagine
 specifica del contenuto delle pagine
PROG
- 16 -
Identificazione delle pagine
L'identificazione delle pagine riguarda la suddivisione
di un'area in pagine.
Ad ogni pagina viene associata una porzione dei
contenuti e delle funzioni dell'area che la contiene.
Nella scelta dei contenuti si cerca di ottimizzare
l'usabilità e l'efficacia dell'ipertesto:
 vengono uniti contenuti e funzioni con un alto grado
di coesione
 vengono separati contenuti e funzioni poco correlati
PROG
- 17 -
Visibilità di pagina
La definizione della visibilità di pagina consiste nel marcare ogni
pagina come:
home page: viene presentata all'utente quando accede ad una site
view, è la pagina con i contenuti e i servizi più importanti della site
view o che favoriscono l'accesso ai contenuti di altre pagine
pagina di default: è la pagina presentata all'utente quando entra in
un'area. È la pagina più importante dell'area che fornisce accesso ai
contenuti ed alle funzioni per cui l'area è stata definita
pagina landmark: è raggiungibile da tutte le altre pagine del modulo
in cui è contenuta (siteview o area), quindi ogni altra pagina del
modulo ha un link verso la pagina landmark. Fornisce contenuti o
servizi frequentemente usati dall'utente
pagina interna: è una pagina che non rientra nei tipi precedenti.
Presenta contenuti secondari presentati dopo la visione di altri
contenuti o rappresenta passi intermedi di navigazione
PROG
- 19 -
Visibilità di pagina - esempio
Area Notizie_GestioneContenuti
Accesso&CancellazioneNotizie
Accesso (Notizia, CategoriaNotizie)
Set (CategoriaNotizie)
Cancella (Notizia)
D
L
ModificaNotizia
Modifica (Notizia)
CreazioneNotizia
Crea&Connetti (Notizia, CategoriaNotizie)
PROG
- 20 -
Specifica delle pagine
La specifica delle pagine consiste nella definizione dettagliata di unit e link
necessari per fornire i contenuti e i servizi associati alle pagine. Vengono
sfruttati i sotto-schemi di ipertesto definiti durante la progettazione dei dati.
Sotto-schema core: viene utilizzato nell'area dedicata a presentare o
gestire il contenuto dell'oggetto core su cui lo schema è centrato.
Sotto-schema di interconnessione: si traduce in frammenti di ipertesto
distribuiti all'interno delle aree destinate alla pubblicazione o gestione degli
oggetti core connessi dal sotto-schema. I frammenti rendono possibile la
navigazione tra aree.
Sotto-schema di accesso: si traduce in frammenti di ipertesto distribuiti tra
l'area di default della site view e l'area per la pubblicazione e la gestione
dell'oggetto core su cui è definito l'accesso. Tali frammenti permettono
l'accesso all'oggetto core attraverso passi successivi di selezione da pagine
di alto livello.
Sotto-schema di personalizzazione: si traduce in vari frammenti distribuiti
in diverse aree, ad es. pagine di login/logout, pagine di modifica dati o
contenuti personali.
PROG
- 21 -
Acer-Euro: schema di ipertesto dettagliato Home
Dalle pagine TitpiNotizie, DettagliNotizie, Gruppi, Marchi, Prodotto
Home
H
GruppiProdotto
CambiaNazione
GruppoProdotto
(Nazione_GruppoProdotto)
Nazione
GetNazione
NazioneCorr
SetNazione
ParamNazione
ParamNazione
NotizieEvidenziate
Notizia
(Nazione_NotiziaEvidenziata)
Nazione
CategorieNotizie
CategoriaNotizie
(Nazione_CategoriaNotizie)
PROG
L
- 22 -
Acer-Euro: Home page sito britannico
PROG
- 23 -
Identificazione e visibilità area Novità
L'area Novità pubblica contenuti riguardo le notizie
raggruppandole in base ad alcune categorie.
Area Novità
TitoliNotizie
Accesso (Notizia, CategoriaNotizie)
DettagliNotizia
D
Accesso (Notizia, CategoriaNotizie)
Core (Notizia)
Interconnessione (Notizia_Prodotto)
L
PROG
- 24 -
Specifica WebML pagina TitoliNotizie
TitoliNotizie
alla pagina
Home
D
CambiaNazione
NazioneCorr
Nazione
Nazione
GetNazione
ParamNazione
alla pagina
DettagliNotizia
CategorieNotizie
Categoria
TitoliNotizie
CategoriaNotizie
(Nazione_CategoriaNotizie)
CategoriaNotizie
Notizia
(CategoriaNotizie_Notizia)
PROG
L
- 25 -
Acer-Euro: pagina TitoliNotizie
PROG
- 26 -
Specifica WebML pagina DettagliNotizia
DettagliNotizia
alla pagina
Home
alla pagina
TitoliNotizie
CambiaNazione
NazioneCorr
Nazione
Nazione
GetNazione
ParamNazione
CategorieNotizie
NotiziaSelezionata
ProdottiCorrelati
Notizia
Prodotto
(Notizia_Prodotto)
All'area
Prodotti
CategoriaNotizie
(Nazione_CategoriaNotizie)
dalla pagina
TitoliNotizie
PROG
- 27 -
Acer-Euro: pagina DettagliNotizia
PROG
- 28 -
Identificazione e visibilità area Prodotti
Area Prodotti
Gruppi
Marchi
Accesso (Prodotto, GruppoProdotto)
D
Accesso (Prodotto, GruppoProdotto,
MarchioProdotto)
L
Prodotto
Accesso (Prodotto, GruppoProdotto, MarchioProdotto)
Core (Prodotto, Vantaggio, Riconoscimento, ConfigurazioneProdotto, Logo)
SpecificheTecniche
Accesso (Prodotto, GruppoProdotto, MarchioProdotto)
Core (Prodotto, SpecificaTecnica)
PROG
- 29 -
Schema WebML pagina Gruppi
Gruppi
D
NazioneCorr
dalla pagina
Marchi
GetNazione
ParamNazione
alla pagina
Home
Nazione
CambiaNazione
GruppiProdotto
Nazione
GruppoProdotto
(Nazione_GruppoProdotto)
alla pagina
Marchi
L
PROG
- 30 -
Acer-Euro: pagina Gruppi
PROG
- 31 -
Schema WebML pagina Marchi
Marchi
CambiaNazione
NazioneCorr
GetNazione
alla pagina
Home
SetGroup
Nazione
ParamNazione
GruppiProdotto
Nazione
GruppoProdotto
GroupParam
dalla pagina Gruppi
GruppoProdotto
(Nazione_GruppoProdotto)
GruppoProdotto
ProdottiCompleto
alla pagina
Prodotto
ProdottiBreve
Prodotto.OID
Prodotto.OID
MarchioProdotto
MarchioProdotto
(GruppoProdotto_MarchioProdotto)
(GruppoProdotto_MarchioProdotto)
NEST Prodotto
NEST Prodotto
alla pagina Prodotto
(MarchioProdotto_Prodotto)
(MarchioProdotto_Prodotto)
PROG
- 32 -
Acer-Euro: pagina Marchi
PROG
- 33 -
Schema WebML pagina Prodotto
alla pagina Home
Prodotto
alla pagina
Marchi
NazioneCorr
Riconoscimenti
CambiaNazione
GruppoProdotto
Nazione
GruppoProdotto
(Nazione_GruppoProdotto)
GetNazione
Riconoscimento
(Prodotto_Riconoscimento)
Nazione
Configurazioni
Prodotto
ParamNazione
dall'indce
ProdottiCompleto
nella pagina
Marchi
ConfigurazioneProdotto
(Prodotto_ConfigurazioneProdotto)
Prodotto.OID
Prodotto
GerarchiaProdotti
Loghi
Vantaggi
Logo
(Prodotto_Logo)
Vantaggio
(Prodotto_Vantaggio)
GetGroup
dall'indce
ProdottiBreve
nella pagina
Marchi
GroupParam
MarchioProdotto
(GruppoProdotto_MarchioProdotto)
NEST Prodotto
(MarchioProdotto_Prodotto)
alla pagina
SpecificheTecniche
Prodotto.OID
PROG
- 34 -
Acer-Euro: pagina Prodotto
PROG
- 35 -
Scarica

specifica delle pagine