Centric connect.engage.succeed

Do’s and don’ts voor het uitvoeren van een migratie

Geschreven door Nils Freriksen - 15 februari 2018

Nils Freriksen
In het eerste deel van deze blogreeks ging ik in op het opstarten van een migratieproject. Waarmee moet je allemaal rekening houden? Aan bod kwamen zaken als de initiatiefase, de te hanteren migratiestrategie en de invulling van het migratieteam. In dit tweede deel ga ik dieper in op het uitvoeren van de migratie. Hoe registreer je een migratietraject, hoe kun je de migratiestappen automatiseren en wat doe je met tooling?

Lees hier het eerste deel van de blog reeks.

Registratie

Zodra je met de uitvoering van een migratie begint, is het goed om te bepalen hoe een en ander bijgehouden gaat worden.

  • Wat moet er worden bijgehouden?
  • Voor welke partijen moet de registratie inzichtelijk zijn?
  • Hoe gaat er gerapporteerd worden?
  • Aan wie gaat er gerapporteerd worden?

Bij de registratie van een groot migratietraject komt veel kijken. Zo moet intern de voortgang bewaakt worden. Zijn er knelpunten? Dan moeten die snel inzichtelijk gemaakt kunnen worden. Voor het bijhouden/registreren hiervan zijn vaak verschillende hulpmiddelen voorhanden. Je kunt bijvoorbeeld gebruikmaken van Excel om rapportages te maken die gebruikt kunnen worden tijdens overlegvormen. Word kun je gebruiken om voortgangsrapportage op stellen en PowerPoint is geschikt om periodiek de status naar de stakeholders te communiceren/presenteren.

Transparantie

Als het gaat om tooling, adviseer ik om altijd binnen de organisatie te kijken welke tools al gebruikt worden en daarop voort te borduren. Zo voorkom je de introductie van een nieuw product. Mocht er niets voorhanden zijn, kies dan voor een product waarvan de acceptatiedrempel zo laag mogelijk is. Denk bijvoorbeeld aan producten uit de Office-suite. Hiermee voorkom je onnodige adoptieproblemen.

Binnen de besproken case, de SharePoint-migratie, hebben wij er als projectteam voor gekozen om SharePoint te gebruiken als tool waarin de voortgang bewaakt kon worden. Door gebruik te maken van een standaard SharePointlijst konden we alle informatie over de projectscope opslaan en publiceren naar alle partijen.

Aan deze lijst zijn metadata en workflowfunctionaliteit toegevoegd voor het zoeken/vinden van informatie en het automatiseren van een gedeelte van de communicatie richting de business. Hier kom ik later in deze blog op terug. Daarnaast kregen alle betrokken partijen toegang tot de omgeving, waardoor de status van het project op elk moment direct inzichtelijk was voor alle partijen.

Binnen de SharePointlijst werden al de te migreren onderdelen (de sites en site-collecties) opgenomen. Over deze onderdelen werden onder andere de onderstaande zaken bijgehouden:

  • Wie is/zijn de kennishouder(s) van de site/sitecollectie?
    • Kennishouder was het directe aanspreekpunt en begeleidde de migratie vanuit de business
  • Categorie
    • Standaard
      • Standaard site zonder maatwerk of andere soorten functionaliteit die een standaard migratie in de weg kunnen zitten
    • Special
      • Sites die functionaliteit bevatte die wel in de oude omgeving maar niet in de nieuwe doelomgeving zou gaan werken
    • Maatwerk
      • Sites die maatwerk bevatten
    • Migratieconsultant
      • De consultant die vanuit het projectteam de migratie begeleidde, tevens het aanspreekpunt voor de business
    • Migratie Data Acceptatie > Productie
      • Het moment van migratie naar acceptatie en productie

Bovenstaande punten zijn specifiek voor een SharePoint-migratie en wijken vanzelfsprekend af, zodra de migratie een ander product betreft. Wij kwamen er snel achter dat de door ons vooraf bedachte metadata niet volledig was. Met als resultaat dat de lijst tijdens de migratie ook op detailniveau wijzigde.

