PROG
Progettazione di dati e ipertestoProgettazione di dati e ipertesto
PROG - - 22 - -
Progettazione dei datiProgettazione dei dati
IN: dizionario dei dati, mappa del sito, requisiti funzionali, requisiti degli utenti
OUT: schema formale dei dati (schema E-R/ UML)
Fondamentale anche in caso di contenuti pre-esistenti
Può trarre vantaggio da una classificazione degli oggetti informativi da rappresentare nello schema
PROG - - 33 - -
Oggetti CoreOggetti Core
Oggetti informativi principali gestiti dall’applicazioneEntità centrali attorno alle quali si sviluppa l’intero schema E-R
Più di una singola entità – rappresentazione di proprietà complesse e di componenti
Sotto-schema core: insieme di entità connesse da relazioni, che collettivamente rappresentano un singolo concetto core
CoreEntity
Component1 Component2
0:N
1:1
0:N
1:1
PROG - - 44 - -
Sotto-schema CoreSotto-schema CoreIdentificazione delle entità core : a partire dal dizionario dei dati e da altri requisiti
Progetto dettagliato del sotto-schema core: attributi, componenti e relazioni
Notizia Prodotto
ConfigurazioneProdotto
NomeModelloPartNumberDescrizionePrezzo
Prodotto
NomeDescrizioneBreveDescrizioneLungaImmaginePiccolaImmagineNormaleImmagineGrandeBrochurePDFPresentazioneFlashCertificatoPDFNoteGIFSpecTecnicheIconeBrochureDisponibilità
0:N
1:1
0:N
SpecificaTecnica
DescrizioneEvidenziato
Logo
NomeImmagine
Vantaggio
DescrizioneDescrizioneLunga
Riconoscimento
NomeDataLuogo
0:N
0:N
0:N
0:N
1:1
1:1
0:N
Notizia
Titolo SottotitoloDataDataTestualeLuogoDataPubblicazioneDataRimozionePDFTitoloPDFTestoImmagineEvidenziatoRiassunto
PROG - - 55 - -
Oggetti di InterconnessioneOggetti di Interconnessione
Associazioni semantiche tra oggetti core, usati per definire link e indici per la navigazione tra oggetti core
Sotto-schema di interconnessione: relazioni nello schema E-R che rappresentano interconnesioni tra entità core
CoreEntity1
CoreEntity2 CoreEntity3
0:N
0:N
0:N
0:N
0:N 0:N
PROG - - 66 - -
Sottoschema di InterconnessioneSottoschema di Interconnessione
Definizione di connessioni semantiche tra sottoschema core
Notizia
Titolo SottotitoloDataDataTestualeLuogoDataPubblicazioneDataRimozionePDFTitoloPDFTestoImmagineEvidenziatoRiassunto
ConfigurazioneProdotto
NomeModelloPartNumberDescrizionePrezzo
ProdottoNomeDescrizioneBreveDescrizioneLungaImmaginePiccolaImmagineNormaleImmagineGrandeBrochurePDFPresentazioneFlashCertificatoPDFNoteGIFSpecTecnicheIconeBrochureDisponibilità
0:N
1:1
0:N
SpecificaTecnica
DescrizioneEvidenziato
Logo
NomeImmagine
Vantaggio
DescrizioneDescrizioneLunga
Riconoscimento
NomeDataLuogo
0:N
0:N
0:N
0:N
1:1
1:1
NotiziaEvidenziata
0:N
0:N
0:N
PROG - - 77 - -
Oggetti di AccessoOggetti di Accesso
Oggetti ausiliari, usati per classificare o specializzare gli oggetti core, allo scopo di facilitarne l’accesso in modi diversi:
Categorizzazioni per costruire gerarchie di indici (categorie-prodotti)Meccanismi di ricerca efficientiCollezioni di selezioni di oggetti core (le offerte del giorno).
Uno stesso oggetto core può essere categorizzato o specializzato in diversi modi
Sotto-schema di accesso: Insieme di entità nello schema E-R, connesse
tramite relazioni o associazioni di generalizzazione alle entità core. Access1 Access2
Core
SpecialCollection
1:N
1:1
1:N
1:1
PROG
Sottoschema di accessoSottoschema di accesso
Diversi meccanismi di accesso, identificati a partire da use case e requisiti di usabilità
Notizia
ProdottoNotiziaEvidenziata
0:N 0:N
GruppoProdotto
NomeListinoPrezzi
CategoriaNotizie
Nome
1:11:1
Nazione
NomeNomeIngleseIsocodeCharset
0:N
1:1
MarchioProdotto
NomeDescrizione
0:N
0:N
1:1
1:1
- - 88 - -
PROG - - 99 - -
Oggetti di PersonalizzazioneOggetti di Personalizzazione
Oggetti che rappresentano proprietà dell’utente, necessarie per definire politiche di personalizzazioneSottoschema di personalizzazione:
Entità per modellare i profili degli utenti ed i gruppi di utentiRelazioni (appartenenza, preferenza,…) che connettono l’utente e i gruppi alle entità dell’applicazione
User
UsernamePasswordEmail
Group
GroupNameNumberOfUsers
SiteView
SiteViewName
Default
1:1 1:N
1:N 1:N
1:1 1:NMembership
Access
PROG - - 1010 - -
Sottoschema di PersonalizzazioneSottoschema di Personalizzazione
Profili di utenti registrati e informazioni per il controllo dell’accesso
0:N0:N
GruppoProdotto
NomeListinoPrezzi
CategoriaNotizie
Nome
1:11:1
Nazione
NomeNomeIngleseIsocodeCharsetURLParoleChiave
Utente
UsernamePasswordEmailNomeCognomeTelefonoIndirizzo
SiteView
NomeSiteView
Gruppo
NomeGruppo
1:1
1:N
0:N
0:N
1:11:N
1:N1:N
GruppoDefault
Appartenenza
CoreEntity1 CoreEntity2
User
Group
Accesssub-schema
Personalizationsub-schema
Connectionsub-schema
Coresub-schema
Composizione dei sotto-schemiComposizione dei sotto-schemi
PROG - - 1111 - -
PROG - - 1212 - -
Progettazione dell’IpertestoProgettazione dell’Ipertesto
IN: schema dei dati, mappa del sito, requisiti funzionali, requisiti utente
OUT: schema di ipertesto WebML
Due passi di progettazione:1. Progetto Coarse (preliminare)
2. Progetto Dettagliato
PROG - - 1313 - -
Progettazione CoarseProgettazione Coarse
a) Individuazione delle areerevisione dei requisiti funzionali e della mappa del sito (divisione dell’applicazione in moduli)
b) Definizione della visibilità delle aree
Area di default, area landmark, area interna (raggiungibile attraverso link espliciti)
c) Specifica dei contenuti – uso di primitiveCore(CoreEntity,Component1,…,ComponentN)
Access(CoreEntity,AccessEntity1,…,AccessEntityN)
Interconnection(Role1,…,RoleN)
Modify(Entity1)
Delete(Entity1)
Connect(Role1), Disconnect(Role1)
Create&Connect(Entity1,Role1, .., RoleN)
Core denota pubblicazione di contenuti relativi a entità core e sue componenti
Access denota l’accesso a una o più istanze dell’entità core attraverso entità di categorizzazione (accesso)
Interconnection denota la navigazione da istanze di entità1a istanze di altre entità core connesse da ruoli di relazione ruolo1..
PROG - - 1414 - -
Progettazione CoarseProgettazione Coarse
PROG - - 1515 - -
Progetto coarse - EsempioProgetto coarse - Esempio
Site view utenti esterni
Area home
Accesso (Notizia, CategoriaNotizia)Accesso (Notizia, NotiziaEvidenziata)Accesso (Prodotto, GruppoProdotto)
D
L
Area novità
Accesso (Notizia, CategoriaNotizia)Core (Notizia)Interconnessione (Notizia_Prodotto)
L
Area prodotti
Accesso (Prodotto, GruppoProdotto, MarchioProdotto)Core (Prodotto, Vantaggio, Riconoscimento, ConfigurazioneProdotto, Logo, SpecificaTecnica)
L
PROG - - 1616 - -
Progettazione DettagliataProgettazione Dettagliata
a) Individuazione delle pagine:
Suddivisione di aree in pagine
Ogni pagina include una porzione di contenuto e di funzioni dell’area che la include
b) Visibilità di pagina:
Home page
Pagina di Default
Pagina Landmark
Pagina Interna
c) Specifica di Pagina: Utilizza sotto-schemi di ipertesto - design pattern tipici
Un sottoschema di ipertesto per ogni sottoschema dei dati
PROG - - 1717 - -
EsempioEsempioSuddivisione in pagine e loro visibilitàSuddivisione in pagine e loro visibilità
Area Novità
TitoliNotizie
Accesso (Notizia, CategoriaNotizie)
DettagliNotiziaAccesso (Notizia, CategoriaNotizie)Core (Notizia)Interconnessione (Notizia_Prodotto)
D
L
PROG - - 1818 - -
Esempio- Navigazione verso “Notizia”Esempio- Navigazione verso “Notizia”
L
CambiaNazione
Nazione
CategorieNotizie
CategoriaNotizie(Nazione_CategoriaNotizie)
TitoliNotizie
Notizia(CategoriaNotizie_Notizia)
NazioneCorr
Nazione
D
GetNazione
ParamNazione
TitoliNotizie
alla paginaHome
Categoria
CategoriaNotizie
alla paginaDettagliNotizia
PROG - - 1919 - -
Esempio - Esempio - Navigazione “Notizia-Prodotto”Navigazione “Notizia-Prodotto”
CambiaNazione
Nazione
CategorieNotizie
CategoriaNotizie(Nazione_CategoriaNotizie)
ProdottiCorrelati
Prodotto(Notizia_Prodotto)
NazioneCorr
Nazione
GetNazione
ParamNazione
DettagliNotizia
alla paginaHome
NotiziaSelezionata
Notizia
All'areaProdotti
alla paginaTitoliNotizie
dalla paginaTitoliNotizie