Mijn werk: “AxlBase”. Informatieuitwisseling voor een ING-project

An article, posted more than 5 years ago filed in ruby on rails, gem, mijn werk, portfolio, ING, zelfstandig, zzp & excel.

LinkedIn confronteerde me onlangs nog met het feit: murb bestaat alweer 6 jaar. Een goed moment om verder te gaan met terugblikken op de opdrachten van weleer.

De belangrijkste opdrachtgever in mijn beginjaren was de ING bank. Een belangrijk product dat ik in de begintijd aldaar heb gebouwd is een database op basis van Excel-bestanden (iets dat ik ooit nog wil(de) uitrollen als ‘AxlBase’). Zoals ik eerder al schreef, soms moet je een bestaande werkwijze omarmen. Wat is het precies en van waaruit is het ontstaan?

Mijn werk: “AxlBase”.

Wat is het?

Een database op basis van Excel-bestanden. Niet echt in technische zin (achterliggend is het een traditionele database), maar wel in de praktische zin. Excel is hét bestandsformaat van de gewone kantoormedewerker voor gestructureerde data. Het wordt veelvuldig gebruikt in allerlei projecten. AxlBase is in staat verschillende Excel-bestanden per o.a. e-mail te ontvangen en te gebruiken als gegevensbron.

Het probleem.

Zonder aanpassingen levert de uitwisseling van Excel-bestanden op een gegeven moment problemen op: er worden fouten gemaakt (we zijn immers mensen), zaken worden vergeten, versies worden door elkaar gehaald… Gaandeweg ontstaan er meerdere waarheden: funest voor een goedlopend project.

Wanneer een paar mensen samenwerken in hetzelfde Excel-bestand kunnen er onderling afspraken gemaakt worden over wie wat wanneer bewerkt. Dat werkt echter niet meer wanneer je dat met meer dan 100 mensen doet. Én er wekelijks rapportages over wilt hebben. Én er bovendien mensen aan meewerken buiten de veilige firewall van de ING. Én externe hosting te gecompliceerd is in verband met gevoelige data…

We hadden te maken met zoveel randvoorwaarden, er zat niets anders op dan ze te omarmen. Van een relatief beperkte scope datamanagement-klus werd het een echte automatiseringsuitdaging. :)

De oplossing.

Gaandeweg werd de oplossing gebouwd terwijl er iedere week geleverd moest worden. Er moest dus een systeem worden bedacht dat aansloot op de bestaande werkwijze. Stap voor stap probeerden we deze werkwijze te verbeteren met automatisering: het project groeide hard in omvang en we hadden al snel moeite met het bijbenen van mutaties. Uiteindelijk had ik een bijna zelfstandig opererende en e-mailende tool gebouwd die binnenkomende Excel-bestanden kon authenticeren (komt het bestand wel van diegene die dit bestand moest aanleveren?), valideren (klopt de inhoud?), importeren (het in de interne database stoppen) en genereren (het maken van nieuwe bestanden) zodat de medewerkers hun werkzaamheden konden voortzetten met gecontroleerde en actuele gegevens in een applicatie die hun vertrouwd was en flexibiliteit bood: Excel.

Of ik dan niets heb ontworpen? Jazeker, het systeem. Niets grafisch? De beste interface is soms geen interface.

De uitdaging

Zoals gezegd, iedere week moest er geleverd worden. Voor software ontwikkeling is dat op zich al een uitdaging, want dat betekent ook dat het iedere week stabiel moet zijn. Maar de grootste uitdaging was wel dat Excel veel vrijheid toe staat. Dit vormde de nodige uitdagingen bij het automatisch verwerken. Gaandeweg hebben we (ik en de mensen die er mee moesten werken) echter een optimum kunnen vinden. Zet immers teveel zaken op ‘niet wijzigbaar’ in Excel en zelfs de meest basale functies als filteren werken niet meer. Het was dan deels ook leren van elkaar: ik had het geluk om direct met de eindgebruikers te kunnen schakelen over de wijze van implementeren.

De ontvangst

Het was de nauwe samenwerking die het geheel tot een succes maakte. Het project werd binnen de tijd afgerond. Omdat ik het werk steeds verder geautomatiseerd had kon ik me richten op nieuwe uitdagingen binnen de ING (wellicht licht ik er t.z.t. nog wel een andere uit).

Bijzondere dank

Zonder Gijs Manintveld (I&CS) was ik niet bij dit project betrokken geraakt. Het project maakte het voor mij mogelijk om mijn eigen bedrijf op te richten en mij als zelfstandige te ontwikkelen. Van het scherpe inzicht en de doortastende handelwijze van Gijs heb ik veel geleerd. We hebben gelukkig meermaals samen kunnen werken!

Opensource

Ook dit project heeft geleid tot opensource bijdragen: workbook en portablerails

Op de hoogte blijven?

Maandelijks maak ik een selectie artikelen en zorg ik voor wat extra context bij de meer technische stukken. Schrijf je hieronder in:

Mailfrequentie = 1x per maand. Je privacy wordt serieus genomen: de mailinglijst bestaat alleen op onze servers.