SlideShare a Scribd company logo
1 of 34
Download to read offline
Progettare un (Web)GIS
  utilizzando Software Libero

Eduard ing. Roccatello <eduard@roccatello.it>
          Linux Day 2008 @ RoLUG
          Rovigo - 25 Ottobre 2008
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
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
GIS
• I leader del mondo GIS sono enterprise
  –ESRI
  –ORACLE
  –AUTODESK
• Con qualche piacevole eccezione
  –GRASS

              Linux Day 2008 - Eduard Roccatello   4
Software Libero



• Vi siete mai chiesti cosa possono fare
  Linux ed il software libero per il vostro
  territorio?



              Linux Day 2008 - Eduard Roccatello   5
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
Approccio alla progettazione
•   Gis tecnologia servente
•   Focus su interfaccia
•   Focus su funzionalità specifiche
•   Attenzione ai dati
•   Sviluppo prototipale




                Linux Day 2008 - Eduard Roccatello   7
Interfaccia
• Esistono UI pattern oramai consolidati

• La progettazione dell’interfaccia deve
  rispettare regole ben affermate

• Enfasi su usabilità e fruizione del prodotto


               Linux Day 2008 - Eduard Roccatello   8
Esempi di UI Pattern
• Comandi
  – Quali usare
  – Come posizionarli
  – Come integrarli
• Navigazione
• Accessibilità
• Usabilità

                  Linux Day 2008 - Eduard Roccatello   9
Esempi di UI Pattern / 2
Spariscono i classici
bottoni zoom, info,
     evidenzia




                                                             Miniatura per
                                                             conoscere il
                                                           posizionamento
                                                           locale e globale

                            Risultati della ricerca
                           come punti di partenza
                            per utilizzare i servizi
                                   collegati

                      Linux Day 2008 - Eduard Roccatello                      10
Esempi di UI Pattern / 3



Punti di interesse                  Controlli per la
  intelleggibili                     navigazione
 senza legenda                        accessori.
                                    Punta e clicca




                     Linux Day 2008 - Eduard Roccatello   11
Esempi di UI Pattern / 4
Controlli concentrati
 in alto a sinistra
   (desktop like)




                                             Modalità di
                                         visualizzazione e
                                          layer facilmente
                                            selezionabili



Posso cambiare il
  punto di vista
 dell’osservatore




                        Linux Day 2008 - Eduard Roccatello   12
Esempi di UI Pattern / 5

                                               Salvo, stampo e
                                            condivido informazioni
                                             che mi interessano




                                      Posso aggiungere
                                     fermate intermedie
                                   facendo drag and drop
    La descrizione del
   percorso affianca la
   mappa per facilitare
     la comprensione

       Linux Day 2008 - Eduard Roccatello                     13
UI Pattern per la usability
Autocomplete – Suggerimenti durante la ricerca




Briciole di pane – Dove mi trovo?




                  Linux Day 2008 - Eduard Roccatello   14
UI Pattern per la usability / 2
Input Prompt – Orientare l’utente nelle decisioni




Forgiving Format – Interpretiamo l’input dell’utente




                   Linux Day 2008 - Eduard Roccatello   15
Funzionalità specifiche
• Visualizzazione fotorealistica
• Informazioni specifiche
• Funzioni di costruzione percorsi
  personalizzati
• Creazione strumenti per il viaggio o
  l’escursione



              Linux Day 2008 - Eduard Roccatello   16
Attenzione ai dati
• Esistono tipologie di dati (geografici)
  comuni ed affermate
• Immagini
• Mappe con simbologia immediata (no
  legenda)
• Virtual reality
• Dati aggiornati

               Linux Day 2008 - Eduard Roccatello   17
Dati: esempi dal mondo webgis




        Linux Day 2008 - Eduard Roccatello   18
Dati: ortofoto




Linux Day 2008 - Eduard Roccatello   19
Dati: mappa turistica




    Linux Day 2008 - Eduard Roccatello   20
Dati: 3D and Virtual Reality




       Linux Day 2008 - Eduard Roccatello   21
Dati: 3D and Virtual Reality




       Linux Day 2008 - Eduard Roccatello   22
