Werkwijze

From WOSI
Jump to: navigation, search

Als je aan een WOSI project begint zullen we je vragen om een account te maken in onze phabricator. Phabricator is een webapplicatie voor o.a. project management, code reviews, en continuous integration.

Lees onze WOSI Principles voor meer informatie.

Workboard

workboard

Ieder projectteam krijgt een workboard toegewezen. Dit is te vergelijken met trello. Aan het workboard kunnen taken toegewezen worden binnen verschillende kolommen (bv. Backlog, Doing, Review, Done). Deze taken kunnen (en worden) ook gekoppeld aan commits en/of branches. Via dit workboard kun je taken aanmaken of oppakken, aan jezelf of teamgenoot toewijzen, en de status bijhouden. Dit helpt ons ook om de voortgang van alle projecteams in de gaten te houden.


Git en branches

We gebruiken het git versiebeheer systeem voor alle projecten. Voor het ontwikkelen raden we je aan om een branch te maken voor iedere feature of taak. Het voordeel daarvan is dat iedere taak/feature afzonderlijk gecontroleerd en samengevoegd kan worden. Het gehele projectteam krijgt meestal ook een eigen branch toegewezen, om te testen of alle toegevoegde functies samen goed werken, en voor de productoplevering.

Code reviews

Alle commits in git zijn ook in phabricator terug te zien, inclusief een visuele weergave van de wijzigingen. Het is mogelijk om een commit expliciet te accepteren of aan te geven dat er problemen zijn. Hier voegen we dan meestal commentaar aan toe, om aan te geven op welke regel het probleem zich bevindt of waar de code verbeterd kan worden.

Continuous integration

Alle commits worden automatisch door de server gesynchroniseerd en gebuild. Hierbij wordt de gehele code gecompileerd en alle bijbehorende unit tests uitgevoerd. Indien er zich een regressie plaatsvindt, worden wij en de auteur van de commit op de hoogte gesteld via een mail. In phabricator kunnen we de precieze oorzaak van de mislukte build terugvinden. Op deze manier weten we zeker dat de broncode in een goed werkende staat aangeleverd blijft.