In een eerdere tip over SAP Testen is aangegeven dat het efficiënt functioneel testen binnen SAP-projecten leunt op de juiste volgorde van de deelgebieden: inrichting, conversie, interfaces, rapportages, keten acceptatie en productie acceptatie. Deze blog gaat in op het tweede deelgebied: de conversie.

  1. Inrichting
  2. Conversie
  3. Interfaces
  4. Rapportages
  5. Keten acceptatie
  6. Productie acceptatie

Het toepassen van deze volgorde voorkomt dat het SAP-project in de zogenaamde vicieuze cirkel van testen, hertesten en regressietesten terecht komt. Deze vicieuze testcirkel is bijzonder inefficiënt en daarom is het zo belangrijk om deze te vermijden.

Conversie

Bij systeemvervanging worden gegevens vanuit het oude bronsysteem naar het nieuwe doelsysteem gemigreerd. Het is een gegeven dat de data vanuit de bron niet altijd volledig overeenkomt met de eisen die het doelsysteem daar aan stelt.

Voorbeelden hiervan zijn:

  • Datumformaat niet gelijk: ‘jan 01 2017’ versus ‘01-01-2017’
  • Formaat van grootboeknummers niet gelijk: toevoegen/afkappen van voorloopnullen

Het conversie handboek zou moeten beschrijven hoe de data vanuit de oude naar het nieuwe pakket geconverteerd dient te worden en welke conversieregels daarbij gehanteerd moeten worden. Simpel gezegd staat hierin welke data op welke wijze gemigreerd gaat worden. Conversieregels geven aan welke noodzakelijke aanpassingen op de data doorgevoerd moeten worden. Dit is belangrijke informatie voor het bepalen van de testaanpak. Data wordt op basis van conversieregels naar het nieuwe systeem gemigreerd.

Hoofddoelstelling van een proefmigratie is vervolgens: vaststellen dat de data binnen de daarvoor beschikbare tijd op de juiste wijze (eventueel met acceptabele uitval) en op correcte wijze naar het nieuwe systeem geconverteerd kan worden.

Niet alleen het moment van testen van de proefconversies binnen het SAP project is van invloed op de vicieuze cirkel van testen. Ook bij het conversietesten zelf ligt de inefficiënte vicieuze cirkel van testen, hertesten en regressietesten op de loer. Indien het conversie traject eenmaal in deze cirkel beland zorgt deze er voor dat de proefconversies veelvuldig herhaald moeten worden.

Door voorafgaand aan de proefconversies de juiste voorbereidingen te treffen neemt de kans op de vicieuze cirkel van testen enorm af. De logische stappen ter voorbereiding van de proefconversie zijn:

  1. In overleg met data-eigenaren (formele acceptanten van de conversie) bepalen wat de acceptatiecriteria ten aanzien van de conversie zijn. Voorbeelden van acceptatiecriteria voor conversie zijn: welke data (alles of alleen vanaf een bepaalde datum) moet geconverteerd worden, uitvalpercentage, doorlooptijd van de conversie, accountantsverklaring. Dit is van belang voor het bepalen van conversiestrategie maar zeker ook voor het bepalen van de efficiënte teststrategie.
  2. Controle en aanpassing van niet eenduidige registratie in de brondatabase. Tijdens proefconversies worden een groot aantal bevindingen door foutieve invoer veroorzaakt. Dit is een typisch voorbeeld van ‘garbage in is garbage out’. Deze bevindingen moeten in de bron opgelost worden. Door deze zaken voorafgaand aan de proefconversie al op te lossen is te voorkomen dat deze bevindingen de proefconversie vertroebelen en nutteloos maken. Bovendien kost de analyse van deze bevindingen onnodig veel tijd en dus geld.
  3. Afstemming van de brondata met het nieuwe doelsysteem. Een verschillenlijst en duidelijkheid vooraf met betrekking tot geaccepteerde uitval zijn input voor het conversie handboek. Dit is cruciaal om tijdens de proefconversie de uitval te kunnen valideren.
  4. De eerste proefconversie is een pure technische conversie ter controle van conversie/extractieprogrammatuur, extractiebestanden en de audit trail met bijbehorende loggings.

Noodzakelijke controles

Bovenstaande voorbereidingen zijn van groot belang voor een efficiënte proefconversie/conversietest. Voor het effectief aantonen van de kwaliteit van de proefconversies zijn daarnaast de volgende controles noodzakelijk:

  1. Controle tellingen (inclusief gedefinieerde Hash Totals) waarbij wordt aangetoond dat de data volledig geconverteerd is. Hierbij moet aantoonbaar aan het uitvalpercentage voldaan zijn. Geladen data is gelijk aan geëxtraheerde data minus verklaarde uitval.
  2. Automatische en handmatige 1 op 1 controle waarbij aangetoond wordt dat de data juist geconverteerd is.
  3. Muteerbaarheid moet aantonen dat mutaties op de geconverteerde (dynamische) data juist verwerkt worden binnen de nieuwe SAP-omgeving.

Efficiënte proefconversies kenmerken zich door een gedegen voorbereiding waarbij de basis wordt gevormd door een gedegen ingericht doelsysteem. Efficiënte proefconversies zijn alles behalve vanzelfsprekend. Het is belangrijk dat de testmanager er naar streeft dat de hierboven beschreven conversie- en teststrategie zo concreet mogelijk wordt ingevuld.

Bij de volgende Blog wordt het efficiënt testen van het testdeelgebied-3 ‘Interfaces’ verder uitgediept.

PTWEE helpt SAP gebruikende bedrijven beter en slimmer te testen en hanteert daarbij een pragmatische aanpak. Deze blog is opgesteld door Henk van de Wardt, SAP Testmanager bij PTWEE, en is onderdeel van een reeks over testmanagement in SAP projecten. Heeft u behoefte om vrijblijvend met ons van gedachten te wisselen over uw testuitdagingen? Neem dan contact op met Douwe Vermeulen op info@ptwee.nl of via 073 711 45 20.