Ingediend | 8 december 2016 |
---|---|
Beantwoord | 16 december 2016 (na 8 dagen) |
Indiener | Ingrid de Caluwé (VVD) |
Beantwoord door | Ronald Plasterk (minister binnenlandse zaken en koninkrijksrelaties) (PvdA) |
Onderwerpen | bestuur economie ict rijksoverheid |
Bron vraag | https://zoek.officielebekendmakingen.nl/kv-tk-2016Z23529.html |
Bron antwoord | https://zoek.officielebekendmakingen.nl/ah-tk-20162017-783.html |
Ja.
Deze conclusie voert te ver en wekt een verkeerde indruk.
Ter toelichting eerst het volgende: refactoren (Engels: refactoring) is het herstructureren van de broncode van een computerprogramma met als doel de leesbaarheid en onderhoudbaarheid te verbeteren of het stuk code te vereenvoudigen. Het refactoren van broncode verandert de werking van de software niet: elke refactorstap is een kleine, ongedaan te maken stap die de leesbaarheid verhoogt zonder de werking aan te passen.
In de brief bij de voortgangsrapportage Operatie BRP van 25 november jongstleden (Kamerstuk 27 859, nr. 97) heb ik gemeld dat het programma, in overleg met de interbestuurlijke stuurgroep, heeft besloten om het JAVA-model te herstructureren, waardoor de complexiteit van de broncode is afgenomen. Ik heb gemeld dat dat een positief effect heeft op de onderhoudbaarheid en dat de ontwikkeling er door kan worden versneld. Bij de herstructurering van het JAVA-model van de code zijn de codegeneratoren uitgefaseerd. Er zijn geen functionele wijzigingen doorgevoerd.
Het voert dus te ver om te stellen «dat het hele skelet van de BRP is vervangen» zoals in het artikel wordt gesteld.
Mijn beeld is dat de uitfasering van de codegeneratoren een onderdeel is van de standaard ontwikkelwerkzaamheden. Vanaf de doorstart1 van het programma in 2013 werkt het programma er stapsgewijs en gecontroleerd naar toe om volledig te voldoen aan het door de stuurgroep vastgestelde normenkader voor de codekwaliteit2. Dit normenkader volgt de industriestandaard voor softwareontwikkeling. KPMG toetst periodiek in hoeverre de broncode aan het normenkader voldoet.
Het volledig gaan voldoen aan het normenkader codekwaliteit is regulier onderdeel van de lopende ontwikkelwerkzaamheden.
Bij de laatste toetsing door KPMG is vastgesteld dat de migratievoorzieningen volledig voldoen aan het kader en dat voor de BRP inmiddels vijf van de zeven gedefinieerde kwaliteitsdoelen gehaald worden.
Bij de ontwikkeling van de BRP werd tot nu toe gebruik gemaakt van codegeneratoren om bouwstenen voor basisfuncties te genereren. Daar is destijds voor gekozen vanuit de (terechte) verwachting dat er gaande de ontwikkeling zeer regelmatig wijzigingen op het gegevensmodel zouden plaatsvinden. Met generatoren kunnen die wijzigingen snel worden verwerkt. Al vanaf de eerste toetsing heeft KPMG opgemerkt dat de generatoren een aandachtspunt vormen bij de overdracht naar beheer, omdat generatoren standaardblokken opleveren die veel regels code beslaan, hetgeen de onderhoudbaarheid niet ten goede komt. Nu in de ontwikkeling het moment is gekomen waarop het gegevensmodel stabiel is en de overdracht naar beheer nadert, is het vraagstuk rond het al dan niet handhaven en in beheer geven van de generatoren door het architectenteam bezien en is besloten om het JAVA-model van de code te herstructureren en de betreffende codegeneratoren uit te faseren, in overleg met de interbestuurlijke stuurgroep.
De herstructurering van de broncode is geen functionele wijziging. De afspraak om nieuwe wijzigingen pas door te voeren na afronding van het programma betreft nieuwe functionele wijzigingen. In de reactie op het BIT-advies wordt gesproken over «wijzigingen uit de omgeving». Van een functionele wijziging of wijziging vanuit de omgeving is hier geen sprake.
Naast functionele wijzigingen kunnen zich in het programma allerlei wijzigingen voordoen om geconstateerde onzekerheden op te lossen of om zaken te verbeteren. Er wordt van alle wijzigingen die invloed kunnen hebben op planning of begroting melding gemaakt aan de Kamer, zoals bij de herstructurering van de broncode dan ook is gebeurd. Dat is conform de door de BIT geadviseerde transparantie over planning en de onderzekerheden daarin.
Daar staan slechts de «wijzigingen uit de omgeving» vermeld. De refactoring is onder andere genoemd bij de onderdelen Voortgang Algemeen, Quality Assurance (beide onder punt 2) en Voortgang ontwikkelingen ICT-voorzieningen (punt 3).
In de voortgangsrapportage wordt toegelicht dat de herstructurering van het Java-model ten goede komt aan de onderhoudbaarheid en de beheerbaarheid. Andere, voor het resterende ontwikkeltraject belangrijke effecten zijn versnelling van het ontwikkeltempo, kortere inwerktijd voor nieuwe ontwikkelaars en kortere oplostijd van bevindingen. De doorlooptijd van de «refactoring» (12 weken) is een investering, die (langs de weg van de hiervoor beschreven effecten) terugverdiend kan worden. De stuurgroep stuurt daarop. Zoals in de Kamerbrief toegezegd, ga ik bij de volgende voortgangsrapportage in op het effect van de herstructurering.
Ik heb in mijn brief gemeld dat de herstructurering een positief effect heeft op de onderhoudbaarheid en dat de ontwikkeling er door kan worden versneld. Ik heb daarbij echter ook gemeld dat de in de rapportageperiode opgeleverde releases maar beperkt nieuwe functionaliteit bevatten. En dat de niet gerealiseerde functionaliteit wordt doorgeschoven naar volgende releases.
Zoals in de Kamerbrief toegezegd, ga ik bij de volgende voortgangsrapportage nader in op het effect van de herstructurering, in de context van de gevalideerde integrale planning. Ik heb u in de voortgangsbrief gemeld dat ik het programma en de interbestuurlijke stuurgroep heb gevraagd in de komende maanden de nodige stappen te ondernemen om de validatie van de integrale planning af te ronden en daarbij (conform BIT-advies) ook weer de onzekerheden in kaart te brengen, zodat ik uw Kamer in het voorjaar van 2017 nader kan informeren.
Naast het effect van de herstructurering worden andere onzekerheden meegenomen, waarop in de komende periode duidelijkheid komt. Het gaat dan bijvoorbeeld om de impact van het gaan registreren van het buitenlands persoonsnummer en het registreren van levenloos geboren kinderen.
Zoals in de brief van 25 november gemeld zal de volgende voortgangsrapportage ingaan op het effect van de herstructurering van de broncode, de ontwikkeling van de complexe onderdelen van de bijhouding, de uitkomsten van het onderzoek naar de implementatie van de leveringsfunctionaliteiten en de afstemming met de ketenpartners. Daarbij zal ik uw Kamer dan de gevalideerde integrale planning (ontwikkeling, acceptatie/inbeheername en implementatie) van het programma doen toekomen.
Overigens heb ik BIT gevraagd – zoals in de Voortgangsrapportage is gemeld – om in het voorjaar van 2017 een toets uit te voeren op de plannen voor de inbeheername van de nieuwe voorzieningen. Ook vraag ik BIT om een toets op het ontwikkelprogramma van Operatie BRP, inclusief de codekwaliteit en de ontwikkelsnelheid. Ik zal BIT vragen ernaar te streven de toets af te ronden in het voorjaar, zodat ik u over de uitkomsten van deze toetsen kan informeren in de volgende voortgangsrapportage.
KPMG beoordeelt voortdurend de kwaliteit van de software. Alle rapportages daarvan zijn te vinden op www.operatiebrp.nl. In de meest recente rapportage van KPMG stellen de auditors juist dat de onderhoudbaarheid is toegenomen3. Bij de laatste toetsing is vastgesteld dat de migratievoorzieningen volledig voldoen en dat voor de BRP inmiddels vijf van de zeven gedefinieerde kwaliteitsdoelen gehaald worden. KPMG blijft gedurende de ontwikkeling toetsen en het doel is om volledig te gaan voldoen aan het normenkader en het is regulier onderdeel van de lopende ontwikkelwerkzaamheden. Ik herken de kwalificatie «lappendeken» dan ook niet.
Ja.