donderdag 11 juni 2015

Een kijkje achter de schermen

Om een programma als de ANWB Waterkaart Software te maken komt heel wat kijken en zijn diverse partijen betrokken. Het begint natuurlijk allemaal in het veld of beter op het water. Gedurende het hele jaar zijn medewerkers en vooral een groot aantal vrijwilligers voor de ANWB op pad om informatie op en langs het water te verzamelen, te controleren en te actualiseren. Ook een groot aantal watersportbedrijven, landelijke, regionale en lokale overheden en beheerder van vaarwegen geven gedurende het jaar hun voor de schipper relevante informatie door aan de ANWB. Al deze informatie wordt verwerkt en gecontroleerd en komt uiteindelijk terecht in een grote database voor wat betreft de almanak gegevens en in een geografisch informatiesysteem voor wat betreft de waterkaarten. Een organisatie als de ANWB huurt daarvoor ook weer diverse gespecialiseerde bedrijven in. Informatie uit deze systemen gaat vervolgens in bewerkte vorm naar Promanent als bouwer van de Windows software en naar een ander bedrijf dat voor de ANWB de app's maakt. Hier worden de kaarten en almanakgegevens geschikt gemaakt voor gebruik in de software en app.

Data, kaarten en een zogenaamde software app(licatie) maken samen de digitale versie van de ANWB Waterkaarten. Alleen de ANWB Waterkaart Software bestaat uit ruim 200.000 regels aan code. Al die code is nodig om het basis idee (een eenvoudig te gebruiken navigatieprogramma dat biedt wat elke watersporter op de Nederlandse binnenwateren nodig heeft) te vertalen naar een werkend geheel.

Een basis functie is bijvoorbeeld het op het scherm tonen van de ANWB Waterkaarten met daarop de positie van de gebruiker. Zo'n basis functie valt dan al meteen uiteen in diverse delen. Bijvoorbeeld in- en uitzoomen, de kaart kunnen verschuiven, vertalen van een GPS positie naar de exacte locatie op de kaart. Die laatste functie bijvoorbeeld brengt weer diverse andere zaken met zich mee. Een GPS rekent zelf positie, snelheid en koers uit en kan die doorgeven aan andere apparaten. Deze informatie gaat volgens de internationale NMEA standaard wat technisch te vergelijken is met de seriele poort die vroeger standaard op elke pc zat. Bijna elke GPS die tegenwoordig aan de pc gekoppeld kan worden gebruikt een USB Poort. Gelukkig dat de fabrikanten die GPS'en leveren met een stuurprogramma die een en ander aan elkaar koppelt. Als softwarebouwer hoef je dan alleen de binnenkomende signalen nog maar te vertalen van NMEA naar iets wat het eigen programma begrijpt. In het geval van de ANWB Waterkaart Software konden wij daarvoor terugvallen op het werk van een slimme Roemeense software ontwikkelaar.
De GPS positie is volgens het internationale WSG'84 model van de wereldbol. Vrijwel alle kaarten in Nederland komen in hun basisvorm van gegevens van het Kadaster en zijn gebaseerd op een heel ander geografisch model. Een model dat in Nederland een grotere nauwkeurigheid (tot 25 cm) biedt; de Nederlandse Rijksdriehoeksmeting met Amersfoort als middelpunt van Nederland. Alle kaarten in Nederland gebruiken eigenlijk de ondergrond van het Kadaster en om coordinaten volgens de Rijksdriehoeksmeting te koppelen aan een positie volgens WGS'84 is een vrij ingewikkelde berekening nodig.

Om de kaarten daadwerkelijk op het scherm te tonen maken wij weer gebruik van techniek van een ontwikkelaar uit Oostenrijk. En zo is de ANWB Waterkaart Software al een aardig internationaal project geworden. Het bronmateriaal van de ANWB Waterkaarten is momenteel nog gelijk aan de indeling van de papieren Waterkaarten. Dat betekent dat de bron op verschillende schalen is van 1 : 100.000 tot 1 : 10.000. Dat betekent ook dat informatie dubbel voorkomt waar kaartbladen elkaar overlappen. Op een digitale waterkaart wil je dat zo goed als het kan naadloos aan elkaar "plakken". En doe je dat dan in de software of doe je een voorbewerking zodat de software sneller de kaart kan tonen. Over elke functie hoe klein ook moet dus een keuze gemaakt worden, die vervolgens in regels code vertaald wordt. Dan zijn er altijd meerdere wegen die naar Rome leiden, dus de code van de ANWB Waterkaart software is niet statisch maar wordt elke keer weer kritisch bekeken. Hoe hadden wij dat vorig jaar opgelost en is er wellicht een snellere oplossing, of een die eenvoudiger is.

Uiteindelijk leidt al dat werk tot een eindproduct en kan er getest worden. En getest wordt er tot wij een ons wegen en tot het moment waarop wij geen fouten meer tegenkomen en geen beter alternatief meer kunnen bedenken. Maar net als een redacteur van een boek worden wij ook wel eens "code blind". De eerste dagen nadat een nieuwe editie van de software live gaat zijn dan ook altijd erg spannend. Wanneer komt het eerste mailtje of telefoontje van een gebruiker die vast loopt, een fout heeft gevonden of die iets niet begrijpt. Je kan 1.000 testen bedenken, je kan 3.000 scenario's uitproberen, maar het zijn altijd de uiteindelijke eindgebruikers waar het net even anders gaat en zich die situatie voordoet die wij nooit hadden kunnen bedenken. Of die bijvoorbeeld een tekst in het programma net iets anders uitleggen als wij doen. Of die net een iets andere gedraging van het programma verwachten als wij er in hebben gestopt.

Net als voorgaande jaren bleven ons dit jaar grote aantallen problemen bespaart. Wel waren de problemen die enkele gebruikers van het eerste uur hadden lastig, maar achteraf soms ook heel verklaarbaar. Lastig bleek dat bij enkele gebruikers hun geldige licentie na installatie van de nieuwe versie ineens niet meer geldig was. Verklaarbaar was de reactie van bestaande gebruikers op de tekst "Nieuwe gebruiker" nadat zij hun e-mailadres hadden opgegeven. "Wat nieuw, ik gebruik het programma al twee jaar?" Voor het programma was de gebruiker echter nieuw, want het programma had op dat moment nog niet verbinding gemaakt met de licentieserver om te kijken of er inderdaad al een gebruiker met dat e-mailadres bekend was. De afgelopen dagen waren hierdoor vol van stress, maar wij koesteren wel dergelijke reacties en ervaringen. Want wij kunnen het nog zo goed proberen te doen, het is uiteindelijk de gebruiker die bepaalt of wij het goed hebben gedaan.

Heeft u ook zin om ons werk te beoordelen? Dat kan. Download de nieuwe ANWB Waterkaart Software en probeer deze gratis twee dagen uit. En laat ons vooral weten wat u er van vindt; support@promanent.com.

Geen opmerkingen:

Een reactie posten