Soweto Care System: “Wow! Is this possible?”

Door Marc Riesewijk In Algemeen

Je merkt het vaak. Ook bij jezelf. Gezucht en gesteun als stukken software of pagina’s op een website niet goed werken. Wanneer dit is aangepast, hoor je eigenlijk vrij weinig meer. Ook in opdrachten waar ik als developer/devops’er bezig ben geweest. Vaak hoor je gebruikers alleen wanneer zaken niet goed werken. Zijn we te verwend geworden?

Administratie in Zuid-Afrika

In Zuid-Afrika bestaan veel hulporganisaties (Non Governmental Organisations, ofwel NGO’s) om onder andere weeskinderen, aidspatiënten en andere hulpbehoevenden te helpen of te ondersteunen. Er wordt door hen nog niet veel met computers gewerkt. Veel organisaties werken met formulieren en mappen om hun administratie vast te leggen. Delen van deze administratie wordt diverse keren vastgelegd, meegenomen op locatie, maar raakt ook kwijt.

Soweto Care System

Ter ondersteuning van deze organisaties is door VX Company gewerkt aan een applicatie: Soweto Care System. In deze applicatie kunnen hulporganisaties hun administratie invoeren. Denk hierbij aan het vastleggen van wie welke medicijnen/vaccinaties hoort te krijgen. Op die manier kunnen de hulporganisaties meer tijd besteden aan het daadwerkelijk helpen van mensen.

Een van de originele eisen was dat de applicatie makkelijk moest werken en simpel in het gebruik moest zijn. Zodoende is een aantal jaar geleden begonnen aan een soort kaartenbaksysteem wat op computers bij de gebruikers werd geïnstalleerd via Java Swing. In de loop van de tijd is dit uitgegroeid tot een webapplicatie die meerdere talen ondersteunt met een centrale database.

Ontwerp uitgewerkt en templates gebouwd

Mijn werkzaamheden begonnen ten tijde van de opzet van webapplicatie. We kozen toen voor Grails als framework. Dit had zich voor ons bewezen en zorgde dat ik snel aan de gang kon. Het duurde iets langer voor de eerste schermen echt klaar waren; tijdens de eerste sprints werden met name het ontwerp uitgewerkt en de templates gebouwd. Toen eenmaal de eerste schermen en tabellen af waren, werd het getoond aan gebruikers. Die waren er heel erg blij mee en lieten dat ook duidelijk merken. Daarna groeide het aantal schermen en tabellen snel. Mede door het gebruik van generieke code, gegenereerde schermen en de gebouwde templates!

Later kwamen er vragen voor diverse aanvullingen:

  • Was het mogelijk om foto’s op te slaan?
  • Was het mogelijk om documenten op te slaan?
  • Rapportages? Hoe en wat richting management van de organisaties of donateurs?
  • Mobiel gebruik? Hoe gaan we daar mee om?

De manier waarop deze aanvullingen zijn gevraagd, is duidelijk anders dan in Nederland. Sommige gebruikers weten niet precies wat mogelijk is en vinden het ook lastig om vragen te formuleren.

Deze aanvullingen zijn ingebouwd op een manier die makkelijk binnen de architectuur van Grails past. Rapportages kunnen worden gemaakt en/of aangepast door bepaalde administrators waarbij geen nieuwe versies hoeven te worden gemaakt. Hierop zijn natuurlijk wel uitzonderingen; er is bijvoorbeeld een mogelijkheid om pasjes te maken waarop foto’s en qr-codes te gebruiken zijn.

jQueryMobile

De afgelopen jaren is ook het gebruik van mobiele telefoons in onder andere Zuid-Afrika flink toegenomen. Toen kwam de vraag hoe de applicatie gebruikers kon ondersteunen die bijvoorbeeld op huisbezoek gaan bij hulpbehoevenden. Toen hebben we een deel van de applicatie ook hiervoor geschikt gemaakt. Voor mobiel gebruik hebben we gekozen voor jQueryMobile. Grote delen van schermen waren opnieuw te gebruiken en voor het ophalen en wegschrijven van gegevens hoefden we in de architectuur ook niets te wijzigen. Zodoende kon dit zonder veel extra complexiteit worden gebouwd. Toen de eerste demo’s ter plaatse werden gegeven, kwamen de enthousiaste reacties van gebruikers: “Wow! Is this possible?”

Soweto-Care-System

Migraties in Grails en Java

Los van de aanpassingen, buxfixes en aanvullingen, zijn er ook diverse migraties geweest in de versies van Grails en Java.

Zo is de applicatie flink gegroeid en meegegaan met huidige technieken. Van medewerkers van organisaties die langs gaan bij mensen met formulieren die ter plekke worden ingevuld en waarbij naderhand gegevens moeten worden overgenomen, tot medewerkers die nu met de telefoon/tablet in de hand direct gegevens in kunnen vullen. Alles is mogelijk!

Momenteel wordt er zelfs getest dat er bij bijeenkomsten de opkomst kan worden gemeten via het gebruik van de telefoons en het scannen van pasjes die deelnemers krijgen.

Alles binnen deze applicaties is gemaakt op basis van Grails (en plugins), java-libraries en javascript. Van heel simpele schermen tot rapportages die na een aanvraag op de achtergrond draaien, van grote schermen met veel invoervelden tot schermen op mobiele devices: het zit er allemaal in. Het mooie voor mijzelf is dat de opzet nog steeds heel simpel is. Juist door in het begin van het project de tijd te nemen (en te krijgen!) om alles goed op te zetten.

Trots dat mijn werk anderen ondersteunt en helpt

De manier waarop naar extra functionaliteit wordt gevraagd en de reacties als functionaliteit beschikbaar is, zijn duidelijk anders dan hier. Mensen zijn oprecht blij als ze zien dat hun verzoeken leiden tot nieuwe functionaliteit. Mijzelf geeft dat een gevoel van trots. Trots dat mijn werk anderen ondersteunt en kan helpen.

In 2014 is er ter plaatse een documentaire gemaakt om te kijken wat de organisaties doen en hoe Soweto Care System hen daarbij ondersteunt. De reacties zijn meer dan hartverwarmend: https://www.youtube.com/watch?v=knfhdFAL1Q4)!

Meer informatie

marc-riesewijk

Marc Riesewijk

Java Developer

+31 6 52 07 50 13 Stuur Marc een e-mail

Reacties

Er zijn nog geen reacties op dit bericht.

Plaats een reactie

Dit veld is verplicht.

Vul een geldig e-mailadres in.

Dit veld is verplicht.