Architettura applicativa
Caratteristiche fondamentali
• Prestazioni
• Scalabilità
• Disponibilità
• Sicurezza




              Linux Day 2008 - Eduard Roccatello   23
Schema architetturale
APPLICAZIONE AJAX


                                           APPLICAZIONE DESKTOP
  BROWSER WEB
                                               TRADIZIONALE

     Client per l’utente finale                               Client di editing



APPLICATION SERVER                     GEO (SPATIAL WEB) SERVER



                           GEO DBMS

                                                       Componenti lato server

                  Linux Day 2008 - Eduard Roccatello                         24
GeoDBMS
• Informazioni spaziali e alfanumeriche
  memorizzate in un database relazionale.
• FOSS  PostgreSQL + PostGIS

Fornisce:
• Sicurezza ed integrità
• Prestazioni (indici spaziali)
• Funzionalità di analisi spaziale
               Linux Day 2008 - Eduard Roccatello   25
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.
              Linux Day 2008 - Eduard Roccatello   26
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

               Linux Day 2008 - Eduard Roccatello   27
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.



              Linux Day 2008 - Eduard Roccatello   28
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
               Linux Day 2008 - Eduard Roccatello   29
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

               Linux Day 2008 - Eduard Roccatello   30
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
               Linux Day 2008 - Eduard Roccatello   31
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
La gestione dell’applicazione
• Aggiornamento dei dati
• Adeguamento costante delle funzionalità
• Adeguamento all’evoluzione del contesto
  specifico




             Linux Day 2008 - Eduard Roccatello   33
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)

               Linux Day 2008 - Eduard Roccatello   34

More Related Content

Similar to Progettare un (Web)GIS utilizzando Software Libero

ERDAS 2011 World Tour Slideshow Presentazione
ERDAS 2011 World Tour Slideshow PresentazioneERDAS 2011 World Tour Slideshow Presentazione
ERDAS 2011 World Tour Slideshow PresentazionePlanetek Italia Srl
 
GWT Development for Handheld Devices
GWT Development for Handheld DevicesGWT Development for Handheld Devices
GWT Development for Handheld DevicesGWTcon
 
Corso Unified Modeling Language (UML)
Corso Unified Modeling Language (UML)Corso Unified Modeling Language (UML)
Corso Unified Modeling Language (UML)K-Tech Formazione
 
Gestione Schematico2009
Gestione Schematico2009Gestione Schematico2009
Gestione Schematico2009Diego Faro
 
Gestione Schematico2009
Gestione Schematico2009Gestione Schematico2009
Gestione Schematico2009guest15b813
 
Lo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICTLo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICTMatteo Gentile
 
Framework per la realizzazione di ria
Framework per la realizzazione di riaFramework per la realizzazione di ria
Framework per la realizzazione di riaLorenzo Bortolotto
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in ActionDotNetMarche
 
Introduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCIntroduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCGeoSolutions
 
Introduzione a Ruby On Rails
Introduzione a Ruby On RailsIntroduzione a Ruby On Rails
Introduzione a Ruby On RailsLuca Mearelli
 
Cavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISCavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISBetter Software
 
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
 Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progettoMicrosoft Mobile Developer
 
Tesi Marco Ventura
Tesi Marco VenturaTesi Marco Ventura
Tesi Marco Venturaguest335584
 

Similar to Progettare un (Web)GIS utilizzando Software Libero (20)

ERDAS 2011 World Tour Slideshow Presentazione
ERDAS 2011 World Tour Slideshow PresentazioneERDAS 2011 World Tour Slideshow Presentazione
ERDAS 2011 World Tour Slideshow Presentazione
 
Geomaster 2.0
Geomaster 2.0Geomaster 2.0
Geomaster 2.0
 
Cityvu - CityGML Viewer
Cityvu - CityGML ViewerCityvu - CityGML Viewer
Cityvu - CityGML Viewer
 
GWT Development for Handheld Devices
GWT Development for Handheld DevicesGWT Development for Handheld Devices
GWT Development for Handheld Devices
 
X La Gui
X La GuiX La Gui
X La Gui
 
