Skip to content

Standaarden en andere afspraken

In dit semester zal je in je project veel nieuwe technieken toepassen; Git, HTML, CSS, basisconcepten van het programmeren, JavaScript, TypeScript, Object Oriented Programming, Scrum, UX design, samenwerken in een webproject, relationele databases, SQL, ERD, EER, UML.

Dit kan je natuurlijk niet allemaal in één keer toepassen en dus zal je dit stapsgewijs gaan doen. Om je daarbij te helpen hebben we een technische roadmap voor je uitgezet. Ook hebben we een aantal leidende technische principes voor je opgesteld. Deze zullen je helpen om de eerdergenoemde technieken succesvol toe te passen in je project.

Eén functionaliteit per pagina

Voor iedere functionaliteit komt er een aparte html-pagina. Dus, één html-pagina om een evenement (uitje) toe te voegen, één html-pagina om deelnemers toe te voegen aan een evenement, één html-pagina om deelnemers te bewerken, enzovoorts. Dit principe zorgt ervoor dat het duidelijk is wat waar staat en wie waar voor verantwoordelijk is. Dit helpt bij het samenwerken en om elkaars code beter te begrijpen.

Make it work, make it good, make it better!

Uiteindelijk moet de code die je oplevert voldoen aan meerdere kwaliteitsstandaarden. Goede code maken is echter iets wat je moet leren en wat tijd kost. Daarom zullen we de eisen die we aan de code stellen iedere sprint langzaam ophogen. In het begin stellen we dus minder eisen dan aan het einde.

Het semester is opgedeeld in vijf sprints van ieder drie weken. Iedere sprint zullen we de kwaliteitsstandaarden die aan je code gesteld worden verhogen. Let op! Reeds geschreven code zal dus aan het begin van iedere nieuwe sprint gerefactord moeten worden om aan de nieuwe kwaliteitsstandaarden van de nieuwe sprint te voldoen.

Refactoren betekent code aanpassen zodat deze aan nieuwe eisen voldoet zonder dat je er nieuwe functionaliteiten aan toevoegt. Het is de bedoeling dat je iedere sprint je eigen eerder geschreven code verbetert (en dus niet de code van je teamgenoot).

Voor het refactoren zijn aparte user stories opgenomen, je komt er dus hoe dan ook aan toe!

Zie de planning voor een overzicht wat er ongeveer elke sprint van je verwacht wordt.

Samenwerken met je teamgenoot

Om het werk goed te kunnen verdelen en de samenwerking eenvoudig te maken onderscheiden we een aantal hoofdpagina’s:

  1. Evenementen: Hier wordt een overzicht getoond van alle evenementen. Op deze pagina kan je ook een nieuw evenement maken.
  2. Deelnemers: Hier wordt een overzicht getoond van alle deelnemers. Op deze pagina kan je ook een nieuwe deelnemer maken.
  3. Uitgaven: Hier wordt een overzicht getoond van alle kosten. Op deze pagina kan je ook een nieuwe kostenpost maken.
  4. Betalingen: Hier wordt een overzicht getoond van alle betalingen. Op deze pagina kan je ook een nieuwe betaling maken.

Ieder teamlid wordt verantwoordelijk voor minimaal één hoofdpagina. Als je verantwoordelijk bent voor een hoofdpagina, betekent het dat jij alle user stories oppakt voor die pagina en dat jij alle code voor die pagina schrijft.

Samenwerking tussen pagina’s

Het is niet te voorkomen dat je tijdens het maken van de user stories afhankelijk bent van elkaar.

Bijvoorbeeld: een betaling kan niet bestaan als er geen deelnemer aan gekoppeld kan worden. Daarnaast moet een betaling ook weten voor welk evenement deze bedoeld is.

Gebruik daarom de query string, bijvoorbeeld payment-add.html?id=1 om de betalingspagina te vertellen dat de betaling aan het evenement met ID #1 toegevoegd moet worden.