Geodesia 02-2003 - Wageningen UR E

advertisement
EEN
A LTE R N ATI E F O F CO N C U R R E N T
?
De Open Source GIS wereld
Open Source Software (OSS), software waarvan de broncode beschikbaar is,
staat erg in de belangstelling. Bij (overheids-)organisaties wordt er al volop
mee gewerkt, of het nu gaat om de inzet van het besturingssysteem Linux
of de toepassing van de Apache web-server. Hoe staat het nu met OSS in
de geo-informatie sector? Welke programmatuur is er op de markt? De Open
Source GIS markt is volwassen geworden en de inzet van OSS bij organisaties
neemt toe, waarbij zakelijke overwegingen de hoofdrol spelen.
D
e volwassenheid van zowel OSS als commerciële
software kan worden vergeleken met een keukenkruk met drie poten: juridische aspecten, technologie en organisatie.
Als één van de drie poten los zit kun je er niet op zitten. De
continuïteit van een product is gewaarborgd als de juridische aspecten, de technologie en de organisatie een solide
structuur vormen. Juridische stabiliteit voor een niet-jurist
betekent onder meer: hoe staat het met aansprakelijkheid?
Krijg ik als gebruiker problemen als ik met bepaalde Open
Source software in zee ga? De technologie gaat uiteraard
over programmeertalen en standaard-bibliotheken, maar
ook over de adoptie van open standaarden zoals bijvoorbeeld XML, met name de Geography Markup Language
(GML). De organisatie heeft betrekking op de communities,
de gemeenschappen op internet rondom een bepaald product. Wie zijn er actief? Hoe wordt er gecommuniceerd?
Hoe komen beslissingen tot stand? Hoe actief is de gemeenschap en hoe is de continuïteit gewaarborgd?
248
Wat is Open Source?
G eo -I nformatie N ederland
Het begrip Open Source Software (OSS) wordt nogal eens
verward met de termen freeware en shareware. Die verwarring is begrijpelijk, want in alle gevallen betreft het gratis
producten. Hier houdt de overeenkomst meteen op. Bij
shareware en freeware is de broncode niet beschikbaar. Anderen kunnen de broncode dus niet aanpassen. Ook is het
verder distribueren van de software niet toegestaan. Daarnaast kent shareware software een begrensde functionaliteit die pas na overmaking van een geldbedrag volledig beschikbaar komt.
Bij Open Source software (ook wel free software genoemd)
gaat het om vrijheid: de vrijheid om de broncode te distribueren en om aanpassingen te maken. Dit wordt vastgelegd
in de licentie. In het spectrum van de Open Source software
licenties zijn er twee uitersten: de Berkeley Software Distribution (BSD) en de General Public License (GPL).
GEO-INFO 2005-5
Wim de Haas, Adviesdienst Geo-informatie en ICT van Rijkswaterstaat en
Bart van den Eijnden, Syncera IT
Solutions (tot 1 april: Geodan IT)
Toepassing
Voor beide licenties geldt, dat je de
software krijgt met de broncode maar
zonder garantie. De BSD zegt dat je er
alles mee mag doen: aanpassingen verrichten, een strik omheen doen en het
voor veel geld doorverkopen als ‘closed
source’ of weggeven. De enige voorwaarde is vermelding van de auteursrechthebbende(n) en van het feit dat
Open Source software-componenten
zijn gebruikt. De GPL daarentegen is
zeer strikt: eenmaal Open Source, altijd Open Source. Dit houdt in, dat de
oorspronkelijke broncode en de eigen
toevoegingen automatisch weer onder
de GPL-licentie dienen te worden verspreid. In de juridische literatuur worden deze twee uitersten ook wel aangeduid als copyleft (GPL) en non-copyleft
(BSD). Andere bekende licenties zijn
de Apache Software Foundation (ASF),
de Mozilla Public License (MPL) en de
Creative Commons License.
Risico’s
Veel potentiële gebruikers van Open
Source software zien juridische onzekerheden die de introductie in de weg
zouden staan. Vaak wordt dan verwezen naar de vergaande aansprakelijkheidsuitsluiting in geval van geconstateerde fouten. Dit is niet verwonderlijk bij software die gratis wordt aangeboden. Bij de meeste gesloten software
geldt echter ook, dat de garantie beperkt blijft tot de aanschafwaarde van
de software. Met de wetenschap dat
de implementatiekosten de aanschafkosten vele malen overstijgen, krijgt
dit argument dus minder betekenis.
Aanvullende garantie kan wel worden
verkregen door bijvoorbeeld een Service Level Agreement (SLA) af te sluiten
met een implementatiepartij. Hiermee
lijkt Open Source software al weer wat
meer op commerciële software.
Een tweede risico dat vaak wordt genoemd, is dat de gebruiker kan worden
aangesproken op grond van inbreuk op
intellectuele eigendomsrechten. Er is
echter niets nieuws onder de zon: dezelfde claims kunnen gedaan worden
op onderdelen van commerciële software. Ook hier kan de gebruiker door
een SLA het risico afdekken. Daarnaast
bestaat de mogelijkheid om uitsluitend software te betrekken van een gemeenschap die zich heeft verenigd tot
een stichting die namens de gemeenschap mag spreken. De bekendste van
deze stichtingen is wellicht de Apache
Software Foundation.
Technologie
Veel Open Source projecten zijn een intelligente verzameling van andere
Open Source bibliotheken. Dit geldt
ook voor de Open Source GIS-wereld.
De Open Source GIS-wereld is grofweg
op te delen naar de gebruikte programmeertalen: C en Java. UMN Mapserver
is een goed voorbeeld van een C-project
en Geoserver is een voorbeeld van zo’n
Java-project. In deze paragraaf wordt
een categorische indeling behandeld
van de beschikbare Open Source GISprojecten, waaronder ruimtelijke databases, bibliotheken, toolkits, desktop clients, webservices en internet
clients. Zie ook het door Paul Ramsey
opgestelde overzicht [Ramsey, 2005].
Naam
Taal
Ruimtelijke databases
Licentie
Website
PostGIS
C
GPL
postgis.refractions.net
Spatial DB
in a Box
Java
LGPL
docs.codehaus.org/display/GEOS/spatialDBbox
MySQL
C/C++
GPL
www.mysql.com
Bibliotheken
Geotools
Java
LGPL
www.geotools.org
Java Topology
Suite (JTS)
Java
LGPL
www.vividsolutions.com/jts
GDAL/OGR
C++
MIT
www.gdal.org
PROJ.4
C
MIT-style
proj.maptools.org
nvt
nvt
fwtools.maptools.org
uDIG
Java
GPL
udig.refractions.net
OpenEV
C/Python
LGPL
openev.sourceforge.net
Quantum GIS
(QGIS)
C++
GPL
qgis.sourceforge.net
OSSIM
C++
GPL
www.ossim.org
Grass
C
GPL
grass.itc.it
Thuban
Python
GPL
thuban.intevation.org
JUMP
Java
LGPL
www.jump-project.org
Java
Toolkits
FWTools
Desktop clients
Web services
Geoserver
GPL
geoserver.sourceforge.net
UMN Mapserver C
MIT-style
mapserver.gis.umn.edu
Deegree
Java
GPL
deegree.sourceforge.net
GeoNetwork
Java
LGPL
sourceforge.net/projects/geonetwork
Chameleon
PHP
MIT-style
chameleon.maptools.org
Community
Mapbuilder
Javascript
GPL
mapbuilder.sourceforge.net
249
Internet clients
Mapbender
PHP
GPL
www.mapbender.org
Deegree
iGeoportal
Java
GPL
deegree.sourceforge.net
Intermap
Java
LGPL
sourceforge.net/projects/intermap
Tabel 1.
Overzicht van
Open Source GIS.
In de commerciële GIS-wereld is Oracle Spatial een voorbeeld
van een ruimtelijke database. In de OSS-wereld wordt meestal gekozen voor PostGIS. Dit is gebaseerd op de Open Source
database PostgreSQL, een zeer volwassen database-systeem.
Andere OSS-alternatieven zijn “Spatial DB in a Box” en
MySQL Spatial Extensions. Deze uitbreiding van de MySQL
4.1 database maakt het mogelijk om geografische structuren
op te slaan in een database [Ramsey, 2003]. Ook kunnen
ruimtelijke vragen worden uitgevoerd met behulp van SQL.
Bibliotheken zijn de generieke bouwstenen voor GIS-producten. Deze bibliotheken worden vaak in meerdere Open
Source GIS-producten gebruikt en soms zelfs in commerciële GIS-producten. Om de functionaliteit ook beschikbaar te
stellen voor gebruikers met weinig kennis van programmeren, zijn sommige bibliotheken gebundeld in een toolkit.
Frank Warmerdam distribueert een GIS-toolkit genaamd
FWTools, te vinden op fwtools.maptools.org. Gebruikers
kunnen hiermee bijvoorbeeld snel diverse vector- en rasterbestanden converteren en de projectie ervan veranderen.
GEO-INFO 2005-5
Naast deze toolkits bestaan er ook
Open Source desktop GIS-pakketten.
De bekendste is GRASS.
In een hedendaagse GIS-architectuur
vormen web-services een belangrijk
onderdeel. Vaak zijn web-services een
implementatie van een OGC-standaard,
zoals WMS (Web Map Service), WFS (Web
Feature Service) of WCS (Web Coverage
Service). In de commerciële GIS-wereld
kun je hier denken aan Ionic RedSpider
en ESRI’s ArcIMS uitgerust met de OGCschillen.
Overzicht UMN Mapserver bibliotheken.
250
UMN Mapserver bestaat sinds 1994, en
is oorspronkelijk opgericht door de
University of Minnesota (UMN). De
UMN Mapserver is een Web Map Service, eenvoudig gezegd een kaartgenerator voor het internet. In 1999 heeft
de UMN gezelschap gekregen van het
Canadese bedrijf DM Solutions Group.
Ook de Canadees Frank Warmerdam,
een bekend Open Source GIS-freelancer en specialist op het gebied van bestandsformaten, is een actieve ontwikkelaar van Mapserver. Warmerdam
wordt ook door commerciële bedrijven zoals Safe Software ingehuurd, en
zijn bibliotheken voor het lezen en
schrijven van geografische bestandsformaten worden zelfs door een aantal
commerciële pakketten gebruikt. Voor
UMN Mapserver kan, net als voor bijvoorbeeld Linux, commerciële ondersteuning ingekocht worden.
Overzicht van de Geoserver bibliotheken.
Geoserver is ontwikkeld door The Open
Planning Project (TOPP), een Amerikaanse non-profit organisatie. Het is
een Java implementatie (J2EE) van de
Web Feature Server met ondersteuning
voor transacties, en is door het OGC tot
reference implementation benoemd.
Financiële bijdragen zijn er vanuit de
Verenigde Staten, Canada en Australië.
G eo -I nformatie N ederland
Onder een internet-client wordt hier
verstaan een GIS-component die in een
browser kan functioneren. In sommige
gevallen betreft dit een clientside implementatie zoals javascript,
echter in de meeste gevallen is er ook
een achterliggende servertechnologie
benodigd zoals PHP.
Communities
Geoservices Mapviewer is een Open Source Internet client-applicatie ontwikkeld voor RWS-AGI.
GEO-INFO 2005-5
Een sleutelfactor voor elk Open Source project is de community, de gemeenschap. Bij een Open Source ge-
meenschap kan vaak onderscheid gemaakt worden tussen een ontwikkelaarsgemeenschap en een gebruikersgemeenschap. Natuurlijk bestaat er
ook overlap tussen beide gemeenschappen, aangezien veel ontwikkelaars behoren tot de groep van geavanceerde gebruikers. Het opbouwen van
een stabiele gemeenschap kost veel
tijd. Als voorbeeld van een Open Source GIS-gemeenschap wordt hier de
UMN Mapserver-gemeenschap beschreven, aangezien dit een zeer volwassen en relatief lang bestaande gemeenschap is.
In een artikel dat in 2000 verscheen van de hand van Eric Raymond onder de titel “The cathedral and the bazaar”, vergelijkt de auteur de meer traditionele manier van software-ontwikkeling met de open source software-ontwikkeling [Raymond, 2000]. Hij beschrijft een centrale aanpak waarin ontwikkelteams in volledige rust ongestoord werken aan de versie 1.0 van het te bouwen product en noemt dat
“cathedral-building”. Open Source software daarentegen kenmerkt zich juist door de mix van verschillende doelen, agenda’s en stijlen: op het eerste gezicht inderdaad een Oosterse
bazaar. Een organisatie die aan de slag wil met OSS zal daarom ook advies inwinnen en ook de implementatie overlaten
aan specialisten met kennis van die ‘bazaar’. Het is ook vaak
de ‘Business Case’ voor dienstverlenende bedrijven: zij verdienen aan de consultancy, niet aan de verkoop van licenties.
Bij UMN Mapserver wordt de gebruikersgemeenschap vooral gevoed door
een e-maillijst. Deze lijst genereert ongeveer vijftig tot honderd e-mails per
dag, voor een beginnende gebruiker
vaak overweldigend. Toch blijven er
maar weinig vragen onbeantwoord en
is ondersteuning vaak beter en sneller
dan bij commerciële equivalenten.
Ook vindt er interactie tussen de gebruikers- en de ontwikkelaarsgemeenschap plaats via het Bugzilla-systeem,
waar gebruikers fouten in de software
kunnen rapporteren of wensen kunnen registreren.
Als we bovenstaande en andere observaties van Raymond
spiegelen aan de UMN Mapserver community zien we de
volgende punten naar voren komen. Er wordt gebruik gemaakt van verschillende onderdelen, de componenten, die
elk met een eigen snelheid worden ontwikkeld. Op de bazaar loopt iedereen door elkaar: ontwikkelaars, gebruikers
en opdrachtgevers.
De ontwikkelaarsgemeenschap van
UMN Mapserver is een stuk beperkter
in omvang. Ook hier vindt de meeste
communicatie plaats via een e-maillijst
en Bugzilla. Het is de gewoonte om voor
elke grote verandering in de broncode
Bugzilla te gebruiken, zodat de ontwikkelaars over specifieke functionaliteit
kunnen discussiëren. Ook kan er per
fout in de software aangegeven worden
wie verantwoordelijk is voor het oplossen van de fout en voor welke release de
oplossing gepland is. De UMN Mapserver broncode is toegankelijk. Echter, er
is slechts een beperkt aantal ontwikkelaars dat echt wijzigingen kan aanbrengen. Zo kunnen alle wijzigingen altijd
herleid worden tot één van deze ontwikkelaars.
Beslissingen binnen UMN Mapserver
worden genomen door consensus onder de drie hoofdontwikkelaars, Steve
Lime, Daniel Morissette en Frank Warmerdam. Voorwaarde voor het ontwikkelen aan UMN Mapserver is dat er een
actieve ondersteuning van de geleverde broncode is in de komende jaren,
wat de duurzaamheid van het project
ten goede komt.
Net als bij ieder Open Source project is er ook bij UMN MapServer een groep mensen die beslist over het uitbrengen
van een volgende versie. De leden van deze groep zijn gekozen op basis van hun bijdrage aan de community en hun gezag. Zij dragen in belangrijke mate bij aan de stabiliteit en
de continuiteit van de community.
Dat dit geen vanzelfsprekendheid is blijkt uit het voorbeeld
van ‘De Emacs’ community waarbinnen één persoon zich
opwierp als de enige beslisser. Het democratisch gehalte en
de transparantie hadden stalinistische trekken gekregen en
daar bleken de ontwikkelaars en gebruikers niet van gediend. Die liepen uit onvrede weg en richtten een nieuw
project op.
Communities zijn dus zeer platte organisaties met een eigen dynamiek. Het is ook misschien wel daarom dat met name overheidsorganisaties terughoudend zijn met de inzet
van open source producten. Het is voor een manager in een
sterk hiërarchisch ingerichte organisatie een hele spagaat
om te accepteren dat ontwikkelingen gestuurd worden
door een community die wars is van bazen. Voor je het
weet, loopt iedereen weg!
Een laatste observatie over de UMN Mapserver community
betreft het principe van de collegiale review, de “peer review”. Iedereen kan de broncode beoordelen. Dit is een standaardprocedure binnen elke professionele organisatie,
commercieel of niet. Het verschil is echter dat door internet de reikwijdte van de peer review de hele wereld is geworden. Raymond noemt dat met gevoel voor dramatiek
“the collective IQ of thousands of people”, die allemaal vanuit verschillende rollen meewerken aan een project.
Open source en open standaarden
Open Source en open standaarden worden nogal eens
met elkaar verward, hoewel het verschillende onderwerGEO-INFO 2005-5
251
pen zijn. Er is echter wel een correlatie tussen Open Source GIS en open standaarden. Open Source GIS-software
implementeert vaak open standaarden, zoals de standaarden van het Open Geospatial Consortium (OGC).
Regelmatig loopt Open Source GIS-software daarin zelfs
voorop:
• het is in het belang van Open Source GIS-pakketten om
met zoveel mogelijk andere pakketten bestandsformaten en gegevens te kunnen uitwisselen;
• door open standaarden te implementeren in de eigen
software zal het potentieel gebruik van de Open Source
software vergroot worden.
Daarnaast wordt de ontwikkeling van Open Source GIS-pakketten vaak opgestart zonder native interface (API). In de
zoektocht naar een interface stuit men al gauw op open
standaarden. Het gebruik van open standaarden voorkomt
ook discussie tussen ontwikkelaars en kan een grote groep
ontwikkelaars aan elkaar binden. De wetenschap dat de
open standaarden het product zijn van de samenwerking
van verschillende partijen draagt bij aan de acceptatie van
de open standaarden.
Twee OSS-projecten zijn benoemd tot reference implementation voor een OGC-standaard: Deegree voor WMS
en CS-W, en Geoserver voor WFS. Beide projecten maakten
al veelvuldig gebruik van OGC-standaarden voordat ze tot
reference implementation uitgeroepen werden. Echter, het
feit dat ze de reference implementation zijn, kan het gebruik van deze software wel stimuleren. Uit onderzoek is
ook gebleken dat er meer acceptatie is voor een open standaard, wanneer er een Open Source implementatie van die
standaard beschikbaar is.
252
De keuze voor Open Source GIS
G eo -I nformatie N ederland
Het tijdperk waarin OSS geassocieerd werd met ‘liefdewerk
oud papier’ ligt reeds ver achter ons. Bedrijven als IBM en
RedHat dragen actief bij aan de Open Source gemeenschap,
niet uit een filantropische instelling, maar vanuit een business model waarin het draait om services en niet om producten [Spolsky 2002]. IBM Global Services verdient aan de
verkoop van diensten op software die gratis wordt aangeboden. In de Open Source GIS-wereld zijn voorbeelden van deze bedrijven: DM Solutions Group en Refractions Research.
Zij hanteren vaak het uitgangspunt, dat aangezien zij het
beste thuis zijn in de software, zij het goedkoopst en meest
vakbekwaam aanpassingen en uitbreidingen kunnen doen
aan de software.
Tussen partijen in de private en overheidsmarkt en bovengenoemde partijen is er vaak een schakel benodigd. Hierbij
dient dan gedacht te worden aan ondersteunende activiteiten zoals compilatie en installatie van software, het overnemen van risico’s door het afsluiten van SLA’s, en het integreren van verschillende Open Source GIS-componenten tot
een werkend systeem.
Conclusies
Open Source software wordt al veel gebruikt binnen organisaties, denk aan het gebruik van Linux en Apache. Het Open
GEO-INFO 2005-5
Source GIS-landschap is de afgelopen
jaren flink gegroeid, maar het uiteindelijke doel is natuurlijk niet kwantiteit maar kwaliteit. Voor elke component is er vaak wel de keuze uit meerdere opties. Door middel van evolutie
zullen de beste Open Source GIS-pakketten komen bovendrijven, en het is
hiervoor niet nodig dat de overkoepelende ontwikkelaarsgemeenschap bepaalde pakketten gaat aanwijzen en
daar massaal aan gaat ontwikkelen.
Veel pakketten zijn inmiddels volwassen, er zijn er echter ook talloze die
nog in de kinderschoenen staan en
waarvan het potentieel te betwijfelen
valt.
Over de juridische aspecten van het gebruik van open source software kan gesteld worden dat die vergelijkbaar zijn
met commerciële software. Zowel aansprakelijkheid bij fouten als aanspraken op intellectuele eigendomsrechten zijn geïdentificeerde risico’s die
met beheersmaatregelen kunnen worden afgedekt.
Zonder kennis van de markt, in dit geval de bazaar, is het moeilijk om de
juiste keuze voor een een bepaald
OSS-product te maken. Toch kan op
grond van de combinatie van community-vorming, technologie en juridische stabiliteit een verantwoorde keuze worden gemaakt. Als we een blik
werpen op de categorische uiteenzetting van Open Source GIS-software in
dit artikel, dan kan er gesteld worden
dat er enkele paarden zijn waarop een
organisatie het beste zijn geld kan
zetten. Zo kan PostGIS inmiddels gezien worden als een zeer volwassen
ruimtelijke database gebaseerd op
open standaarden, met een redelijk
grote gebruikersgroep, en een actieve
ontwikkeling. UMN Mapserver was al
in zijn begintijd een onvoorstelbaar
(snel) software-pakket, en nog immer
is dit een erg degelijke en bewezen
component voor een Web-GISsysteem. De sterkste kant van UMN
Mapserver is en blijft het maken van
plaatjes (WMS). Van alle communities
is UMN Mapserver veruit de meest
omvangrijke.
Geoserver is goed op weg om de beste
keuze te worden wanneer een transactionele WFS (Web Feature Service) benodigd is, waarbij wel opgemerkt
dient te worden dat Geoserver een
stuk beter op PostGIS aansluit dan op
Oracle of ArcSDE. In de wereld van de
internet-GIS-clients is het heel lastig
een voorspelling te doen. Het product
Chameleon is een goede keuze. In de
desktop GIS-markt lijkt uDIG, alhoewel het nog niet eens gereleased is, een
goede kans te maken gezien de gedegen opzet, waarbij lokale data gecombineerd kan worden met data verkregen vanuit OGC webservices.
Open Source software en open standaarden hebben beide profijt van elkaar. Open standaarden stellen de software in staat te kunnen uitwisselen
met zoveel mogelijk andere componenten.
■
Literatuur
• Cubranic, D. Open-source software
development, 1999, sern.ucalgary.ca/
~maurer/ICSE99WS/Submissions/
Cubranic/Cubranic.htm.
• Ramsey, P. MySQL 4.1 GIS
Functionality, 2003.
postgis.refractions.net/pipermail/
postgis-users/2003-June/002651.html
• Ramsey, P., State of Open Source GIS,
2005, www.refractions.net/white
papers/ 2005-02-OSS-Briefing.pdf.
• Raymond, E., The Cathedral and the
Bazaar, 2000, www.catb.org/~esr/
writings/cathedral-bazaar/
• Spolsky, J., Strategy Letter V, 2002,
www.joelonsoftware.com/articles/
StrategyLetterV.html
Samenvatting
De Open Source GIS-wereld
Open Source strekt verder dan het Linux-besturingssysteem en de
Apache web-server. Ook op het gebied van GIS is Open Source software
de laatste jaren volwassen geworden. In dit artikel bespreken de
auteurs de juridische aspecten, technologie en organisatie die een verantwoorde keuze voor Open Source GIS mogelijk maken. Zij leggen uit
wat Open Source software is en geven een overzicht van de verschillende
producten die beschikbaar zijn. Aan de hand van UMN Mapserver
wordt verteld hoe Open Source GIS wordt ontwikkeld. Bovendien wordt
kort ingegaan op open standaarden in relatie tot Open Source software.
TREFWOORDEN
GIS-technologie, programmatuur, overzicht
Summary
The Open Source GIS World
Open Source reaches beyond the Linux operating system and the
Apache web server. Over the last years Open Source software has also
reached significant maturity in the field of GIS. In this article, the
authors describe legal aspects, technology and the organisation that
enable a responsible choice for Open Source GIS. They explain what
Open Source software is and provide an overview of available products.
Based on the UMN Mapserver they tell how Open Source GIS is
developed. Furthermore, the article shortly focuses on open standards
in relation to Open Source software.
253
KEYWORDS
GIS-technology, software, survey
LAGE LANDEN
Eindelijk. Eindelijk krijgen we de
paaltjes en bordjes waar ik altijd naar
heb verlangd, al realiseer ik me dat
pas nu ze er komen. Hoe diep, laag,
hol en neder ons land overal is, hoever we onder de zeespiegel liggen (…)
Het zou me trouwens niet verbazen
als het allemaal bedacht was om de
landmeterij weer wat impulsen te geven. Dat beroep kwijnt nogal, hoor
ik, terwijl het toch zo mooi mysterieus is. Ik hoop dat de bedreigde
landmeters binnenkort weer in het
landschap uitgezet worden.
Rob Schouten in Trouw,
18 maart 2005.
GEO-INFO 2005-5
Download