Project informatie

  • Titel: Organisatieplatform
  • Soort: Stageopdracht (duo)
  • Opdrachtgever: Inetum-Realdolmen
  • Periode: 02/2021 - 06/2021
  • Talen/frameworks: C#, ASP.NET, React

Omschrijving

Inetum-Realdolmen presenteerde de opdracht om een planningsapplicatie te maken. Dit was de opdracht die Jeroen Verheyden en ik aangingen. That's it. We kregen volledig 'carte blanch' met de invulling van de opdracht zelf. Zo mochten we zelf afkomen met een geschikte case waarrond we dit project zouden uitwerken. Ook mochten we zelf kiezen welke talen, frameworks, en andere technologien we graag zouden gebruiken. De enige vereiste was dat er .NET aan te pas kwam.

De opdracht

Aangezien we zelf een case konden uitdenken, was het natuurlijk ook aan ons om hier een analyse voor op te stellen. Voor deze analyse werd eerst een marktonderzoek gedaan.

Om te bepalen welke technologieën we zouden gebruiken, maakten we een analyse waarin we de verschillende mogelijkheden naast elkaar zetten. Voor de stageperiode hadden zowel Jeroen als ik nog geen typescript frameworks gebruikt. Na de opties te vergelijken tussen Angular en React kozen we er uiteindelijk voor om de frontend van de applicatie te maken in React. Het leek ons erg interessant om aan de slag te gaan met een taal die we beiden nog vanaf nul moesten leren kennen. De backend moest met .NET gemaakt worden, we kozen er voor om een ASP.NET Web API te maken met .NET 5.

Voor de invulling van de applicatie verzonnen we 3 totaal verschillende cases. De gemeenschappelijke factor hiertussen was dat er op een manier afspraken gemaakt konden worden tussen de verschillende gebruikers van de applicatie. Met de festivalzomer voor de deur kozen we voor een case waarbij festivalsorganisaties meetings konden vastleggen tussen de verschillende partijen die samen werken met het festival.

Uitvoering

De uitwerking van het project gebeurde gelijktijdig in de front- en backend. Om dit te kunnen doen was er altijd een heel snelle communicatie tussen Jeroen en mij. Op Jira werd bijgehouden aan welke zaken we bezig waren, welke af waren, en welke nog gedaan moesten worden in volgorde van prioiteit. Op die manier zorgden we er steeds voor dat functionaliteit die nodig was in de frontend, samen werd gemaakt met functionaliteit in de backend. We kozen er voor dit op deze manier te doen zodat front- en backend al vanaf het begin met elkaar konden communiceren. Dit was een goede manier om proactief aanpassingen te kunnen doen.

SCRUM

Wat heel belangrijk was tijdens de stage, was dat er op een correcte manier met SCRUM gewerkt werd. Dit hebben we ook zo gedaan. Zo werden alle taken eerst in de product backlog geordend op prioriteit. Voor elke sprint van 2 weken werden alle taken voor die sprint verplaatst naar de sprint backlog. Op het einde van elke sprint werd er een demo meeting gehouden, vervolgd met een sprint review. Hierin werd gereflecteerd op het geleverde werk van die sprint. Ook werd er op het einde van de sprint een sprint retrospective gehouden. Tijdens de retrospective werd eerst gekeken naar de retrospective van de vorige keer om te zien of er verandering was gemerkt sinds dien. Uiteindelijk werd er ook de sprint planning gehouden om de volgende sprint voor te bereiden.

Dagelijks werd er een daily SCRUM meeting gehouden (Standup meeting). Hierin werd aan elkaar toegelicht waaraan iedereen bezig was op dat moment en wat het werk was dat iedereen de komende werkdag ging verrichten. Bij problemen was dit het geschikte moment om dit even aan te halen. Deze meeting werd strict gehouden tot 15 min. per dag.

Doorheen de stage werd de rol van SCRUM master en Product Owner steeds doorgegeven. Zo was iedereen een keer verantwoordelijk voor de invulling van elke rol. De rol van SCRUM Master hield hier bijvoorbeeld in om elke meeting te leiden en om de retrospective meetings op een bepaalde manier te laten verlopen. De rol van Product Owner werd telkens deze voor de stagebegeleider was, zo ingevuld dat er bijvoord plots een heel andere visie op het eindproduct op tafel gelegd werd. Dit om een reële situatie na te bootsen waar een klant zich bijvoorbeeld van gedacht kan veranderen.

Conclusie

Deze dynamische stage was een heel lerrijk proces op professioneel vlak. Dit was de eerste keer dat ik een opdracht in de bedrijfswereld heb volbracht waar professionele methodologieën gehanteerd worden. De stricte handtering van het SCRUM framework en de keuze voor een nieuwe taal, maakte deze opdracht enorm leerrijk. Bovendien was het databasemodel zodanig uitgewerkt, dat dit een mooie complexiteit met zich mee bracht, waardoor ik met trots kan zeggen dat dit een geslaagde opdracht was.

Links