Il Ruolo della Semiotica nella Progettazione Ipermediale
5
CAPITOLO 1
Metodi di Sviluppo di Ipermedia: il
Punto di Vista Informatico
1.1 Introduzione
Con il termine “ipermedia” indicheremo nel seguito un prodotto digitale, interattivo,
con struttura non necessariamente lineare, che utilizza sia medium statici (ad esempio
testi e immagini) sia medium dinamici (ad esempio suono, video). Una sottoclasse
importante degli ipermedia è costituita dai siti web.
Lo sviluppo di un ipermedia è un processo complesso che richiede conoscenze e
competenze interdisciplinari e che dovrebbe essere svolto in maniera sistematica
seguendo metodi precisi ed assestati in modo da garantire buoni livelli di qualità,
usabilità, manutenibilità e riusabilità del prodotto sviluppato. Con il termine “metodo di
sviluppo” intenderemo una descrizione del processo di costruzione di ipermedia che
specifica:
a) le fasi e le attività che lo sviluppatore/progettista deve seguire per produrre l'artefatto
finale;
b) l'ordine logico e temporale in cui tali fasi e attività vanno eseguite;
c) il tipo di semilavorati che sono utilizzati all'inizio e sono prodotti alla fine di ogni
fase
d) gli strumenti e le conoscenze necessarie per affrontare ciascuna fase.
In questo capitolo prenderemo in considerazione due categorie di metodi: i metodi
formali e i metodi empirici. I primi provengono tipicamente dal mondo accademico, e si
ispirano a risultati noti nel campo della Ingegneria del Software e della Ingegneria dei
Documenti. I secondi, derivano dal mondo professionale e incorporano le buone
pratiche sviluppate nelle agenzie web. I metodi formali privilegiano gli aspetti
economici e pragmatici dello sviluppo di un prodotto digitale (efficienza del processo,
economia di scala, funzionalità, qualità ). I metodi empirici sono più attenti agli aspetti
di innovazione, creatività, personalizzazione del prodotto.
Il Ruolo della Semiotica nella Progettazione Ipermediale
6
1.2 I Metodi Formali
Negli ultimi 20 anni sono stati proposti diversi metodi formali di progettazione di
ipermedia fra i quali i più importanti: l'Hypermedia Design Model (HDM) proposto da
[Garzotto, Paolini, Schwabe, 1993], il Relationship Management Methodology (RMM)
di [Isakowitz, Stohr, Balasubramanian, 1995], l'Object Oriented Hypermedia Design
Method (OOHDM) di [Schwabe, Rossi, 1998], l' Autoweb di [Fraternali, Paolini, 2000],
il Web Modeling Language (WebML) da [Ceri, Fraternali, Bongio, 2000], l' Object
Oriented Hypermedia (OO-H) Method di [Gòmez, Cachero, Pastor, 2001], e l' UML -
Based Web Engineering Methodology (UWE) di [Koch, Kraus, 2002].
Nei successivi sottoparagrafi si analizzeranno brevemente le caratteristiche più
importanti di ciascun metodo (rimandando alla letteratura per i dettagli).
1.2.1 L'Hypermedia Design Model (HDM)
HDM [Garzotto, Paolini, Schwabe, 1993] si ispira a tecniche e modelli mutuati dal
settore dei database e degli ipertesti.
Le fasi progettuali previste dal modello sono cinque [Garzozzo, Paolini, Mainetti,
1995]: progetto del contenuto, progetto della struttura, progetto della presentazione,
progetto della dinamica e della interazione.
Per descrivere il contenuto si utilizza una versione adattata del modello entità relazioni
ER utile per introdurre concetti ipermediali come nodi, contenuti, ancore e
collegamenti.
Un nodo è caratterizzato dal proprio contenuto il quale è composto da tipi diversi di
media (testi, audio, immagini, ecc.) oppure da uno o più nodi. Una parte qualsiasi del
contenuto del nodo può essere un'ancora, essa rappresenta l'entità di partenza di ogni
relazione del nodo con un altro nodo. Il link a sua volta è il collegamento fra l'ancora di
partenza e quella di destinazione.
Lo scopo quindi dell'utilizzo di concetti ipermediali è quello di fornire uno strumento
per la modellazione della struttura di navigazione dell'ipermedia.
Successivamente, si organizzano i contenuti nello spazio e nel tempo attraverso
relazioni sia statiche che dinamiche.
Nel processo di sviluppo di un'applicazione ipermediale interagiscono diverse tipologie
di utenti con conoscenze e caratteristiche distinte. stato quindi sviluppato un insieme
di strumenti per questo modello, per lo sviluppo e la creazione di prototipi web, adattati
È
Il Ruolo della Semiotica nella Progettazione Ipermediale
7
a vari tipi di utilizzatori del sistema. Inoltre l'HDM supporta la progettazione di tipo
bottom-up e il linguaggio XML.
HDM-Edit è lo strumento [Garzotto, Paolini, Baresi, 2001] che supporta l'ultima
versione del modello HDM.
Il riuso delle soluzioni di progetto e la generazione della documentazione di progetto
aiutano a raggiungere un sempre più alto livello di qualità.
Le applicazione progettate con il modello HDM vengono valutate utilizzando una serie
di metodi e criteri di valutazione, al fine di verificare se sono state progettate
correttamente per uno sviluppo incentrato sull'utente e se l'artefatto soddisfa le esigenze
dell'utente.
1.2.2 La Relationship Management Methodology (RMM)
Relationship Management Methodology [Isakowitz, Stohr, Balasubramanian, 1995] è
l'unica metodologia per la progettazione e la costruzione di applicazioni ipermediali che
possiede un ciclo di sviluppo del software completo, dall'analisi di fattibilità iniziale al
testing e alle valutazioni finali.
Inoltre supporta la progettazione top-down e bottom-up. Questo metodo è basato sul
modello RMDM (Relationship Management Data Model) ispirato ai modelli ER e
HDM.
Il metodo inizia con la rappresentazione della struttura informativa mediante un
diagramma entità-relazioni. Al passo successivo gli attributi delle entità vengono
(1)
organizzati in “slices” che possono essere aggregate tra loro o inglobate l'una
nell'altra.
Nello schema di rappresentazione sono inoltre presenti link e ancore.
Per questa metodologia di sviluppo è stato creato il RMCase, un insieme di strumenti
per supportare la progettazione nelle varie fasi.
(1) Ad esempio, un entità insegnante con attributi nome, età, interessi di ricerca e biografia può avere una
slice generale contenente nome, età, una slice di interessi di ricerca e una slice biografia. La slice
biografia conterrà il nome e la biografia e la slice di interesse di ricerca sarà costituita dal nome e
l'interesse di ricerca. In modo che ciascun entità insegnante verrà presentata da tre slices.
Il Ruolo della Semiotica nella Progettazione Ipermediale
8
1.2.3 L'Object-Oriented Hypermedia Design Method (OOHDM)
Il metodo OOHDM [Schwabe, Rossi, 1998] è adatto alla costruzione di applicazioni
ipermediali di grosse dimensioni.
Comprende quattro fasi:
progettazione concettuale (Conceptual Design);
progettazione della struttura di navigazione (Navigation Design);
progettazione dell'interfaccia astratta (Abstract Interface Design);
implementazione (Implementation).
Queste fasi vengono eseguite in maniera incrementale, iterativa e basata sui prototipi.
Il punto di partenza, la progettazione concettuale, è finalizzata alla rappresentazione del
dominio dell'applicazione ed è basata sul linguaggio OMT.
Si passa poi alla progettazione della struttura di navigazione che permette di astrarre
diverse viste dallo stesso modello concettuale. Il progettista può in questo modo cercare
la soluzione migliore analizzando i diversi modelli di navigazione creati.
Le viste di navigazione sono costruite con l'ausilio di elementi ipermediali quali nodi e
link per il collegamento di contenuti ecc., e mirano a specificare gli aspetti
dell'interazione.
La terza attività è la progettazione dell'interfaccia astratta che consiste nella
progettazione del layout dell'interfaccia e nell'organizzazione dei contenuti
multimediali.
Anche in questo caso è possibile costruire diverse interfacce per uno stesso modello di
navigazione.
Le ultime due attività possono essere usate per personalizzare il sistema in base ai
profili degli utenti potenziali.
Un punto importante di questo modello è la progettazione per il riutilizzo basata su
“pattern di progettazione”.
Nell'ultima attività, l'implementazione, una serie di passi guidano la mappatura del
progetto in una implementazione.
1.2.4 Autoweb
Autoweb [Fraternali, Paolini, 2000] propone un approccio top-down basato su tre fasi: il
progetto concettuale, la generazione del database e l'implementazione dell'applicazione
web. Tutte queste fasi sono supportate dallo strumento AutoWeb System che genera in
––––
Il Ruolo della Semiotica nella Progettazione Ipermediale
9
automatico applicazioni web.
Il progetto concettuale è formalizzato dal modello HDM-lite, un'evoluzione del HDM
per Web. Con Autoweb quindi si può descrivere la struttura, la navigazione e la
presentazione del sistema.
A differenza degli altri metodi Autoweb permette di definire i contenuti e la struttura di
un nodo nel Structure Schema e posizionare questi elementi nell'area di visualizzazione
nel Presentation Schema. Per avere diverse viste del sistema devono essere generati
diversi schemi di presentazione.
1.2.5 Il Web Modelling Language (WebML)
WebML [Ceri, Fraternali, Bongio, 2000] fornisce un approccio strutturato per la
progettazione di applicazioni Web il cui scopo principale è gestire e pubblicare grandi
quantità di dati. Fornisce un insieme integrato di modelli per la produzione di
applicativi Web di alta qualità. Il WebML specifica quattro punti di vista: “Structural”
che specifica l'organizzazione dei dati, “Hypertext” che definisce la composizione
interna delle pagine e la navigazione fra di esse, “Presentation and Personalization”
dove si specifica l'interfaccia finale e le eventuali personalizzazioni in base al tipo di
utenza.
Il processo di progettazione è iterativo e guida l'intera attività di sviluppo dalla
collezione di requisiti alla progettazione e personalizzazione.
In relazione agli elementi ipermediali, i contenuti di un nodo possono essere specificati
con il Composition Model. Questi contenuti possono essere organizzati in regioni
indipendenti della pagina. In aggiunta si può specificare se tali regioni andranno
visualizzate insieme oppure singolarmente.
A differenza degli altri modelli, WebML possiede una collezione di regole per costruire
ipertesti corretti da un punto di vista logico.
WebML include le nozioni di gruppo, di insieme di utenti, e di utente individuale che
sono modellati come entità speciali nello Structural Model permettendo la
personalizzazione del documento ipertestuale.
Le caratteristiche interattive del sistema sono supportate da unità funzionali collegate a
loro volta ad altre unità e possono essere predefinite o costruite dal progettista.
Tutto il processo di progettazione è supportato dall'ambiente chiamato ToriiSoft. Inoltre
il WebML supporta la sintassi XML al fine di ottenere un sistema indipendente da
piattaforma.
Il Ruolo della Semiotica nella Progettazione Ipermediale
10
1.2.6 L'Object Oriented Hypermedia (OO-H) Method
Il metodo OO-H [Gòmez, Cachero, Pastor, 2001] si basa sugli approcci tradizionali
proposti nell'ambito della modellazione concettuale basata su UML. In particolare tale
metodo può essere considerato come un ambiente automatico di produzione software
che aiuta a modellare un insieme di viste per definire la struttura del sistema (punto di
vista statico) ed il comportamento del sistema (punto di vista dinamico).
Il modello OO-H estende questi due punti di vista con due nuovi diagrammi
complementari:
- Navigational Access Diagram (NAD), il quale definisce una vista di navigazione;
- Abstract Presentation Diagram (APD), il quale raccoglie i concetti relativi alla
presentazione.
Quando è richiesta la personalizzazione dell'informazione il progettista deve costruire
tanti NAD's quanti sono i tipi di utenti.
I due punti di forza di questo metodo sono il suo CASE tool, che automatizza lo
sviluppo delle applicazioni Web, e un catalogo di patterns di progetto.
I prototipi possono essere generati per mezzo di questo CASE tool.
1.2.7 L' UML - Based Web Engineering Methodology (UWE)
Il UWE [Koch, Kraus, 2002] è un approccio orientato agli oggetti, interattivo e
incrementale le cui attività principali coprono l'intero ciclo di vita del software e
consistono nell'identificazione dei requisiti del sistema, la progettazione concettuale, la
progettazione della struttura di navigazione e la presentazione.
I modelli dei compiti e gli “statecharts” permettono di descrivere gli aspetti dinamici
dell'applicazione.
L'UML è usato per rappresentare i vari prodotti dell'attività di progettazione. Le
soluzioni di progetto sono facilmente trasformate in soluzioni XML.
In relazione agli elementi ipermediali, i nodi, i link e i meccanismi di supporto alla
navigazione sono rappresentati da classi.
Inoltre utilizzando lo strumento ArgoUML è possibile effettuare una generazione
semiautomatica delle applicazioni web partendo dal modello progettuale.