developing open source gis: what are the challenges?
DESCRIPTION
Developing open source GIS: what are the challenges?. Gilberto Câmara INPE – Brasil www.terralib.org. Institute for Geoinformation – TU Wien – 16 June 2004. The Promise of Open Source. When an OSS project reaches a “critical size” we obtain many benefits Robustness - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/1.jpg)
Developing open source GIS: what are the challenges?
Gilberto Câmara
INPE – Brasil
www.terralib.org
Institute for Geoinformation – TU Wien – 16 June 2004
![Page 2: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/2.jpg)
The Promise of Open Source
When an OSS project reaches a “critical size” we obtain many benefits
Robustness ``Given enough eyeballs, all bugs are shallow.''
Cooperation ``Somebody finds the problem and somebody else understands
it'‘ (Linus Thorvalds)
Continuous Improvement “Treating your users as co-developers is your least-hassle route
to rapid code improvement and effective debugging”
![Page 3: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/3.jpg)
Naïve view of open source projects
Software Product of an individual or small group (peer-pressure) Based on a “kernel” with “plausible promise”
Development network Large number of developers, single repository
Open source products View as complex, innovative systems (Linux)
Incentives to participate Operate at an individual level (“self-esteem”) Wild-west libertarian (“John Waynes of the modern era”)
![Page 4: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/4.jpg)
Idealized model of OS software
Networks of committed individuals
![Page 5: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/5.jpg)
The Reality of Open Source
Previous existence of conceptual designs of similar products (the potential for reverse engineering) Design is the hardest part of software (Fred Brooks)
Problem granularity (the potential for distributed development) Effective peer-production requires high granularity
![Page 6: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/6.jpg)
Potential for Reverse Engineering
Post-mature A private company develops a software product. Product becomes popular and it becomes part of the “public
commons”. Others develop a public domain equivalent (e.g.,Open Office)
Standards-led Standards consolidate a technology Allow compatible solutions to compete in the marketplace. SQL database standard (e.g.,mySQL and PostgreSQL). POSIX standard (guidance to Linux) OpenGIS specifications (e.g.,Degree, MapServer, GeoServer)
![Page 7: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/7.jpg)
Potential for Distributed Development
Parts of a software product kernel and additional functions that use it (its periphery).
Operating systems (Linux) well-defined kernel for process control periphery consisting of programs such as device drivers,
applications, compilers and network tools.
Database management systems strong kernel of highly integrated functions (such as the parser,
scheduler, and optimizer) much smaller periphery.
![Page 8: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/8.jpg)
Potential for Distributed Development
Each type of software product - periphery/kernel ratio constrains the potential for distributed development
Kernel a tightly-organized and highly-skilled programming team.
Periphery More widespread programmers of various skills
Example Out of more than 400 developers, the top 15 programmers of
the Apache web server contribute 88% of added lines [Mockus, 2002 #2293].
![Page 9: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/9.jpg)
Four Types of Open Source Software
High reverse engineering, high distribution potential
High reverse engineering, low distribution potential
Low reverse engineering, high distribution potential
Low reverse engineering, low distribution potential
![Page 10: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/10.jpg)
Type 1 – High-High
High reverse engineering, high distribution potential:
Archetypical open source projects The “Linux” model.
Developers May have a separate job Time allocated in agreement with their employer.
community-led projects.
![Page 11: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/11.jpg)
Type 2 – High-Low
High reverse engineering, low distribution potential
Large number of projects Databases, office automation tools, web services.
Large presence of private companies products similar to market leaders. reduced risk in reverse engineering. main design decisions take place within the institution
Examples mySQL and PostgreSQL DBMS, GNOME from Ximian
corporation-led projects.
![Page 12: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/12.jpg)
Type 3 – Low/High
Low reverse engineering, high distribution potential
Stable kernel, innovative periphery usually there is no commercial counterpart share a relatively simple software kernel
Origin academic environments
Examples GRASS GIS software and the R suite of statistical tools.
collaborative projects
![Page 13: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/13.jpg)
Type 4 – Low/Low
Low reverse engineering, low distribution potential
Innovative kernel, small periphery
Small teams under a public R&D contract addressing specific requirements aiming to demonstrate novel scientific work.
High mortality rate most of them are restricted to the lifetime of a research grant.
innovative products.
![Page 14: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/14.jpg)
PotentialRev Eng
PotentialDistrib Develop
LinuxmySQL
OpenOffice
Apache
perl
Postgres
PostgreSQL
NCSA browser
High-Low High-High
Low-Low Low-High
GRASS
R
![Page 15: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/15.jpg)
PotentialRev Eng
PotentialDistrib Develop
innovative
High-Low High-High
Low-Low Low-High
corporate
collaborative
communitary
Challenges?
![Page 16: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/16.jpg)
Lessons from Open Source Projects
“It's fairly clear that one cannot code from the ground up in bazaar style . One can test, debug and improve in bazaar style, but it would be very hard to originate a project in bazaar mode. Linus didn't try it. Your nascent developer community needs to have something runnable and testable to play with” (Eric Raymond)
![Page 17: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/17.jpg)
Moving from the Low-Low Quadrant
Software in the “Low-Low” quadrant Unsustainable in the long run
Moving from an innovative to a collaborative project Sharing innovation Transforming a crude prototype into a modular, well designed
system
How do you build innovation into a modular design?
![Page 18: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/18.jpg)
Moving from the Low-Low Quadrant
“Perfection in design is achieved not when there is nothing more to add, but rather when there is nothing more to take away”. (Saint-Exupery)
How do you achive perfection in information science? Good scientific foundation Usually, sound mathematical abstractions
What is the situation in GIS?
![Page 19: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/19.jpg)
Do we have a solid foundation for GIS?
id name year selectionprojection
cartesian produnion difference
SELECT nameFROM facultyWHERE year > 1960
relations relational algebra SQL query language
Spatio-temporal data types
Operations on ST types
Spatial algebra
?
GIS language
![Page 20: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/20.jpg)
Challenges for geoinformationSource: Gassem Asrar (NASA)
![Page 21: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/21.jpg)
The Road Ahead: Smart Sensors
Source: Univ Berkeley, SmartDust project
SMART DUST Autonomous sensing and communication in a cubic millimeter
![Page 22: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/22.jpg)
Knowledge gap for spatial data
source: John McDonald (MDA)
![Page 23: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/23.jpg)
What’s the Current Status of Open Source GIS?
High-Low products Standards-based Spatial DBMS: mySQL, PostgreSQL OpenGIS + Web: MapServer, Degree
Low-high products Stable kernel, innovation at the periphery GRASS and R
What about GIScience challenges? spatio-temporal data models, geographical ontologies, spatial statistics
and spatial econometrics, dynamic modelling and cellular automata, environmental modelling, neural networks for spatial data
![Page 24: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/24.jpg)
TerraLib: Open source GIS library
Data management All of data (spatial + attributes) is in
database Functions
Spatial statistics, Image Processing, Map Algebra
Innovation Based on state-of-the-art techniques Same timing as similar commercial
products Web-based co-operative development
http://www.terralib.org
![Page 25: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/25.jpg)
Operational Vision of TerraLib
TerraLib
API for Spatial
Operations
Oracle SpatialAccess
MySQLPostgre
SQL
DBMS
Geographic Application
Spatial Operations
Spatial Operations
TerraLib MapObjects + ArcSDE + cell spaces + spatio-temporal models
![Page 26: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/26.jpg)
TerraLib applications
Cadastral Mapping Improving urban management of large
Brazilian cities Public Health
Spatial statistical tools for epidemiology and health services
Social Exclusion Indicators of social exclusion in inner-
city areas Land-use change modelling
Spatio-temporal models of deforestation in Amazonia
Emergency action planning Oil refineries and pipelines (Petrobras)
![Page 27: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/27.jpg)
TerraCrime
![Page 28: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/28.jpg)
Palm-top
![Page 29: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/29.jpg)
Exemplos de Produtos Web
![Page 30: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/30.jpg)
TerraLib Structure
VisualizationControls
Functions
Spatio-TemporalData Structures
DBMS
File and DBMS Access
ExternalFiles
I/O Drivers
Java Interface COM Interface OGIS Services
kernel
C++ Interface
![Page 31: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/31.jpg)
Spatio-Temporal Data Types
![Page 32: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/32.jpg)
x
y
time
Near in space, near in time?
Events
![Page 33: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/33.jpg)
f ( I (tn ))
. . FF
f ( I (t) ) f ( I (t+1) ) f ( I (t+2) )
Dynamical Spatial Model
“A dynamical spatial model is a mathematical representation of a real-world process when a location changes in response to external forces (Burrough)
![Page 34: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/34.jpg)
S 2
S 3
Reality - Bauru in 1988
Spatial Simulation
![Page 35: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/35.jpg)
Cell Spaces: Old Wine, New Bottle
![Page 36: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/36.jpg)
Regression with Spatial Data: Understanding Deforestation in Amazonia
![Page 37: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/37.jpg)
Future Deforestation Scenarios
Terra do Meio, Pará State
South of Amazonas State
Hot-spots map for new deforestation
![Page 38: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/38.jpg)
Modelling anisotropic space
Spatial relations in Amazonia are not isotropic!
![Page 39: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/39.jpg)
Desigining for Extensibility
Algorithms basic core of most successful GIS large number of them do not depend on some particular
implementation of a data structure based a few fundamental semantic properties of the structure properties can be - for example - the ability to get from one
element of the data structure to the next, and to compare two elements of the data structure .
Spatial analysis algorithms can be abstracted away from a particular data structure and
described only in terms of their properties.
![Page 40: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/40.jpg)
Same Algorithm, Different Geometries
![Page 41: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/41.jpg)
Generic GIS Programming
How to decouple algorithms from data structures ? Idea: Iterators (“inteligent pointers”) Algoritms are not classes !! “Decide which algorithms you want; parametrize them so
they work for a variety of suitable types and data structures”
Algorithms Iterators Geometries
![Page 42: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/42.jpg)
Scientific Challenges for Innovation in GIS
How can we design an algebra for ST types? What are the spatial-temporal data types?
How do we design a language for spatial modelling? Requires a caracterization of measurents Cognitively meaningful interfaces
Representation of Space How do we represent anisotropic space?
Extensibility of Models and Algorithms How do we design for extensibility?
![Page 43: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/43.jpg)
Why am I here today in TU-Wien?
Innovation in GISystems Requires addressing challenges in GIScience
Cooperation with prof. Andrew Frank Generic GIS Programming Semantics of Geographical Measurements Spatio-Temporal Types and Algebras Methods for Representation of Anisotropic Space
![Page 44: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/44.jpg)
PotentialRev Eng
PotentialDistrib Develop
LinuxmySQL
OpenOffice
Apache
TerraLib
perl
Postgres
PostgreSQL
NCSA browser
High-Low High-High
Low-Low Low-High
GRASS
R
Result of Sound Scientific Work
![Page 45: Developing open source GIS: what are the challenges?](https://reader038.vdocument.in/reader038/viewer/2022102702/56813dfd550346895da7d7c1/html5/thumbnails/45.jpg)
Conclusions
Open Source software model The Linux example is not applicable to all situations Moving from the individual level to the organization level
Geoinformation Innovative open source GIS software has a large role Sound research is needed to support innovation
Cooperation in GIScience is fundamental The problem is enormous...requires a combination of R&D We are few R&D groups Cooperation is the only way to ensure a future for GIScience