Corso Unified Modeling Language (UML)
Corso Unified Modeling Language (UML)Corso Unified Modeling Language (UML)
Corso Unified Modeling Language (UML)
 
cv Armando Maglio
cv Armando Magliocv Armando Maglio
cv Armando Maglio
 
Cac Es3 2009
Cac Es3 2009Cac Es3 2009
Cac Es3 2009
 
Gestione Schematico2009
Gestione Schematico2009Gestione Schematico2009
Gestione Schematico2009
 
Gestione Schematico2009
Gestione Schematico2009Gestione Schematico2009
Gestione Schematico2009
 
Lo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICTLo stato dell' arte sulla documentazione dei progetti ICT
Lo stato dell' arte sulla documentazione dei progetti ICT
 
Framework per la realizzazione di ria
Framework per la realizzazione di riaFramework per la realizzazione di ria
Framework per la realizzazione di ria
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
 
Introduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCIntroduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGC
 
Dominopoint meet the experts 2015 - XPages
Dominopoint   meet the experts 2015 - XPagesDominopoint   meet the experts 2015 - XPages
Dominopoint meet the experts 2015 - XPages
 
Introduzione a Ruby On Rails
Introduzione a Ruby On RailsIntroduzione a Ruby On Rails
Introduzione a Ruby On Rails
 
Cavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISCavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GIS
 
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
 Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto
 
Tesi Marco Ventura
Tesi Marco VenturaTesi Marco Ventura
Tesi Marco Ventura
 
Erlug
ErlugErlug
Erlug
 

More from Eduard Roccatello

More from Eduard Roccatello (10)

Cloud computing 101
Cloud computing 101Cloud computing 101
Cloud computing 101
 
Partecipazione civica
Partecipazione civicaPartecipazione civica
Partecipazione civica
 
Sviluppare applicazioni geolocalizzate per iPhone
Sviluppare applicazioni geolocalizzate per iPhoneSviluppare applicazioni geolocalizzate per iPhone
Sviluppare applicazioni geolocalizzate per iPhone
 
Programmazione Internet
Programmazione InternetProgrammazione Internet
Programmazione Internet
 
Sviluppare Per Apple iPhone
Sviluppare Per Apple iPhoneSviluppare Per Apple iPhone
Sviluppare Per Apple iPhone
 
Google Hacking
Google HackingGoogle Hacking
Google Hacking
 
Ancora social network? Facebook!
Ancora social network? Facebook!Ancora social network? Facebook!
Ancora social network? Facebook!
 
Editor di Immagini 2.0
Editor di Immagini 2.0Editor di Immagini 2.0
Editor di Immagini 2.0
 
Be cool, be safe: sicurezza in chat
Be cool, be safe: sicurezza in chatBe cool, be safe: sicurezza in chat
Be cool, be safe: sicurezza in chat
 
Web Browser
Web BrowserWeb Browser
Web Browser
 

