CI/CD met RTC & UCD bij Rabobank

Klant
De Rabobank (handelsnaam van de Coöperatieve Rabobank U.A., tot 1 januari 2016 de Coöperatieve Centrale Raiffeisen-Boerenleenbank B.A.) is een Nederlandse bank. De bank heeft sinds 2016 één bankvergunning van De Nederlandsche Bank. De Rabobank is onderdeel van de Rabobank Groep.
Vraag
De Rabobank moest systemen die gebruikt worden voor versiebeheer en deployment vervangen door nieuwe tooling en deze opnemen binnen een zgn. Continuous Integration / Continuous delivery pipeline (CI/CD pipeline). Grootste reden hiervoor is de uitfasering van de gebruikte versiebeheer tool Endevor en de wens om binnen een nieuw op te zetten CI/CD Pipeline geheel zelfstandig code door te kunnen zetten van ontwikkeling naar productie en dat meerdere keren per dag. Inclusief geautomatiseerde testen op de diverse omgevingen.

Oplossing
Er is gekozen voor het opzetten van de CI/CD pipeline, gebruikmakend van de IBM toolset bestaande uit Rational Team Concert (RTC) en Urban Code Deploy (UCD). Er wordt dan ook gesproken over de Continuous Integration / Continuous delivery pipeline (CI/CD pipeline) over RTC/UCD.
Dit betekende dat afscheid moest worden genomen van de tools die al jarenlang werden gebruikt voor versiebeheer en deployment op z/OS, namelijk Endevor en DIO. Daarnaast werd er een geheel nieuwe werkwijze geïntroduceerd, werden de diverse Cobol elementen aangepast conform de standaard naamgevingconventie van RTC/UCD en dat er een geheel nieuwe OTA-straat werd ingericht.
Omdat de werkzaamheden vrij technisch van aard zijn en de continue focus op de werkzaamheden van essentieel belang was, is er door de afdeling, waar ik vanuit Newspark werkzaam was als testconsultant/testautomatiseerder, gekozen om een dedicated IT4IT team op te tuigen. Al snel hoorde ik dat ik één van de personen was, die gevraagd werd om in dat nieuwe IT4IT team te gaan werken. Ik was hier erg blij mee en ging dan ook met veel enthousiasme aan de slag in het nieuwe team.

Doen
Om de gehele migratie naar RTC en UCD uit te voeren ben ik in maart 2018 gestart binnen het nieuwe IT4IT team. Ik werd tevens gevraagd als Scrummaster en die rol heb ik met veel plezier vervuld.
Na een gedegen voorbereiding zijn we aan de slag gegaan met het inrichten en testen van de nieuwe testomgevingen en het aanpassen en testen van de Cobol elementen in de nieuw ingerichte testomgevingen. Uiteindelijk hebben we ruim 7300 Cobol elementen succesvol overgezet op de nieuwe omgevingen. Ik heb hierbij voor een belangrijk deel alle testen geautomatiseerd met behulp van UFT.
Toen alle Cobol elementen waren aangepast conform de standaarden van RTC en UCD, de nieuwe omgevingen waren ingericht, ben ik vervolgens aan de slag gegaan met het uitbreiden van de CI/CD pipeline met geautomatiseerde regressietesten. Door middel van meerdere Jenkins jobs worden nu bij elke deployment automatisch de regressietests getriggerd en uitgevoerd. Ook kunnen we de Regressietests inplannen, zodat ze bijvoorbeeld elke avond automatisch worden uitgevoerd.
Een belangrijk en niet te vergeten verantwoordelijkheid van ons team was het overdragen van de kennis aan de medewerkers op de afdeling. Ik heb dan ook onder andere Masterclasses gegeven aan de Ontwikkelaars, OPS-engineers en Testers. Verder heb ik een overdrachtsdocument geschreven, 28 edities uitgegeven van de ‘Wist je dat’ en we hebben na elke sprint een demo gegeven.
Kwaliteit
Het hele proces van on-boarden naar de CI/CD pipeline over RTC en UCD was niet alleen erg leuk om te doen, er wordt ook business value mee gegenereerd. Met deze on-boarding, hebben we een nieuwe en robuuste manier van ontwikkelen en deployen geïntroduceerd. We kunnen nieuwe en gewijzigde functionaliteit nu sneller, goedkoper, efficiënter en met een hogere kwaliteit opleveren aan onze klanten. Een grote stap in de goede richting het ultieme doel; tevreden klanten met een 9+ ervaring!