07-12-2018
Innoveren doen we continu. Elke dag proberen we onze oplossingen weer nét iets slimmer en beter te maken. Soms lopen we echter tegen een vraagstuk aan, dat niet tussen de bedrijven door opgelost kan worden. Om deze grotere uitdaging toch te kunnen onderzoeken hebben we de innovatiedag geïntroduceerd. Voor 28 november stond er ook weer een op de agenda.
Wat is het vraagstuk?
Wanneer je verschillende applicaties aan elkaar koppelt, moet je er voor zorgen dat de velden uit applicatie A in de juiste velden terecht komen in applicatie B. Hierbij kan het ook zo zijn dat er transformaties van de data nodig zijn. Het uitwerken en implementeren van deze informatiestromen en transformaties wordt het “mappen” genoemd.
Technisch gezien kun je het mappen op verschillende manieren doen, waarbij wij dit tot op heden in code binnen onze ontwikkelde middleware doen. Een zeer stabiele en gedegen oplossing, goed bruikbaar wanneer het aantal mappings beperkt is.
Door onze groeiende klantenkring wordt het onderhoud hiervan echter steeds lastiger. Zeker omdat veel van onze klanten verschillende mappings nodig hebben, waardoor één klant soms wel 100 mappings heeft. We liepen er tegenaan dat deze hoeveelheid mappings binnen de code beheren veel tijd kost, relatief foutgevoelig en niet schaalbaar genoeg is. Het onderwerp voor de innovatiedag was geboren.
Zonder doel geen oplossing
De oplossing die we zoeken moet aan verschillende eisen voldoen.
- Gebruiksvriendelijk
De mappings moeten op een visuele manier gebruiksvriendelijk te leggen zijn. Voorwaarde is dat het ook bruikbaar moet zijn voor gebruikers zonder programmeer-kennis. - Uitwisselbaar
We willen niet bij voorbaat voor altijd vastzitten aan een keuze die nu wordt gemaakt. De oplossing moet dus zo opgebouwd worden dat de software voor het mappen van de data altijd te vervangen is. Loosely coupled dus. - Schaalbaar
De oplossing moet klaar zijn voor de toekomst. Wanneer het aantal klanten (en hun mappings) nog verder toenemen, moet de oplossing deze groei aankunnen. - Onderhoudbaar
Wanneer er een mapping aangepast moet worden, moet dit een fluitje van een cent zijn. Geen gepruts in code. - Integreerbaar
Een beetje een open deur, maar het moet uiteraard integreerbaar zijn met de technieken die wij gebruiken.
Op basis van deze eisen hebben we aan het begin van de innovatiedag het volgende doel vastgesteld;
“Het vinden van een uitwisselbare, schaalbare en onderhoudbare oplossing, waarin de mappings op een gebruiksvriendelijke manier uitgewerkt kunnen worden en in onze middleware geïntegreerd kunnen worden. De werking hiervan dient aangetoond te worden in een proof-of-concept (POC). ”
En nu, aan de slag!
Heel stiekem hadden we al wat voorbereidende werkzaamheden verricht. Door grondig vooronderzoek en goed rond te hebben gevraagd binnen ons netwerk, bleek al relatief snel dat er voor ons eigenlijk maar één tool mappings-tool in aanmerking kwam. Welke dat is, is natuurlijk het geheim van de smid…
Als eerste hebben we een onderlinge taakverdeling gemaakt. De te onderzoeken onderdelen zijn verdeeld over de collega’s, waarbij uiteraard ook het financiële plaatje uitgezocht moest worden.
Vlak voor de lunch hebben we kort de status geëvalueerd. Het bleek dat we al een heel mooi eind op weg waren en dat de eerste POC’s succesvol waren afgerond. De basis stond, maar een volledige integratie was nog niet gerealiseerd.
Na de lunch zijn we met een volle maag weer aan de slag gegaan. De POC’s zijn verder uitgewerkt en afgerond om ons ervan te verzekeren dat we geen details over het hoofd hebben gezien.
Uiteraard liepen we, zoals bij ieder software project, tegen een aantal onverwachte zaken aan. Er kwam onder andere aan het licht dat we onze oplossing op twee manieren kunnen inrichten. Na alle voors en tegens van beide manieren te hebben vergeleken, hebben we hierin een weloverwogen keuze kunnen maken. Hierdoor hadden we aan het eind van de dag een helder resultaat staan.
Bruikbaar of niet bruikbaar?
Dat is natuurlijk altijd de vraag aan het eind van de dag. Ongeacht het resultaat is een innovatiedag altijd erg nuttig. Je duikt in nieuwe technieken en werkt in korte tijd in teamverband naar een concreet resultaat toe. Daar word je nooit dommer van.
In dit geval waren de resultaat dusdanig dat dit onze eigen verwachtingen overtrof. We hadden verwacht dat een eenvoudig POC het maximaal haalbare resultaat zou zijn. Het liep echter zo voorspoedig dat we ook al de architectuur voor de implementatie van deze oplossing hebben uitgewerkt. Met andere woorden, de visuele mappingstool kan een volwaardig onderdeel worden van onze eigen middleware. Een top resultaat en we kunnen dan ook niet wachten om deze oplossing in productie te kunnen nemen. Wij zeggen dus: Bruikbaar!