Progettare un (Web)GIS utilizzando Software Libero
-
Upload
eduard-roccatello -
Category
Technology
-
view
4.605 -
download
0
description
Transcript of Progettare un (Web)GIS utilizzando Software Libero
![Page 1: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/1.jpg)
Progettare un (Web)GIS utilizzando Software Libero
Eduard ing. Roccatello <[email protected]>
Linux Day 2008 @ RoLUG
Rovigo - 25 Ottobre 2008
![Page 2: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/2.jpg)
GIS e informazione territoriale
• GIS, Geographic Information System, è
la sigla che individua la tipologia di
software che lavora con il territorio.
• Un esempio:
– Google Maps, Yahoo! Maps, ViaMichelin,
Microsoft Live Search Maps.
– Sono solo alcune delle applicazioni online che
consentono l’accesso al territorio e alle
informazioni contenute in esso.
Linux Day 2008 - Eduard Roccatello 2
![Page 3: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/3.jpg)
GIS e informazione territoriale / 2
• Formalmente un Sistema Informativo
Territoriale (SIT) è un sistema informativo
capace di integrare, memorizzare,
modificare, analizzare, condividere e
visualizzare informazioni geograficamente
referenziate, cioè a cui sono state
associate coordinate geografiche secondo
un preciso sistema di riferimento.
Linux Day 2008 - Eduard Roccatello 3
![Page 4: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/4.jpg)
GIS
• I leader del mondo GIS sono enterprise
–ESRI
–ORACLE
–AUTODESK
• Con qualche piacevole eccezione
–GRASS
Linux Day 2008 - Eduard Roccatello 4
![Page 5: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/5.jpg)
Software Libero
• Vi siete mai chiesti cosa possono fare
Linux ed il software libero per il vostro
territorio?
Linux Day 2008 - Eduard Roccatello 5
![Page 6: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/6.jpg)
Software Libero
• Da sempre la comunità professionale che
opera nel settore GIS considera Linux
come una risorsa.
• Lo sviluppo di applicazioni territoriali
opensource per il pinguino è all’ordine del
giorno.
Linux Day 2008 - Eduard Roccatello 6
![Page 7: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/7.jpg)
Approccio alla progettazione
• Gis tecnologia servente
• Focus su interfaccia
• Focus su funzionalità specifiche
• Attenzione ai dati
• Sviluppo prototipale
7Linux Day 2008 - Eduard Roccatello
![Page 8: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/8.jpg)
Interfaccia
• Esistono UI pattern oramai consolidati
• La progettazione dell’interfaccia deve
rispettare regole ben affermate
• Enfasi su usabilità e fruizione del prodotto
8Linux Day 2008 - Eduard Roccatello
![Page 9: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/9.jpg)
Esempi di UI Pattern
• Comandi
– Quali usare
– Come posizionarli
– Come integrarli
• Navigazione
• Accessibilità
• Usabilità
9Linux Day 2008 - Eduard Roccatello
![Page 10: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/10.jpg)
Esempi di UI Pattern / 2
Linux Day 2008 - Eduard Roccatello 10
Miniatura per
conoscere il
posizionamento
locale e globale
Risultati della ricerca
come punti di partenza
per utilizzare i servizi
collegati
Spariscono i classici
bottoni zoom, info,
evidenzia
![Page 11: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/11.jpg)
Esempi di UI Pattern / 3
Linux Day 2008 - Eduard Roccatello 11
Punti di interesse
intelleggibili
senza legenda
Controlli per la
navigazione
accessori.
Punta e clicca
![Page 12: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/12.jpg)
Esempi di UI Pattern / 4
Linux Day 2008 - Eduard Roccatello 12
Controlli concentrati
in alto a sinistra
(desktop like)
Modalità di
visualizzazione e
layer facilmente
selezionabili
Posso cambiare il
punto di vista
dell’osservatore
![Page 13: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/13.jpg)
Esempi di UI Pattern / 5
Linux Day 2008 - Eduard Roccatello 13
Posso aggiungere
fermate intermedie
facendo drag and dropLa descrizione del
percorso affianca la
mappa per facilitare
la comprensione
Salvo, stampo e
condivido informazioni
che mi interessano
![Page 14: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/14.jpg)
UI Pattern per la usability
Autocomplete – Suggerimenti durante la ricerca
Linux Day 2008 - Eduard Roccatello 14
Briciole di pane – Dove mi trovo?
![Page 15: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/15.jpg)
UI Pattern per la usability / 2
Input Prompt – Orientare l’utente nelle decisioni
Linux Day 2008 - Eduard Roccatello 15
Forgiving Format – Interpretiamo l’input dell’utente
![Page 16: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/16.jpg)
Funzionalità specifiche
• Visualizzazione fotorealistica
• Informazioni specifiche
• Funzioni di costruzione percorsi
personalizzati
• Creazione strumenti per il viaggio o
l’escursione
16Linux Day 2008 - Eduard Roccatello
![Page 17: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/17.jpg)
Attenzione ai dati
• Esistono tipologie di dati (geografici)
comuni ed affermate
• Immagini
• Mappe con simbologia immediata (no
legenda)
• Virtual reality
• Dati aggiornati
17Linux Day 2008 - Eduard Roccatello
![Page 18: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/18.jpg)
Dati: esempi dal mondo webgis
Linux Day 2008 - Eduard Roccatello 18
![Page 19: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/19.jpg)
Dati: ortofoto
Linux Day 2008 - Eduard Roccatello 19
![Page 20: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/20.jpg)
Dati: mappa turistica
Linux Day 2008 - Eduard Roccatello 20
![Page 21: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/21.jpg)
Dati: 3D and Virtual Reality
Linux Day 2008 - Eduard Roccatello 21
![Page 22: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/22.jpg)
Dati: 3D and Virtual Reality
Linux Day 2008 - Eduard Roccatello 22
![Page 23: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/23.jpg)
Architettura applicativa
Caratteristiche fondamentali
• Prestazioni
• Scalabilità
• Disponibilità
• Sicurezza
23Linux Day 2008 - Eduard Roccatello
![Page 24: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/24.jpg)
Schema architetturale
24Linux Day 2008 - Eduard Roccatello
Componenti lato server
Client per l’utente finale
GEO DBMS
GEO (SPATIAL WEB) SERVERAPPLICATION SERVER
BROWSER WEB
APPLICAZIONE AJAX
Client di editing
APPLICAZIONE DESKTOP
TRADIZIONALE
![Page 25: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/25.jpg)
GeoDBMS
• Informazioni spaziali e alfanumeriche
memorizzate in un database relazionale.
• FOSS PostgreSQL + PostGIS
Fornisce:
• Sicurezza ed integrità
• Prestazioni (indici spaziali)
• Funzionalità di analisi spaziale
25Linux Day 2008 - Eduard Roccatello
![Page 26: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/26.jpg)
Geospatial Webserver
• Consentono la pubblicazione di dati
geospaziali come mappe ed immagini
(utilizzando Web Map Service) o come
dati (utilizzando Web Feature Service).
• FOSS GeoServer
• Si differenziano per funzionalità, supporto
agli standard ed ambiente operativo.
26Linux Day 2008 - Eduard Roccatello
![Page 27: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/27.jpg)
Client per l’utente finale
• Thin / thick
• Vantaggi e svantaggi
• WebGIS client – caratteristiche peculiari
– nessun plugin specifico
– solo browser (ambiente di esecuzione
potente)
– Massimizzazione prestazioni e
minimizzazione dello scambio dati
27Linux Day 2008 - Eduard Roccatello
![Page 28: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/28.jpg)
Client Amministrazione/gestione
• Funzioni di aggiornamento dati
alfanumerici (anche web)
• Funzioni di aggiornamento dati spaziali
(editing) via applicazione desktop –
connessione con GeoDBMS, controlli di
validazione.
28Linux Day 2008 - Eduard Roccatello
![Page 29: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/29.jpg)
Standard per il GIS
• Punto di riferimento per l’interoperabilità
• Quali standard?
– Definiti dall’Open Geospatial Consortium
– I più importanti ed utilizzati sono
• GML, WMS, WFS, WMC ed SLD
• Standard versus prestazioni
• Standard versus velocità di sviluppo
29Linux Day 2008 - Eduard Roccatello
![Page 30: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/30.jpg)
Standard per il GIS
• Vantaggi
– Standard come documentazione di riferimento
– Indipendenza dal singolo prodotto
– Soluzioni di qualità elevata
• Svantaggi
– Apprendimento complesso
– A volte sono poco supportati
– Complicano lo sviluppo dei prodotti
30Linux Day 2008 - Eduard Roccatello
![Page 31: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/31.jpg)
Modello di sviluppo
• AJAX per rendere i prodotti web più simili
alle applicazioni classiche
– Aggiunta di un layer di comunicazione tra
server e client
– XML, CSS, Javascript e XHTML
• Soluzioni di classe enterprise
– Java J2EE, MVC, ORM
• Soluzioni per la prototipazione veloce
31Linux Day 2008 - Eduard Roccatello
![Page 32: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/32.jpg)
Modello di sviluppo / 2
• Analisi esigenze ed individuazione dati
• Creazione delle tematizzazioni
• Individuazione delle funzioni necessarie
• Impostazione dei servizi geospaziali
• Progettazione componenti
• Sviluppo componente server side
• Sviluppo componente client side
Linux Day 2008 - Eduard Roccatello 32
![Page 33: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/33.jpg)
La gestione dell’applicazione
• Aggiornamento dei dati
• Adeguamento costante delle funzionalità
• Adeguamento all’evoluzione del contesto
specifico
33Linux Day 2008 - Eduard Roccatello
![Page 34: Progettare un (Web)GIS utilizzando Software Libero](https://reader035.fdocument.pub/reader035/viewer/2022062514/558e98f51a28aba3708b4682/html5/thumbnails/34.jpg)
Conclusioni
Per applicazioni di successo (nel tempo)
• Attenzione ad interfaccia
• Architettura solida e performante
• Uso di standard (anche se costa di più)
garanzia di sviluppo
• Risorse per la gestione (dati e funzioni)
34Linux Day 2008 - Eduard Roccatello