Vereis inspectie van bijdragen
Inspectie van bijdragen door collega’s is essentieel voor de kwaliteit van de broncode en het verminderen van beveiligingsrisico’s en operationele risico’s.
Door te eisen dat bijdragen grondig worden nagekeken, wordt een cultuur gestimuleerd waarin ervoor wordt gezorgd dat elke bijdrage van hoge kwaliteit, volledig en van waarde is. Door de broncode te inspecteren, vergroot je de kans dat mogelijke bugs of fouten worden ontdekt en opgelost voordat ze aan de codebase worden toegevoegd. Als je weet dat alle broncode is gecontroleerd, voorkom je dat er een cultuur ontstaat waarin de schuld bij individuen wordt gelegd en stimuleer je een cultuur waarin de focus ligt op oplossingen en gedeeld eigenaarschap.
Een beleid van snelle beoordelingen garandeert bijdragers snelle feedback of gezamenlijke verbetering, wat zowel de leveringssnelheid als de betrokkenheid van de bijdragers vergroot.
Vereisten
-
Alle bijdragen die worden geaccepteerd of vastgelegd in een uitgave van de codebase, MOETEN door een andere bijdrager worden beoordeeld.
-
Beoordelingen MOETEN bron, beleid, tests en documentatie omvatten.
-
Beoordelaars MOETEN feedback geven over alle beslissingen om een bijdrage niet te accepteren.
-
Het beoordelingsproces ZOU MOETEN bevestigen dat een bijdrage voldoet aan de normen, architectuur en beslissingen die in de codebase zijn vastgelegd om de beoordeling te doorstaan.
-
Bij beoordeling ZOU zowel de software als de tests van de codebase MOETEN worden uitgevoerd.
-
Bijdragen ZOUDEN MOETEN worden beoordeeld door iemand in een andere context dan de bijdrager.
-
Versiebeheersystemen ZOUDEN GEEN niet-beoordeelde bijdragen MOGEN accepteren in een uitgave.
-
Beoordelingen ZOUDEN binnen twee werkdagen MOETEN plaatsvinden.
-
Het uitvoeren van beoordelingen door meerdere beoordelaars is OPTIONEEL.
Hoe te testen
-
Controleer of elke bijdrage in de geschiedenis door iemand anders dan de bijdrager is beoordeeld.
-
Controleer of de beoordelingen de bron, het beleid, de tests en de documentatie bevatten.
-
Controleer of afgewezen bijdragen op de juiste manier zijn toegelicht.
-
Controleer of de richtlijnen voor beoordelaars instructies bevatten voor het beoordelen van conformiteit met standaarden, architectuur en codebase-richtlijnen.
-
Controleer bij de beoordelaars of ze tijdens de beoordeling de software en tests uitvoeren.
-
Controleer bij de beoordelaars of bijdragen door iemand anders dan de bijdrager, in een andere context zijn beoordeeld.
-
Controleer of beoordeling ook technisch vereist wordt, bijvoorbeeld door middel van branch protection in het versiebeheersysteem.
-
Controleer of er geen patroon is waarbij de bijdrager langer dan twee werkdagen moet wachten op een beoordeling of anderszins zinvolle reacties.
Beleidsmakers in de publieke sector: wat je moet doen
-
Voer het vierogenprincipe in, waarbij alles, niet alleen de broncode, wordt gecontroleerd.
-
Gebruik een versiebeheersysteem of werkwijze die beoordeling en feedback mogelijk maakt.
Managers: wat je moet doen
-
Maak van het leveren van geweldige software tot een gezamenlijk doel.
-
Zorg ervoor dat het schrijven van en beoordelen van bijdragen aan broncode, beleid, documentatie en tests als even waardevol worden beschouwd.
-
Creëer een cultuur waarin alle bijdragen welkom zijn en iedereen wordt aangemoedigd om deze te beoordelen.
-
Zorg ervoor dat niemand alleen is in het bijdragen aan een codebase.
-
Creëer een mandaat voor ontwikkelaars om prioriteit te geven aan een snelle beoordeling van bijdragen.
Ontwikkelaars en ontwerpers: wat je moet doen
-
Vraag andere bijdragers aan de codebase om je werk te beoordelen, binnen je organisatie of daarbuiten.
-
Probeer snel te reageren op verzoeken van anderen om een beoordeling en geef in eerste instantie feedback over het concept van de wijziging.
Meer informatie
-
How to review code door de UK Government Digital Service.
-
About protected branches over branch-beveiliging op GitHub.
-
How GitLab Permissions and Protected Branches Keep Your Code Safe over Branch-beveiliging op GitLab.
-
The Gentle Art of Patch Review door Sage Sharp.
-
Measuring Engagement door Mozilla.