Subsidiemanager: Kevin licht de technische kant van de zaak toe

We hadden het eerder al over het online platform Subsidiemanager, waar steden en gemeentes vlot subsidies kunnen opzoeken en beheren. Vandaag gaat developer Kevin Van Haecke dieper in op de technische kant van dit project.

Gefaseerde aanpak in sprints

Op basis van de briefing en documentatie van de klant stelden we een storyboard op voor het project. We gebruikten dit als leidraad om een budgettaire inschatting te maken van het werk. Vanuit het storyboard werd de backlog aangevuld in Azure DevOps met:

  • Epics: voor de grote modules van de applicaties
  • Features: voor de functionaliteiten binnen de modules
  • De features werden opgedeeld in kleinere blokken werk (PBI’s)

Vanaf dan werd het werk uitgevoerd in sprints van 3 weken. Voor de start van elke sprint werd een deel van de PBI’s in story points ingeschat. Dit is een nummer waarmee we de grootte-orde van een taak bepalen. Onze velocity (i.e. het aantal story points dat een team in één sprint kan uitvoeren) bedraagt 40. Hierdoor konden we bepalen welke PBI’s in een sprint pasten.

Bij aanvang van een sprint deden we steeds een task breakdown. Hierbij maakten we per PBI taken aan en koppelden we er uren aan. Wekelijks waren er overlegmomenten met de Uitgeverij om lopende zaken te bespreken (Subsidiemanager was een samenwerking tussen Novado, Uitgeverij Vanden Broele en IDEA Consult, nvdr). Elke sprint werd afgesloten met een opleveringsmoment. Hierbij toonden we de ontwikkelingen aan de Uitgeverij en wierpen we een kritische blik op onze werking.

Technologieën en systemen

Net voor de ontwikkelingsfase volgden we met alle developers een training over de technologieën die we zouden gebruiken voor Subsidiemanager: ASP.NET Core 3, VueJS en OpenIdConnect. Daarnaast gebruikten we nog andere softwaresystemen en -tools:

  • Visual Studio en VS Code voor development
  • Docker als lokale runtime omgeving
  • Azure DevOps voor projectopvolging en source code repository
  • TeamCity als building system
  • Octopus om de software te deployen
  • Figma als designtool
  • Miro voor de visuele planning

Uitdagingen en sterktes

De grootste uitdaging van dit project bestond erin om een manier te vinden waarmee gebruikers de juiste subsidies snel en eenvoudig kunnen terugvinden. Een andere challenge was het uitvoeren van het project binnen de voorziene tijd, scope en budget omdat we met een strikte deadline zaten. Het platform is live sinds september 2020. De gebruikers bij de steden en gemeentes zijn enthousiast. Ze vinden vlot alle subsidies terug. Het is een functioneel en gebruiksvriendelijk platform dat gebruiksgemak en tijdswinst oplevert.

Vanuit mijn standpunt als developer zijn dit de sterkste punten van Subsidiemanager:

  • De snelheid van de applicatie
  • Het notificatiesysteem dat ervoor zorgt dat de hoeveelheid mails beperkt blijft
  • Realtime updates van de user interface via SignalR
  • Het gebruik van gedeelde libraries binnen Novado, bv. een op EF Core gebaseerde datalayer, een State machine workflow, een Messaging systeem etc.
  • Het command/query systeem waarmee het ophalen en het wijzigen van data volledig gescheiden zijn

Ik vond dit een boeiend project om op te werken met ons team. We hebben heel wat nieuwe zaken bijgeleerd, zoals:

  • Werken met een full-blown SPA (Single Page Application) met een aparte API via OAuth
  • Het gebruik van Figma als visuele designtool voor het ontwikkelen van de user interface
  • Front-end testen van de op VueJS gebaseerde user interface

Dankjewel aan het enthousiaste projectteam!

  • PM: Frederiek en Olivier
  • Analyse: Ann en Tijs
  • Design: Tijs
  • Development: Niels, Sander, Manolito en Kevin

Uitgeverij: Herman