.net development bij BKR
Klant
BKR (Bureau Krediet Registratie) is opgericht in 1965 door banken en financiële dienstverleners. Het BKR heeft als doel ervoor te zorgen dat zoveel mogelijk Nederlanders zonder problematische schulden zijn. De schulden van Nederlanders brengt het BKR in beeld waardoor kredietverstrekkers inzicht kunnen krijgen in lopende leningen en de betaalgeschiedenis. De kredietverstrekker bepaalt op basis van de gegevens van het BKR of een aanvrager verantwoord een lening kan afsluiten.
Vraag
Wat voor velen onbekend zal zijn, is dat BKR, naast kredietregistratie, ook een aantal andere diensten levert aan bedrijven. Zo is er een Verificatie Identificatie Systeem (VIS) dat gebruikt wordt om identiteitsfraude in te dammen. Voor de doorontwikkeling van dit systeem was er een dedicated .NET developer nodig om het systeem te onderhouden en uit te breiden.
De opdracht
Om de transitie van developers vlekkeloos te laten verlopen liet men Jasper zoveel mogelijk samenwerken met de reeds zittende developer. Jasper veranderde hiertoe een aantal functionaliteiten en maakte nieuwe releases om zich het systeem zo goed en zo snel mogelijk eigen te maken. Tevens werd naar de toekomst van het product gekeken; de Product Owner wilde bepaalde functionaliteiten toevoegen aan de bestaande software, maar ook een nieuwe service opzetten die met modernere standaarden voor APIs gemaakt zou worden. Hiervoor was al een deel gemaakt door de reeds zittende developer. Ook hier vond een kennisoverdracht plaats waarna Jasper uiteindelijk de complete .NET ontwikkeling voor zijn rekening nam.
Uiteindelijk is er een API opgezet die volgens de OWASP Rest Security cheat sheet is opgezet. Deze API heeft een penetratie test ondergaan, waaruit is gebleken dat de API voldoende beveiligd is. Er werd binnen Stichting BKR ook aan de API gewerkt door een ander team; zij hebben de Security opzet overgenomen en verder uitgebreid. De gekozen opzet heeft voor een soepele overdracht gezorgd waardoor een goede continuïteit is gewaarborgd.
Het VIS-systeem wordt niet alleen voorzien van data uit Stichting BKR zelf, maar bevat ook data uit systemen van externe partijen. Waar reguliere Imports vaker periodiek gebeuren, is het eens in de zoveel tijd nodig dat het systeem gesynchroniseerd wordt met een complete dump. Ook worden er vaker database updates gedaan om alles goed te laten functioneren. Ook hier is Jasper verantwoordelijk voor geweest, en om zo min mogelijk gebruikers in de weg te zitten is er een tijdstip buiten business hours gekozen, namelijk 5 uur ’s ochtends. Hierdoor zijn alle potentiële problemen voor gebruikers van het VIS-systeem tot een minimum beperkt tijdens de updates.
Hiernaast is tijdens de opdracht een begin gemaakt aan het automatiseren van het uitgeven van certificaten. De nieuwe API werkt met nieuwe client certificates. Om het beheer van deze certificaten zo eenvoudig mogelijk te houden worden ze door Stichting BKR zelf uitgegeven.
Kwaliteit
Tijdens de opdracht is gebruikt gemaakt van CI/CD met een groot aantal regressietesten en unittesten om de kwaliteit zoveel mogelijk te garanderen. Toch gaat er zoals in ieder IT project wel eens iets mis. Zo werkten na een update bepaalde functionaliteiten niet meer goed. Het systeem was gelukkig dusdanig opgezet, dat een rollback naar de vorige situatie snel gerealiseerd kon worden waardoor de impact tot een minimum is beperkt. Om verdere herhaling te voorkomen is de regressie testset direct uitgebreid met testen voor deze specifieke bevinding, zodat dezelfde fout niet nogmaals op productie kan voorkomen.