Categorieën werden toegevoegd en de sites werden met maatwerk verder geanalyseerd en voorzien van extra metadata. Zodoende kregen wij goed inzichtelijk hoeveel maatwerk er nodig was en wat daarvan de impact was op de doorlooptijd.

Flexibiliteit

Probeer altijd rekening te houden met veranderingen in de aanpak en/of aanvliegroute van een project. Giet dus niet je hele aanpak vast in beton, maar zorg ervoor dat je je aanpak tijdens de migratie regelmatig evalueert op geschiktheid en voer waar nodig wijzigingen door.

Wijzingen kunnen plaatsvinden in de registratie, maar zeker ook in de uitvoering van de migratie. Zorg ervoor dat de gekozen tooling hier flexibel mee kan omgaan en houd de business op de hoogte zodra wijzigingen worden doorgevoerd. Op die manier kun je snel ingrijpen en blijft de impact op de voortgang van het project tot een minimum beperkt.

Voor ons gaf het bijhouden van de voortgang in SharePoint (en het vanuit SharePoint rapportages draaien in Excel) rust en duidelijkheid. Het voorkwam onnodige vragen, want alle partijen hadden toegang tot de omgeving. Ook bood het ons de ruimte en tijd om ons volledig te focussen op het uitvoeren van de migratie.

De lijst werd voor aanvang van de migratie gevuld met data, die vervolgens werd gedeeld met de kennishouders. Daarna werd de data door de consultants en kennishouders getoetst op volledigheid en geaccordeerd. Zo wisten we voor aanvang van de migratie dat hetgeen wat gemigreerd moest worden gevalideerd was en alle partijen hiervan ook op hoogte waren.

Automatisering

Na het leggen van de basis van de uitvoering, was het tijd om de migratie te stroomlijnen. Tip: het is goed om vooraf te bepalen welke migratiestappen geautomatiseerd kunnen worden. Let hierbij vooral op tijdswinst versus de investering die geleverd moet worden.

Vanuit ons project hebben wij de migratiestappen die foutgevoelig en/of tijdrovend waren tegen de meetlat gehouden. Vervolgens hebben we de afweging gemaakt een stap wel of niet te automatiseren. Dit hangt natuurlijk weer sterk af van de investering en wat die investering op gaat leveren (de impact op de doorlooptijd).

Probeer altijd zoveel mogelijk automatiseringsslagen voor de uitvoering door te voeren. Wanneer je tijdens de migratie zaken automatiseert, gaat dit namelijk vaak ten koste van de doorlooptijd en de beschikbaarheid van de migratieconsultants.

Scenario

Tijdens het migratieproject kwamen wij tot de conclusie dat het veel tijd zou opleveren om niet twee keer te migreren - namelijk van de bronlocatie naar de acceptatieomgeving en van de bronlocatie naar productieomgeving - maar de migratie een keer uit te voeren. Dus van de bronlocatie naar de acceptatieomgeving. Er zou een migratieslag bronlocatie > acceptatie plaatsvinden en vervolgens zou, na accordering van de business, de acceptatiesite worden gekopieerd naar de productieomgeving. Behalve tijdwinst zou deze kopieeractie vooral bij het migreren van complexe sites de migratiecomplexiteit drastisch verminderen. Bij complexe sites kun je denken aan sites die workflow en/of digitale formulieren bevatten. Deze sites zouden in dit scenario maar één keer hersteld hoeven te worden, bij de migratie naar de acceptatieomgeving. Vervolgens zou bij de kopieerslag naar de productieomgeving de herstelde functionaliteit geborgd blijven.

Dit leverde dan ook niet één, maar twee voordelen op:

  1. tijdwinst in de migratie: kopiëren van sites is aanzienlijk sneller dan het uitvoeren van een tweede migratie
  2. in een keer (in plaats van twee keer) de functionaliteit herstellen

Uiteindelijk wonnen we zo in de uitvoering een derde van de begrootte migratietijd. Hierbij loonde het om de migratieaanpak te herzien en hierop wijzigingen door te voeren.

Doorlooptijd

