next up previous contents
Next: Differenze tra i modelli Up: Strumenti formali per la Previous: La metodologia

Object-Oriented Hypermedia Design Method

 

L'OOHDM [SR95b] è un processo in quattro fasi che utilizza un insieme di modelli di sviluppo iterativi, incrementali e basati su prototipi. Ad ogni fase un modello viene costruito o arricchito; dopo l'ultima fase si hanno sufficienti informazioni per implementare l'applicazione ipermediale.

  figure792

In questa fase si costruisce un modello del dominio dell'applicazione utilizzando tecniche classiche di progettazione orientata agli oggetti [RBP+91] ampliate con primitive come le viste sugli attributi e i sottosistemi. Le classi concettuali possono essere costruite utilizzando aggregazione e gerarchie dal generale allo specializzato.

Non c'è preoccupazione per i tipi degli utenti e delle operazioni, ma solamente per la semantica del dominio dell'applicazione. La produzione di questa fase è una classe e uno schema per le istanze costruito a partire da Sotto-sistemi, Classi e Relazioni.

Seconda fase: Disegno navigazionale

Una delle caratteristiche peculiari di un sistema ipermediale è il concetto di ``navigazione''. Nell'OOHDM un'applicazione è vista come una ``vista navigazionale'' sopra il dominio concettuale. Questa vista viene costruita dal punto di vista dei tipi degli utenti previsti e dell'insieme delle operazioni che questi dovranno effettuare. Modelli navigazionali diversi possono essere costruiti per lo stesso schema concettuale, esprimendo così differenti viste (applicazioni) sullo stesso dominio. La struttura di navigazione è definita nei termini di contesti di navigazione, indotti (in modi diversi, dipendenti dal tipo della classe) da classi di navigazione come Nodi, Collegamenti, Indici e Visite Guidate. I Nodi rappresentano ``viste'' logiche sulle classi concettuali definite nello schema concettuale attraverso un assegnamento che fornisce una funzione di ``taglia-e-incolla'' di attributi concettuali. I Nodi possono essere semplici o composti [Grø94], specificando quali attributi e ancore astratte sono disponibili in ciascun contesto di navigazione. I Nodi sono descritti attraverso attributi e ancore per collegamenti uscenti se sono semplici oppure come un insieme di nodi componenti se sono composti, con una dichiarazione ancora-attributo per ogni possibile contesto di navigazione nel quale il nodo può apparire [SR95a].

I Collegamenti sono generati a partire dalle relazioni concettuali presenti nello schema, e possono essere uno-a-uno oppure uno-a-molti. L'effetto del ``seguire'' un collegamento è espresso definendo la semantica di navigazione o in maniera procedurale come comportamento del collegamento o usando un opportuno automa a stati. Le trasformazioni dello Spazio Navigazionale, l'insieme degli oggetti di navigazione disponibili, sono specificate da un automa a stati per gli oggetti simile a un diagramma di stato. Ciò permette di studiare le trasformazioni dello Spazio Navigazionale in modo indipendente dal dominio del modello e dall'interfaccia.

Terza fase: Disegno astratto dell'interfaccia

In questa fase si costruisce il modello astratto dell'interfaccia che include la percezione dell'interfaccia da parte dell'utente, l'aspetto dei diversi oggetti di navigazione, gli oggetti dell'interfaccia che attivano la navigazione, la sincronizzazione degli oggetti multimediali dell'interfaccia, e le trasformazioni possibili dell'interfaccia. La costruzione avviene attraverso la creazione di oggetti come immagini, mappe cittadine, eccetera, in termini di classi di interfaccia, definite come aggregazione di classi primitive (campi di testo, bottoni) o di altre classi. Il comportamento dell'interfaccia viene dichiarato specificando come gestire gli eventi esterni e quelli generati dall'utente e come comunicano tra di loro gli oggetti dell'interfaccia e quelli di navigazione. Una separazione netta tra gli aspetti di navigazione ed il progetto astratto dell'interfaccia aumenta la possibilità di costruire interfacce differenti per lo stesso modello di navigazione. In questo modo è possibile riutilizzare lo stesso progetto per differenti supporti ipermediali oppure per le differenti esigenze degli utenti, ad esempio per permetterne l'uso anche a categorie di utenti con disabilità. Una discussione dettagliata della fase di disegno dell'interfaccia è presente in [RSLC95].

Quarta fase: Implementazione

Utilizzando i modelli di navigazione e dell'interfaccia astratta per disegnare oggetti concreti disponibili nell'ambiente di implementazione scelto, si produce il sistema ipermediale effettivo e operativo. Il modello generato nelle fasi dalla 1 alla 3 può essere implementato utilizzando piattaforme ipermediali disponibili come HyperCard, Toolbook, MacWeb, KMS, Guide o Microcosm.


next up previous contents
Next: Differenze tra i modelli Up: Strumenti formali per la Previous: La metodologia

Alessio Bragadini