Progettazione e Realizzazione di un Portale sul Digitale Terrestre per lazienda A.S.U.R. Zona 7
Cosè il digitale terrestre? Rappresenta il passaggio essenziale verso la convergenza di informatica e telecomunicazioni e consente di trasformare lapparecchio televisivo in una piattaforma per lo sviluppo dei servizi interattivi, che si aggiungono così alla funzione tradizionale di diffusione circolare dei segnali.
Cosa Cambierà? I vantaggi dello standard digitale si riassumono in due principali ordini di fattori: il potenziamento del servizio televisivo in termini di quantità e di qualità. A parità di frequenze utilizzate per le reti televisive analogiche, il numero dei programmi digitali irradiabili potrebbe quadruplicarsi o quintuplicarsi. lofferta di una serie di servizi aggiuntivi di tipo interattivo accessibili tramite il televisore. L'adattatore digitale da applicare al normale televisore ha capacità di memoria e di elaborazione tali da trattare e immagazzinare le informazioni: lutente le può acquisire in forma interattiva semplicemente collegando l'apparecchio alla linea telefonica domestica. Attraverso il televisore i servizi interattivi potranno essere utilizzati da soli o abbinati alle trasmissioni televisive per arricchire i programmi di informazione a richiesta.
Il macro-modello relativo allarchitettura di rete adatta allo sviluppo della televisione digitale terrestre
LO STANDARD MHP Il consorzio (DVB) ha definito uno standard di formattazione e trattamento degli elementi di multimedialità e interattività (tramite canale di ritorno) dei programmi denominato MHP (Multimedia Home Platform), cioè piattaforma multimediale domestica. Da un punto di vista strettamente tecnico la norma MHP definisce un insieme di primitive informatiche raccolte in varie librerie dette API (Application Programming Interface). Un decoder compatibile MHP è una macchina in grado di eseguire le primitive previste nelle API specificate nello standard. In tal modo si possono realizzare e modificare con la massima flessibilità tipica dei prodotti software, da parte dei fornitori di servizi e applicazioni TV, programmi televisivi digitali che diventano ipso-facto ricevibili, anzi eseguibili, su tutti i decoder compatibili MHP.
Nello standard MHP le applicazioni sono chiamate Xlet e possono essere composte solo da tipologie precise di dati: classi java, file xml o txt, immagini png o jpg o gif, audio mp2 e video mpg. Il flusso in uscita dal Multiplexer (Transport Stream) viene modulato, trasmesso e quindi ricevuto sul decoder interattivo (set-top-box) che come già detto offre la possibilità di connessioni a server dedicati o ad Internet tramite modem analogico o tecnologie più avanzate come lADSL. X-LET
Perché il Digitale Terrestre? Vantaggi per lA.S.U.R.: Opportunità di raggiungere la quasi totalità della popolazione nazionale Opportunità di raggiungere la quasi totalità della popolazione nazionale Possibilità di sfruttare linterazione con lutente tramite il canale di ritorno Possibilità di sfruttare linterazione con lutente tramite il canale di ritorno Possibilità di fornire informazioni personali riservate tramite autenticazione dellutente Possibilità di fornire informazioni personali riservate tramite autenticazione dellutente Vantaggi per gli utenti: Il telecomando è lunica periferica di controllo allinterno dei portali rendendo, così, facile la navigazione Il telecomando è lunica periferica di controllo allinterno dei portali rendendo, così, facile la navigazione Possibilità di effettuare prenotazioni (o altro) senza la necessità di recarsi presso gli sportelli dellazienda sanitaria Possibilità di effettuare prenotazioni (o altro) senza la necessità di recarsi presso gli sportelli dellazienda sanitaria
Studio, progetto ed implementazione di una Xlet (programma Java conforme allo standard MHP - Multimedia Home Platform) per fornire agli utenti del digitale terrestre alcuni servizi che la A.S.U.R. attualmente eroga sul suo portale Internet. Il Progetto
Obbiettivo 1 Creare una applicazione in grado di accedere (in lettura e/o in scrittura) ad un database remoto Il database contiene informazioni: di carattere generale di carattere generale sulle strutture ospedaliere sulle strutture ospedaliere sui dottori sui dottori sulle specialità sulle specialità etc. etc.
Obbiettivo 2 Il portale deve poter essere usufruito anche da persone con poche conoscenze informatiche. E necessario, pertanto, realizzare un portale dotato di un aspetto grafico semplice ed intuitivo in grado di guidare lutente (attraverso brevi spiegazioni allinterno delle pagine) nelle scelte da effettuare.
Problemi 1) Trasmettere lintero database è una operazione troppo onerosa 2) MHP non prevede API per la gestione dei database allinterno del Set Top Box 3) Il database può contenere informazioni riservate che non devono essere accessibili a tutti
Soluzione I problemi si possono risolvere creando una applicazione Server che faccia da ponte tra il client (STB) ed il database, utilizzando il canale di ritorno. Il server elabora le richieste (query) del client e trasmette solo le informazioni necessarie.
Modello di riferimento
Soluzione In questo modo: 1) si evita di trasmettere tutto il database. 2) Non si dà la possibilità di accedere ad informazioni riservate 3) Il STB non ha alcun database da gestire
Comunicazione Client - Server Le funzionalità di rete di java sono raggruppate in diversi package. Le funzionalità di base sono dichiarate dalle classi e dalle interfacce del package java.net, attraverso le quali java offre comunicazioni basate su flussi che permettono alle applicazioni di vedere le reti come flussi di dati.
I Socket Una socket rappresenta il terminale di un canale di comunicazione bidirezionale. Le comunicazioni basate su socket permettono a un programma di leggere da o di scrivere in un socket proprio come se si trattasse di un file. Java offre due tipi di socket: Di flusso (stream socket) Di flusso (stream socket) Di datagramma (datagram socket) Di datagramma (datagram socket)
Quale Scegliere? Nel caso di stream socket, un processo stabilisce una connessione con un altro processo; mentre la connessione è in atto, i dati scorrono tra i processi attraverso un flusso continuo. Questi socket forniscono un servizio orientato alla connessione. Il protocollo utilizzato per la trasmissione è il TCP (Transmission Control Protocol). Nel caso di datagram socket, vengono trasmessi pacchetti di informazioni. Questo protocollo non è il più adatto ai nostri scopi perché, diversamente dal TCP, il protocollo utilizzato, ovvero UDP (User Datagram Protocol), è un servizio senza connessione, che non garantisce che i pacchetti giungano a destinazione nel modo corretto. Per questo motivo si è scelto di adoperare i socket di flusso ed il protocollo TCP per la comunicazione tra client e server.
Il Server La creazione di un server con java comporta lesecuzione di cinque fasi: 1. creare un oggetto ServerSocket 2. attesa di una connessione 3. ottenere gli oggetti OutputStream e InputStream 4. elaborazione 5. chiusura della connessione
Esempio di applicazione Server MServer.java
JDBC Java DataBase Connectivity, o JDBC, rappresenta un'astrazione che permette di scrivere del codice Java che si interfacci con un DataBase generico, prescindendo dalle specifiche del singolo produttore.
Affinché ciò sia realmente possibile, è necessario che le API di JDBC si interfaccino, a un livello successivo, con le librerie specifiche del particolare DB con cui si intende comunicare. Nel nostro caso, lapplicazione Server diventa client nella comunicazione col database. JDBC
Quando si crea una connessione con un DataBase non è necessario creare dei socket né ricorrere alle classi del package java.net. Tutti i dettagli della connessione sono gestiti da una classe appartenente alla libreria specifica del DB che si vuole utilizzare. Tale classe è nota come Driver. Quello che avviene nella pratica è che il codice del client si avvale di una classe denominata DriverManager alla quale viene delegato il compito di creare la connessione con il DataBase. JDBC Driver
Usare il JDBC La comunicazione con il database avviene in 4 fasi: 1. Caricare in memoria il Driver 2. Utilizzare il DriverManager per stabilire la connessione al database 3. interrogare il database (ResultSet) 4. Chiudere la connessione Le classi responsabili della comunicazione con il database sono: SQLAccess.java DBAccess.java
Realizzazione del progetto
Il portale per lA.S.U.R. Zona 7 La Home Page si presenta come in figura:
Questa applicazione è interattiva e sfrutta il canale di ritorno per far si che il Ste-Top-Box non carichi in memoria tutta la mole di dati. Le informazioni vengono inviate tramite connessione internet solo quando richieste dallutente durante la sua navigazione. A seguito di determinate scelte dellutente, si stabilisce una connessione con il server dellazienda (è qui che risiede lapplicazione Server descritta in precedenza) e per mezzo di una query (interrogazione) si prelevano i dati richiesti dallapposito DataBase. Il portale per lA.S.U.R. Zona 7
Il portale si suddivide in tre sezioni (più la guida): - Percorsi - Struttura - Numeri Utili - Guida Alla sezione si accede premendo il tasto colorato corrispondente sul telecomando. Nellarea Percorsi sono reperibili tutte le informazioni su azioni, documentazione e strutture dell'ambito sanitario attraverso semplici funzioni di ricerca. Nellarea Struttura sono contenute informazioni su: - A.S.U.R. (generale) - A.S.U.R. Zona 7 - U.R.P. Zona 7 (ufficio relazioni con il pubblico) - Informazioni sui dottori generici, specialisti e pediatri - Ospedali della Zona 7 Nellarea Numeri Utili si può consultare l'elenco dei numeri telefonici di maggiore utilità, come ad esempio: la guardia medica, i centralini dei vari distretti, etc. Le Sezioni
Architettura della Home Page I nomi allinterno dei rettangoli corrispondono ai nomi delle classi che realizzano la relativa pagina. Home DescrPerc TipiRicercaContainer MenuStruttNumUtili3Help
Architettura della Sezione Percorsi LArea Percorsi prevede 3 tipi di ricerca: per PAROLA CHIAVE per CATEGORIA per SPECIALITA
Esempio di come si presenta la sezione percorsi
Architettura della Sezione Struttura MenuStrutt ASURgenZona7URPDottoriOspedali Chiaravalle Osimo Loreto
Esempio di come si presenta la sezione Struttura
Esempio di come si presenta la sezione Numeri Utili
Esempio di come si presenta la sezione Aiuto
Sviluppi Futuri Il progetto è stato realizzato per dare una idea di come potrebbe essere il portale dellASUR se decidesse di espandere i suoi servizi anche sul digitale terrestre. La possibilità di consultare un database remoto rappresenta, tuttavia, soltanto un piccolo passo nel cammino da intraprendere per limplementazione di un vero e proprio portale.
Avendo la possibilità di espandere il progetto, si potrebbero implementare altri servizi, ad esempio: prenotazione delle prestazioniprenotazione delle prestazioni personalizzazione dellaspetto graficopersonalizzazione dellaspetto grafico visualizzazione dei referti medicivisualizzazione dei referti medici Mailing personali (per ricordare gli appuntamenti e/o informare sugli eventi)Mailing personali (per ricordare gli appuntamenti e/o informare sugli eventi) Ampliamento del databaseAmpliamento del database Ecc.Ecc. Sviluppi Futuri