De kopieeractie werd uitgevoerd met een back-up/restore-actie. We hebben een back-up van de acceptatiesite uitgevoerd, na accordering van de business en de migratieconsultant, en vervolgens een restore van deze site uitgevoerd naar de productieomgeving. Daarna moest de productiesite nog getoetst en geaccordeerd worden door beide partijen. Op die manier waren wij er zeker van dat de migratie juist was uitgevoerd. Het kostte weinig effort om alle partijen ervan te overtuigen dat het doorvoeren van een automatiseringsslag een slimme zet was.

Juiste competenties

Mijn ervaring is dat het altijd zinvol is kritisch te kijken naar de opzet van het project en waar nodig de aanpak en uitvoering bij te schaven. Zorg ervoor dat de juiste mensen bij elkaar zitten om de juiste beslissingen te kunnen nemen. Dit klinkt logisch, en dat is het ook, maar vaak schort het hieraan bij het samenstellen van een migratieteam. Het is daarom ook essentieel dat de juiste competenties, zoals in het eerst blogdeel is besproken, binnen het migratieteam vertegenwoordigd zijn.

Tooling

Naast de registratietool is het van belang de juiste tooling voor de uitvoering van de migratie te kiezen. Hiervoor hebben we vooraf een long- en shortlist opgesteld en zijn betaversies van beide producties getest. Aan de hand van de resultaten hiervan en de resultaten van collegae hebben we de tool gekozen. In dit geval een tool die zich al ruimschoots heeft bewezen. Tip: kijk altijd welke producten er in een specifiek vakgebied worden gebruikt. Lees je in en test uitvoerig welke tool het meest geschikt is voor het traject. Vaak hoef je het wiel niet opnieuw uit te vinden en kun je aan de hand van eerder opgedane ervaringen een keuze maken.

Vanuit onze case was het van belang dat de tool robuust was (het betrof een grote omgeving met veel content en functionaliteit) en dat we met de migratietool onderdelen van de migratie konden automatiseren. Ook was het van belang de stakeholders en de business tijdig en correct te informeren. Daarom was het voor ons een vereiste dat de tool in staat was rapportages te genereren.

Powershell scripting

Het automatiseren van de migratie vond plaats met scripting. Met Powershell en door gebruik te maken van functionaliteit die binnen ons vakgebied vaak gebruikt wordt (Office PnP) is een automatiseringsslag doorgevoerd, waardoor sites automatisch konden worden aangemaakt. Daarnaast zorgde een tweede script ervoor dat de migratie vanuit de gekozen tooling werd gestart en dat alle benodigde stappen werden doorgevoerd aan de hand van vooraf bepaalde variabelen. Na de migratie werd er vanuit het script de rapportagefunctionaliteit van de tooling aangeroepen die als output een rapportage opleverde. Dit bood direct inzicht in het resultaat van de migratieactie.

Met het scripten van de migratie waren onderstaande zaken afgedekt:

  • de registratie van het project
  • automatiseren van de migratie
    • back-up/restore
    • PowerShell-scripting
  • kiezen van de te gebruiken tooling

Naast de technische uitvoering van de migratie, is de communicatie omtrent het traject richting de doelgroep(en) minstens zo belangrijk. Het opzetten van de communicatie, het plannen en uitvoeren van trainingen en het opzetten van het adoptieplan behandel ik in het derde en laatste deel van deze blogreeks.

Conclusie

Bereid de migratie voor! Registreer de voortgang voortdurend, zorg dat alle partijen hier inzicht in hebben en gebruik tooling die direct voorhanden is en eenvoudig te gebruiken. Bepaal voor en tijdens de uitvoering welke migratieonderdelen te automatiseren zijn en stuur waar nodig bij! 

Over Nils

Nils Freriksen is Craft Expert van Team Office 365 binnen Craft, hét groeiprogramma voor IT'ers (powered by Centric). Wil je zijn blog volgen? Schrijf je in voor de Craft-update

Wil je meer weten over Craft, hét groeiprogramma voor IT'ers? Neem een kijkje op de website!

Tags:Office 365

     
Schrijf een reactie
  • Captcha image
  • Verzenden