ZoPark
Abstract
Scopo principale
di questo progetto e' lo sviluppo di un sistema Open Source per fornire
applicazioni di apprendimento per disabili facilmente modificabili e
personalizzabili. Un educatore specializzato dovrebbe essere in grado di
accedere ad un editor online dove poter specificare un insieme di
parametri. Questi parametri vengono memorizzati sul sistema e sono
accessibili all'educatore. Una volta che l'esercitazione e'
completamente definita, puo' essere usata per educare un bambino e, con
il consenso dell'educatore, puo' essere pubblicata e resa disponibile ad
altri educatori e bambini. Ogni volta che un'esercitazione viene usata,
i tempi di risposta e le percentuali di successo sono registrate ed
inviate al server, per formare la base per un'analisi di tipo
statistico.
Come funziona il
tutto?
Specifiche
Un numero di
funzionalita' e' definito all'interno del sistema:
- area utenti
- area
educatori
- area di
discussione
- repository
di documentazione
- area di
ricerca e gestione
Area utenti: e' la parte piu'
importante del sistema. Qui gli educatori possono caricare le
esercitazioni che hanno costruito ed usarle con i bambini. Questi
esercizi possono essere usati in due modi diversi, sia online con un
browser che scaricati ed usati offline. L'uso online e' incoraggiato,
dal momento che permette una personalizzazione migliore e,
principalmente, i risultati possono essere restituiti al server.
Area educatori: e' un'area ad
accesso ristretto, dove soltanto gli educatori registrati possono
entrare. La registrazione degli educatori dovrebbe essere gratuita, come
accade sulla maggior parte dei servizi online gratuiti. Una forma di
moderazione delle registrazioni dovrebbe essere possibile, ma non
dovrebbe essere impostata come default. All'interno di quest'area, il
sistema fornira' un editor per creare esercitazioni da una libreria di
simboli espandibile, un'area dove registrare i bambini e tener traccia
dei loro risultati, per scopi di monitoraggio da parte degli educatori.
Area di discussione: tre forum
differenti. Un forum tecnico, dove gli sviluppatori possono interagire e
portare avanti lo sviluppo delle varie parti del sistema. Un secondo
gruppo di forum e' pensato per l'interazione tra sviluppatori ed
educatori, dove gli educatori possono chiedere nuove feature ed
influenzare lo sviluppo del sistema stesso. L'ultimo gruppo e' un'area
di discussione tra educatori, per condividere idee e risultati, per
mantenere il contatto all'interno della comunita' degli educatori.
Repository di documentazione: per
ogni argomento in cui la comunita' mostra interesse, dovrebbe essere
predisposto un mirror di documentazione. Deve essere fornito un modo per
pubblicare manuali, documenti, tesi ed articoli, sia pubblici che ad
accesso ristretto. I documenti prodotti dalla comunita' stessa devono
essere pubblicati in forma commentabile da parte degli utenti
registrati.
Area di sviluppo: usando gli
strumenti standard per la collaborazione, quest'area tiene traccia delle
versioni dei componenti e degli stadi di sviluppo del sistema.
Area di ricerca e gestione:
quest'area permette agli amministratori di configurare ed assegnare
ruoli agli utenti, di espandere il sistema con nuovi moduli e di
abilitare nuove funzionalita'. Questa e' l'unica area che permette
l'accesso diretto alle informazioni riguardanti educatori e bambini
memorizzate all'interno del sistema, con il solo scopo di creare un
insieme di dati per un'analisi statistica e per il monitoraggio
dell'utenza.
Requisiti
L'intero sistema
e' un'applicazione web, sviluppata principalmente con componenti Open
Source. Deve essere usabile da piattaforme differenti (Windows, Linux,
MacOS, ecc.) e con molti sistemi di input diversi, quali tastiere o
visori speciali. Le esercitazioni devono essere personalizzabili sulla
maggior parte dei loro aspetti. Il server deve essere portabile sui piu'
comuni sistemi operativi e l'intero archivio deve essere facilmente
gestibile. Un cambiamento nell'interfaccia non deve obbligare gli
sviluppatori a cambiare l'intero backend del sistema.
Linee guida
Per risolvere i
requisiti di portabilita' del server, la piattaforma di sviluppo scelta
e' Zope. Permette una facile integrazione con i database e c'e' una
buona disponibilita' di componenti gia' sviluppati. Permette una rapida
pubblicazione di quasi ogni parte del sistema, incluso un editor di
esercitazioni non visuale, utile per un primo prototipo dimostrativo.
L'uso e l'integrazione di prodotti Zope pronti all'uso e' altamente
incoraggiato per tutte le aree non visuali del sistema.
Come sistema di
memorizzazione dei dati, per utenti, esercitazioni e qualsiasi altro
dato utile, la scelta e' MySQL 4. Questa e' una decisione puramente
tecnica, il database deve essere portabile su altri diversi DBMS, come
PostgreSQL. Un cambio nel database deve essere di semplice
implementazione, mentre un cambio nel motore del server e'
necessariamente piu' difficile.
Come formato di
scambio dei dati e' stato scelto XML. I dati dall'editor visuale di
esercitazioni al server viaggiano in XML, cosi' fanno i dati mandati dal
server alla workstation dell'utente. Il documento XML contiene tutte le
variabili necessarie dalla singola esercitazione. Anche i risultati
sono inviati al server come documento XML. L'uso del protocollo XML-RPC
per la comunicazione client-server deve essere preso in considerazione.
Dal lato
dell'utente, la scelta per consegnare contenuti multimediali facilmente
programmabili per piattaforme eterogenee e' Macromedia Flash. Flash
permette il caricamento dinamico di componenti, il parsing di XML e
potenti funzioni di scripting. Supporta inoltre il playback di audio mp3
e la riproduzione da lettori standalone.
Disclaimer
Macromedia
Flash, fino a quando le specifiche del formato SWF non saranno rese
pubbliche, dovra' essere considerato una soluzione temporanea, fino a
quando uno standard pubblico sara' sviluppato, reso disponibile e
largamente diffuso. Per evitare problemi di usabilita', ogni funzione
all'interno delle esercitazioni deve essere accessibile dalla tastiera.
Tutte le esercitazioni sono sviluppate per essere usate con uno zoom
1:1, ogni questione relativa alla leggibilita' deve essere risolta
dall'educatore all'interno dell'editor, durante la preparazione
dell'esercitazione.