Repository in Scrum
Repository is een begrip dat ontwikkelaars onderling vaak gebruiken. Ze hebben het namelijk nodig in hun dagelijkse werk. Voor een beginner of een buitenstaander roept de term wel de nodige vragen op. Daarom een nadere uitleg in dit artikel.
PhoenixNap komt met de volgende definitie:
Een repository, of repo, is computeropslag voor het onderhouden van gegevens of softwarepakketten. Deze locatie bevat bestanden, databases of informatie die is georganiseerd voor snelle toegang via een netwerk of rechtstreeks. Met een repo kunnen gegevens worden geconsolideerd met een versiebeheersysteem om metagegevens op te slaan voor elk bestand en logboekwijzigingen.
Met softwareopslagplaatsen kunnen gebruikers specifieke gegevens, code of softwarepakketten lokaliseren en verkrijgen in een beveiligde omgeving met behulp van toegangscontrole- en authenticatiesystemen. Enkele van de meest bekende gehoste software-opslagplaatsen zijn GitHub, BitBucket en SourceForge.
Een repository is een opslagplaats voor broncode en andere bestanden die we gebruiken in IT-projecten. Ontwikkelaars gebruiken het om wijzigingen in de code bij te houden en om de onderlinge samenwerking mogelijk te maken.
Hier zijn enkele voorbeelden van hoe we een repo kunnen gebruiken:
Repositories gebruiken we vaak in de context van Scrum. In Scrum werken we met zogenaamde “product backlogs” en “sprints” om de ontwikkeling van software te organiseren. Een product backlog is een lijst van alle features, taken en bugs die we moeten oplossen voor het project. Een sprint is een kort ontwikkelingscyclus waarin een deel van de items op de product backlog worden opgepakt.
In Scrum kunnen we de repository gebruiken om de voortgang van het project te volgen en te managen. Door bijvoorbeeld bij te houden welke taken er zijn afgerond en welke we nog moeten oppakken, kan het team de voortgang van het project beter in de gaten houden en eventueel bijsturen waar nodig. Daarnaast kunnen we de repo ook gebruiken om feedback te geven op de code van andere ontwikkelaars, bijvoorbeeld door middel van code reviews.
Het gebruik van een repository is gebruikelijk in vrijwel alle Scrum-teams die werken aan software-ontwikkeling. Het hebben van een centrale opslagplaats voor de codebase is namelijk essentieel voor het succesvol managen van het project.
Meestal gebruiken Scrum-teams een repo zoals Git, SVN of Mercurial om de code te managen. Dit stelt ontwikkelaars in staat om hun code aan het project toe te voegen, wijzigingen te delen en samen te werken aan verschillende functies en taken. Het stelt ook Scrum-teams in staat om verschillende versies van de codebase te beheren, bijvoorbeeld voor verschillende releases van de software.
Een repository kan ook een belangrijk hulpmiddel zijn voor het bijhouden van de voortgang van het project. Het kan worden gebruikt om de status van de verschillende functies en taken bij te houden, evenals de wijzigingen die zijn aangebracht en de personen die daaraan hebben gewerkt. Dit kan het team helpen om beter inzicht te krijgen in de voortgang van het project en eventuele problemen tijdig te identificeren en op te lossen.
Een repo kunnen we gebruiken om de codebase van het project op te slaan en te beheren. Dit kan bijvoorbeeld een Git-repository zijn, waarin de ontwikkelaars hun code kunnen pushen en pullen. Door de code op deze manier te managen, kunnen meerdere ontwikkelaars tegelijkertijd werken aan de code en wijzigingen volgen en beheren.
Het gebruik van een repository is dus nuttig voor elk scrum-team, ongeacht de grootte van het team. Het helpt bij het bijhouden van wijzigingen in de code en maakt samenwerking tussen ontwikkelaars mogelijk. Zelfs als je de enige ontwikkelaar bent is de repo nuttig voor het documenteren van de ontwerpbeslissingen en wijzigingen in de code.
Hieronder ga ik dieper in op een aantal vragen over de toepassing en Best Prectices van repositories.
Een opensource repository is een repo waarvan de broncode (sources) is gepubliceerd en vrij beschikbaar is voor iedereen. Iedereen kan en mag deze software kopiëren, aanpassen, aanvullen en verspreiden zonder kosten aan auteursrechten en of andere toeslagen.
Niet elke ontwikkelomgeving heeft een repository. Het gebruik van een repo is echter wel een best practice in softwareontwikkeling en daarom kunnen we het vaak tegenkomen in projecten.
Ja, we hebben speciale kennis nodig om met een repository om te gaan. Als we echt wil gaan werken met bijvoorbeeld GitHub en de mogelijkheden van het platform wil benutten, is het aan te raden om een goede training te volgen en er dieper in te duiken.
Er zijn enkele nadelen aan het gebruik van een repository, zoals:
Over het algemeen wegen de voordelen van het gebruik van een repository echter zwaarder dan de nadelen.
De kosten en inspanningen die nodig zijn voor de implementatie van een repo zijn afhankelijk van verschillende factoren, zoals:
Over het algemeen zijn de kosten en inspanningen voor de implementatie van een repository echter relatief laag in vergelijking met de voordelen die het biedt.
De repository speelt nog steeds een belangrijke rol in de onderhoudsfase van het project. Het wordt gebruikt om wijzigingen in de code bij te houden en om samenwerking tussen ontwikkelaars mogelijk te maken. Het kan ook worden gebruikt om documentatie en andere bestanden op te slaan die nodig zijn voor het onderhoud van het project.
Als we veranderen van ontwikkelomgeving, kunnen er enkele problemen optreden met de repository. Bijvoorbeeld:
Het is belangrijk om deze problemen te identificeren en op te lossen voordat we overstappen naar een nieuwe ontwikkelomgeving.
Als we veranderen van methodologie, kan ook dit problemen veroorzaken met de repository. Bijvoorbeeld:
Het is belangrijk om deze problemen te identificeren en op te lossen voordat we overstappen naar een nieuwe methodologie.
De repository bevat veel data die de aard en opzet van nieuwe software vertegenwoordigen. Concurrenten hebben waarschijnlijk veel geld over om die informatie te bemachtigen. We moeten onze repo dus beschermen. Om de inhoud van de repository te beveiligen, kunnen we verschillende maatregelen nemen, zoals:
Het is ook belangrijk om ervoor te zorgen dat ontwikkelaars zich bewust zijn van het belang van het beschermen van de inhoud van de repository en dat ze zich houden aan de beveiligingsprocedures die zijn vastgesteld.
Zoals gezegd bevat de repository gevoelige informatie en criminelen willen daarom onze systemen hacken. Dat doen ze bijvoorbeeld door het werkstation van een ontwikkelaar te infiltreren en malware te installeren. Waarschijnlijker is dat zij potentiële slachtoffers benaderen via e-mail, directe berichten en websites met downloadbare inhoud of peer-to-peer netwerken. Misbruik maken ze gebruik van onveilige draadloze netwerken.
Als een repository toch wordt gehackt, kunnen er verschillende risico’s zijn, zoals:
Het is dus belangrijk om de repository te beschermen tegen hackers door beveiligingsmaatregelen te nemen, zoals het gebruik van toegangscontrole, versleuteling en beveiligde verbindingen.
Een programmeur kan echter geen repository stelen. Een repository is een opslagplek voor alle veranderingen, versies en bestanden van een project. Daardoor kunnen developers “versiebeheer” uitvoeren op alle onderdelen van een project tijdens de ontwikkeling. Let op, het is wel mogelijk dat een programmeur de code van een repo kopieert en deze zonder toestemming gebruikt voor eigen doeleinden.
Het blijft een systeem van software en hardware, en deze kan altijd falen. Als de repo down gaat, veroorzaakt dit meestal problemen voor het projectteam. Een snelle reconstructie kan de schade echter binnen de perken houden. Daarom is het belangrijk om regelmatig back-ups te maken van de repo en om een offline plan te hebben voor het geval de repo niet beschikbaar is.
Mogelijk is dit een vertaling van Google Translate en kan fouten bevatten. Klik hier om mee te helpen met het verbeteren van vertalingen.