Datamigratie, wat is dat eigenlijk?
In de krant kom je het regelmatig tegen, bedrijven die zijn overgestapt naar een nieuw systeem. Vaak staat beschreven waarom deze overstap wordt gemaakt. Zaken als nieuwe functionaliteit, nieuwe mogelijkheden voor klanten en een korte doorlooptijd van processen worden gretig met de lezer gedeeld. Wat er eigenlijk nooit bij staat is hoe de bestaande data goed in het nieuwe systeem zijn gekomen. Jammer dat deze kennis zo weinig gedeeld wordt. Want zonder bestaande data heb je niet zoveel aan een nieuw systeem. En zonder kennis van datamigratie kan een implementatie van een nieuw systeem zomaar uit de hand lopen.
Dit artikel vertelt wat datamigratie inhoudt voor iedereen die vakmatig complexe softwaresystemen implementeert. Ook gaat het artikel in op hoe je het aan kunt pakken en hoe je de grootste valkuilen kunt vermijden!
De meeste mensen hebben wel een beeld bij wat datamigratie is. Je pakt de data op en verhuist die naar een andere plek. Knippen, plakken en klaar is kees. Bij het verplaatsen van een Word-document van de ene harde schijf naar de andere klopt dit ook wel. Bij het migreren naar bijvoorbeeld een nieuw financieel systeem ligt het echter complexer en komt er meer bij kijken. Het ene systeem is het andere niet. Zo spreken systemen niet dezelfde taal en heb je een ‘tolk’ nodig om de data over te zetten. Daarnaast komen de data vaak uit oudere systemen. Dan moeten deze eerst worden afgestoft voor helder is wat er precies in zit en wat er nodig is om de data eruit te halen. Tot slot, je wilt onderweg geen data kwijtraken; een datamigratie moet volledig controleerbaar zijn. Maar hoe controleer je zoiets? Het beeld wat je wellicht in eerste instantie had, gaat niet op bij complexe softwaresystemen!
Maar goed, eerst terug naar de basis. Wat is een datamigratie eigenlijk? Datamigratie is het overzetten van data naar een nieuw systeem zodat je met dit nieuwe systeem kunt werken omdat het alle benodigde data bevat.
Hoe pak je dit aan?
Een datamigratie begint bij een analyse van beide systemen. Om vast te stellen welke data het nieuwe systeem nodig heeft om goed te werken wordt eerst de functionaliteit van dit nieuwe systeem geanalyseerd. Maar daarmee ben je er nog niet: ook het oude systeem moet grondig worden geanalyseerd om helder te krijgen welke data voor welke functionaliteit nodig zijn. Adequate kennis van beide systemen geeft de basis voor een succesvolle datamigratie. Alleen dan is helder welke data op welke wijze overgezet moeten worden om het nieuwe systeem goed te laten functioneren.
Hierna volgt de dataconversie: het zoeken van de benodigde data in het oude systeem en het maken van de transformatie en de mapping om deze oude data in de juiste nieuwe vorm te zetten. Hiermee zijn de data klaar voor het nieuwe systeem. De dataconversie is vertalen van de oude data naar de nieuwe structuur zodat het nieuwe systeem ermee overweg kan. Een voorbeeld hiervan is een dataconversie van een postcode: in het oude systeem staat de postcode als 1815gw, in het nieuwe systeem moet dit worden: 1815 GW. De dataconversie zorgt dat de postcodecijfers gescheiden worden van de letters en dat de letters in kapitalen worden gezet. Een ander voorbeeld van een datatransformatie is hoe je omgaat met te betalen rente. In het oude systeem wordt de rente aan het begin van de maand bij het saldo geschreven, in het nieuwe systeem aan het einde van de maand.
Ja, er komt dus veel bij kijken om de data op een goede manier in het nieuwe systeem te krijgen.
Wat er mis kan gaan...
Dan de valkuilen, wat kan er zoal misgaan bij een datamigratie? Stel je voor: de datamigratie van een bancair systeem. Na een lange voorbereiding zitten de data in het nieuwe systeem en wat blijkt: hypotheekbedragen zijn verwisseld tussen klantcontracten. Een dergelijke fout heeft grote impact op de bedrijfsvoering – en erger nog - het imago is aangetast: leg dit maar eens uit bij Radar.
Gelukkig zijn dit soort problemen te voorkomen: een datamigratie kan volledig gecontroleerd en 100% correct worden uitgevoerd. Dit is iets wat je onomstotelijk moet vaststellen, het moet niet een beetje kloppen, nee een datamigratie moet op de cent nauwkeurig kloppen. De vraag is natuurlijk: hoe stel je dit nu vast?
Het antwoord hierop bestaat onder meer uit het inbouwen van controletellingen. In een datamigratie wordt alles geteld: bij het begin, tijdens elke stap en na de migratie. Hiermee voorkom je dat je geen gegevens kwijtraakt. Deze controles zijn een groot en belangrijk onderdeel van elke datamigratie. Of je nu geld, patiëntgegevens, of wat voor soort data ook migreert. Je wilt zeker weten dat je niets kwijtraakt en dat wat in het nieuwe systeem staat juist is.
Een ander deel van het antwoord is het volledig testen van het nieuwe systeem met de gemigreerde data. Ook het achterland - bijvoorbeeld een datawarehouse, rapportagesysteem of printstraat voor afschriften - van het nieuwe systeem moet foutloos werken met de gemigreerde data. Dus zowel een systeemtest als een ketentest met de gemigreerde data zijn noodzakelijke testen om uit te voeren.
Kortom
Kortom, er komt een hoop kijken bij een 100% geslaagde datamigratie. Succes is verzekerd als de stappen zorgvuldig worden gezet en alle benodigde controles worden uitgevoerd. En dan, dan wordt er gewerkt met een nieuw systeem en staat er weer een mooi artikel in de krant over een geslaagde systeemimplementatie. En heeft niemand het meer over de datamigratie!
Guido Jurgens is Managing Partner bij Data eXcellence.