Progettare un (Web)GIS utilizzando Software Libero

  • 1. Progettare un (Web)GIS utilizzando Software Libero Eduard ing. Roccatello <eduard@roccatello.it> Linux Day 2008 @ RoLUG Rovigo - 25 Ottobre 2008
  • 2. 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
  • 3. 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
  • 4. GIS • I leader del mondo GIS sono enterprise –ESRI –ORACLE –AUTODESK • Con qualche piacevole eccezione –GRASS Linux Day 2008 - Eduard Roccatello 4
  • 5. Software Libero • Vi siete mai chiesti cosa possono fare Linux ed il software libero per il vostro territorio? Linux Day 2008 - Eduard Roccatello 5
  • 6. 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
  • 7. Approccio alla progettazione • Gis tecnologia servente • Focus su interfaccia • Focus su funzionalità specifiche • Attenzione ai dati • Sviluppo prototipale Linux Day 2008 - Eduard Roccatello 7
  • 8. Interfaccia • Esistono UI pattern oramai consolidati • La progettazione dell’interfaccia deve rispettare regole ben affermate • Enfasi su usabilità e fruizione del prodotto Linux Day 2008 - Eduard Roccatello 8
  • 9. Esempi di UI Pattern • Comandi – Quali usare – Come posizionarli – Come integrarli • Navigazione • Accessibilità • Usabilità Linux Day 2008 - Eduard Roccatello 9
  • 10. Esempi di UI Pattern / 2 Spariscono i classici bottoni zoom, info, evidenzia Miniatura per conoscere il posizionamento locale e globale Risultati della ricerca come punti di partenza per utilizzare i servizi collegati Linux Day 2008 - Eduard Roccatello 10
  • 11. Esempi di UI Pattern / 3 Punti di interesse Controlli per la intelleggibili navigazione senza legenda accessori. Punta e clicca Linux Day 2008 - Eduard Roccatello 11
  • 12. Esempi di UI Pattern / 4 Controlli concentrati in alto a sinistra (desktop like) Modalità di visualizzazione e layer facilmente selezionabili Posso cambiare il punto di vista dell’osservatore Linux Day 2008 - Eduard Roccatello 12
  • 13. Esempi di UI Pattern / 5 Salvo, stampo e condivido informazioni che mi interessano Posso aggiungere fermate intermedie facendo drag and drop La descrizione del percorso affianca la mappa per facilitare la comprensione Linux Day 2008 - Eduard Roccatello 13
  • 14. UI Pattern per la usability Autocomplete – Suggerimenti durante la ricerca Briciole di pane – Dove mi trovo? Linux Day 2008 - Eduard Roccatello 14
  • 15. UI Pattern per la usability / 2 Input Prompt – Orientare l’utente nelle decisioni Forgiving Format – Interpretiamo l’input dell’utente Linux Day 2008 - Eduard Roccatello 15
  • 16. Funzionalità specifiche • Visualizzazione fotorealistica • Informazioni specifiche • Funzioni di costruzione percorsi personalizzati • Creazione strumenti per il viaggio o l’escursione Linux Day 2008 - Eduard Roccatello 16
  • 17. Attenzione ai dati • Esistono tipologie di dati (geografici) comuni ed affermate • Immagini • Mappe con simbologia immediata (no legenda) • Virtual reality • Dati aggiornati Linux Day 2008 - Eduard Roccatello 17
  • 18. Dati: esempi dal mondo webgis Linux Day 2008 - Eduard Roccatello 18
  • 19. Dati: ortofoto Linux Day 2008 - Eduard Roccatello 19
  • 20. Dati: mappa turistica Linux Day 2008 - Eduard Roccatello 20
  • 21. Dati: 3D and Virtual Reality Linux Day 2008 - Eduard Roccatello 21
  • 22. Dati: 3D and Virtual Reality Linux Day 2008 - Eduard Roccatello 22
  • 23. Architettura applicativa Caratteristiche fondamentali • Prestazioni • Scalabilità • Disponibilità • Sicurezza Linux Day 2008 - Eduard Roccatello 23
  • 24. Schema architetturale APPLICAZIONE AJAX APPLICAZIONE DESKTOP BROWSER WEB TRADIZIONALE Client per l’utente finale Client di editing APPLICATION SERVER GEO (SPATIAL WEB) SERVER GEO DBMS Componenti lato server Linux Day 2008 - Eduard Roccatello 24
  • 25. GeoDBMS • Informazioni spaziali e alfanumeriche memorizzate in un database relazionale. • FOSS  PostgreSQL + PostGIS Fornisce: • Sicurezza ed integrità • Prestazioni (indici spaziali) • Funzionalità di analisi spaziale Linux Day 2008 - Eduard Roccatello 25
  • 26. 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. Linux Day 2008 - Eduard Roccatello 26
  • 27. 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 Linux Day 2008 - Eduard Roccatello 27
  • 28. 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. Linux Day 2008 - Eduard Roccatello 28
  • 29. 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 Linux Day 2008 - Eduard Roccatello 29
  • 30. 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 Linux Day 2008 - Eduard Roccatello 30
  • 31. 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 Linux Day 2008 - Eduard Roccatello 31
  • 32. 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
  • 33. La gestione dell’applicazione • Aggiornamento dei dati • Adeguamento costante delle funzionalità • Adeguamento all’evoluzione del contesto specifico Linux Day 2008 - Eduard Roccatello 33
  • 34. 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) Linux Day 2008 - Eduard Roccatello 34